GoHighLevel API reference

OAuth scopes

GoHighLevel publishes 124 OAuth scopes across 74 resources. Scopes follow a resource.readonly / resource.write shape, and the two are independent — granting write does not imply read. Request the narrowest set your integration actually needs; every extra scope is something a customer has to consent to at install time.

The same names apply to Private Integration Tokens, which are issued inside a single sub-account with a chosen subset of these scopes.

Which scope unlocks which endpoint

HighLevel documents the scope list and the endpoint list separately, leaving the join to you. This is that join for the 53 endpoints documented on this site.

Every scope by resource

All 124 scopes, grouped by the resource they authorize.

agent-studio

ResourceScopes
agent-studioagent-studio.readonlyagent-studio.write

associations

ResourceScopes
associationsassociations.readonlyassociations.write
associations/relationassociations/relation.readonlyassociations/relation.write

blogs

ResourceScopes
blogs/authorblogs/author.readonly
blogs/categoryblogs/category.readonly
blogs/check-slugblogs/check-slug.readonly
blogs/listblogs/list.readonly
blogs/postblogs/post.write
blogs/post-updateblogs/post-update.write
blogs/postsblogs/posts.readonly

brand-boards

ResourceScopes
brand-boards/design-kitbrand-boards/design-kit.readonlybrand-boards/design-kit.write
brand-boards/voicesbrand-boards/voices.readonlybrand-boards/voices.write

businesses

ResourceScopes
businessesbusinesses.readonlybusinesses.write

calendars

ResourceScopes
calendarscalendars.readonlycalendars.write
calendars/eventscalendars/events.readonlycalendars/events.write
calendars/groupscalendars/groups.readonlycalendars/groups.write
calendars/resourcescalendars/resources.readonlycalendars/resources.write

campaigns

ResourceScopes
campaignscampaigns.readonly

charges

ResourceScopes
chargescharges.readonlycharges.write

companies

ResourceScopes
companiescompanies.readonly

contacts

ResourceScopes
contactscontacts.readonlycontacts.write

conversation-ai

ResourceScopes
conversation-aiconversation-ai.readonlyconversation-ai.write

conversations

ResourceScopes
conversationsconversations.readonlyconversations.write
conversations/livechatconversations/livechat.write
conversations/messageconversations/message.readonlyconversations/message.write

custom-menu-link

ResourceScopes
custom-menu-linkcustom-menu-link.readonlycustom-menu-link.write

emails

ResourceScopes
emails/builderemails/builder.readonlyemails/builder.write
emails/scheduleemails/schedule.readonlyemails/schedule.write

forms

ResourceScopes
formsforms.readonlyforms.write

funnels

ResourceScopes
funnels/redirectfunnels/redirect.readonlyfunnels/redirect.write

invoices

ResourceScopes
invoicesinvoices.readonlyinvoices.write
invoices/estimateinvoices/estimate.readonlyinvoices/estimate.write
invoices/scheduleinvoices/schedule.readonlyinvoices/schedule.write
invoices/templateinvoices/template.readonlyinvoices/template.write

links

ResourceScopes
linkslinks.readonlylinks.write

locations

ResourceScopes
locationslocations.internal-access-onlylocations.readonlylocations.write
locations/customFieldslocations/customFields.readonlylocations/customFields.write
locations/customValueslocations/customValues.readonlylocations/customValues.write
locations/readlocations/read
locations/tagslocations/tags.readonlylocations/tags.write
locations/taskslocations/tasks.readonly
locations/templateslocations/templates.readonly
locations/writelocations/write

marketplace-external-auth-migration

ResourceScopes
marketplace-external-auth-migrationmarketplace-external-auth-migration.write

marketplace-installer-details

ResourceScopes
marketplace-installer-detailsmarketplace-installer-details.readonly

medias

ResourceScopes
mediasmedias.readonlymedias.write

numberpools

ResourceScopes
numberpoolsnumberpools.read

oauth

ResourceScopes
oauthoauth.readonlyoauth.write

objects

ResourceScopes
objects/recordobjects/record.readonlyobjects/record.write
objects/schemaobjects/schema.readonlyobjects/schema.write

opportunities

ResourceScopes
opportunitiesopportunities.readonlyopportunities.write

payments

ResourceScopes
payments/couponspayments/coupons.readonlypayments/coupons.write
payments/custom-providerpayments/custom-provider.readonlypayments/custom-provider.write
payments/integrationpayments/integration.readonlypayments/integration.write
payments/orderspayments/orders.collectPaymentpayments/orders.readonlypayments/orders.write
payments/subscriptionspayments/subscriptions.readonly
payments/transactionspayments/transactions.readonly

phonenumbers

ResourceScopes
phonenumbersphonenumbers.readphonenumbers.write

products

ResourceScopes
productsproducts.readonlyproducts.write
products/collectionproducts/collection.readonlyproducts/collection.write
products/pricesproducts/prices.readonlyproducts/prices.write

saas

ResourceScopes
saas/companysaas/company.readsaas/company.write

socialplanner

ResourceScopes
socialplanner/accountsocialplanner/account.readonly
socialplanner/categorysocialplanner/category.readonlysocialplanner/category.write
socialplanner/csvsocialplanner/csv.write
socialplanner/oauthsocialplanner/oauth.readonly
socialplanner/postsocialplanner/post.readonlysocialplanner/post.write
socialplanner/statisticssocialplanner/statistics.readonly

surveys

ResourceScopes
surveyssurveys.readonly

users

ResourceScopes
usersusers.readonlyusers.write

voice-ai-agent-goals

ResourceScopes
voice-ai-agent-goalsvoice-ai-agent-goals.readonlyvoice-ai-agent-goals.write

voice-ai-agents

ResourceScopes
voice-ai-agentsvoice-ai-agents.readonlyvoice-ai-agents.write

voice-ai-dashboard

ResourceScopes
voice-ai-dashboardvoice-ai-dashboard.readonly

workflows

ResourceScopes
workflowsworkflows.readonly

Common questions

How many OAuth scopes does GoHighLevel have?
HighLevel publishes 124 OAuth scopes across 74 resources. Most resources expose a matching pair — a .readonly scope for GET requests and a .write scope for anything that changes state.
What is the difference between a readonly and a write scope?
A .readonly scope authorizes GET requests against that resource; a .write scope authorizes creates, updates, and deletes. They are independent — granting write does not imply read, so an app that both lists and edits contacts needs contacts.readonly and contacts.write.
Do Private Integration Tokens use the same scopes as OAuth apps?
Yes. A Private Integration Token is issued inside a sub-account with a chosen set of the same scope names, which is why an endpoint's scope requirement is the same either way. The difference is distribution: a PIT belongs to one location, while an OAuth app is installed across many.
Which scope does a specific endpoint need?
Each endpoint reference page lists its required scopes alongside its parameters and response. The cross-reference on this page runs the other direction — pick a scope and see the documented endpoints it unlocks.

Skip the schema lookup

Getting scopes wrong costs a reinstall — a missing one surfaces as a 401 long after consent. Hylo tells your AI agent which scope each call needs before it makes the call.

Elsewhere in the reference