By default, Agent Handler uses Merge’s OAuth apps for each Connector. That covers testing and many embedded products. For production, you’ll often want your own OAuth app per Connector for three reasons:
Most teams start without Application Credentials and switch close to launch. Switch when customers ask why the consent screen says Merge, when you bump into rate limits that aren’t yours, or when a security review wants a tighter scope set. A few Connectors don’t ship with shared OAuth apps and require BYO from day one.
Adding credentials is non-disruptive - existing tokens keep working until they refresh, then refresh against the new app.
The OAuth callback URL Agent Handler expects is always:
Register that URL in your OAuth app on the third party’s side. If the third party’s app config doesn’t have it, the OAuth flow will redirect to the wrong place and fail.
https://ah.merge.dev/oauth/callback to Authorized redirect URIs.For external apps (visible to users outside your Workspace), Google requires verification before going to general availability. Plan for the verification timeline if you’re shipping to consumers.
https://ah.merge.dev/oauth/callback as the redirect URI under Web platform.Mail.Read, Files.ReadWrite, etc.) and grant admin consent for your tenant.Microsoft’s permission scopes are granular - pick the smallest set that does what you need. The full Graph scope set runs to hundreds of permissions; you likely need a handful.
https://ah.merge.dev/oauth/callback to the callback URL list.api, refresh_token, offline_access cover most agent use cases.Salesforce splits production from sandbox at the auth-URL level - production uses login.salesforce.com, sandbox uses test.salesforce.com. Make sure the Connector’s environment matches.
Most Connectors let you override the OAuth scope set after you’ve added Application Credentials. Open the Connector → Application Credentials → Scopes and edit the comma-separated scope list.
Use this to:
Scope changes take effect on next-token-refresh. Existing tokens keep their old scopes until they expire and refresh.
Rotating your client secret in the third party requires updating it in Agent Handler - the old secret stops working immediately, and any token refresh after the swap will fail until Agent Handler has the new secret.
Plan rotation the same way as access-key rotation: update Agent Handler first, then rotate at the third party. The reverse leaves a window where refreshes fail.
Authenticate dashboard members through your IdP with Single sign-on.