Hi everyone,
We’re building a HubSpot integration and have hit a wall with OAuth scope configuration that we haven’t been able to resolve after extensive troubleshooting.
The issue:
We need to read from HubSpot segments/lists as part of our integration. When we add crm.lists.read to our AUTHORIZE_URL scopes, the OAuth authorization flow fails entirely — users cannot complete sign-in.
If we remove crm.lists.read from the scopes, OAuth works fine and users can authenticate successfully. However, any API call to read from lists then returns:
Hubspot::Crm::Lists::ApiError HTTP status code: 500
This tells us the scope is required, but including it in the authorization URL breaks the flow.
What we’ve tried:
- Followed the OAuth documentation end-to-end: https://developers.hubspot.com/docs/apps/developer-platform/build-apps/authentication/oauth/working-…
- Replicated all steps multiple times
- Tested various combinations of scopes
Nothing has resolved it.
Questions:
- Is there anything special about requesting crm.lists.read during the OAuth flow compared to other scopes?
- Are there prerequisites or additional permissions that need to be configured in the app settings before this scope can be included?
- Is a 500 from the Lists API always indicative of a missing scope, or could it be something else?
Any help or direction would be hugely appreciated. Happy to share more details if needed.