Prerequisites
Confirm what you need before starting setup.
- Your Glean instance subdomain, taken from your backend host
- A Glean admin has enabled the Glean OAuth Server in the Admin Console under Settings then Third-party access (OAuth)
- Glean admin access if you want to register a static OAuth client
Register an OAuth client
The connector needs a Client ID and Client Secret for your Glean instance. There are two ways to obtain them.
Create a static client (recommended)
Register the client in the Glean Admin Console. This path needs admin access and can be allow-listed for the full scope set.
- Sign in to the Glean Admin Console
- Go to Users & permissions then Third-party access (OAuth)
- Under Static clients, click Create client
- Enter a client name and the redirect URI below
- Select the scopes the client is allowed to request
- Copy the Client ID and Client Secret. The secret is shown once and cannot be retrieved again
Or register a dynamic client
Dynamic client registration follows RFC 7591 and needs no admin access.
- POST a registration request to
https://{instance}-be.glean.com/oauth/register, including the redirect URI below - Glean applies a restricted scope set to dynamically registered clients, and the exact set is configured per tenant, so a dynamic client may not be able to obtain every scope listed above
- If that set excludes offline_access, no refresh token is issued and the connection must be re-authorized once the access token expires. Ask your Glean representative to widen the set
- An admin can disable dynamic registration on the instance
Configure the redirect URI and grant
Glean runs an OAuth 2.1 implementation, so these values are fixed.
- Redirect URI, exact and case sensitive:
https://api.stackone.com/connect/oauth2/glean/callback - Grant type: authorization code with PKCE using S256. Implicit and password grants are not supported
- Token endpoint auth method: client_secret_post, so the client secret travels in the token request body
Set the connector scopes
Back in StackOne, paste the space-separated scope list your OAuth client is allowed to request into the Scopes field.
- Leaving Scopes empty requests every scope the connector supports, which suits a static client allow-listed for the full set
- Dynamically registered clients hold a restricted scope set, so enter that set explicitly rather than leaving the field empty
- Requesting a scope the client cannot hold can fail authorization, and any action whose scope was not requested fails with a 403
Find your instance subdomain
The instance is the part of your Glean backend host before -be.glean.com. For a backend host of acme-prod-be.glean.com the instance is acme-prod. The connector uses it to build the API base URL and both OAuth endpoints, all of which are per-instance.
Creating the StackOne Connector Profile
To create the Connector Profile in StackOne for Glean:Navigate to Connector Profiles
Create New Connector Profile
- Click + Connector Profile
- Search for and select Glean
- Select Type as OAuth 2.0
- Fill out the fields using details retrieved from your provider:
- Client ID
- Client Secret
- Scopes (Optional)
- (Optional) Select Actions to be enabled for this Connector Profile
- Click Create profile