Connected apps
Two sides of the app relationship: how users see and manage the apps connected to their account, and how developers apply for review-tier access.
For users: consents and grants
When a user approves your app on the consent screen, they create a grant — the set of scopes they've authorized. Users can review and revoke these at any time.
| Method | Path | Purpose |
|---|---|---|
| GET | /developer/grants | List apps the current user has authorized. |
| POST | /developer/grants/{clientId}/revoke | Revoke an app's access to the user. |
| GET | /oauth/consents | List authorized apps (consent view). |
| POST | /oauth/consents/{clientId}/revoke | Disconnect an app — revokes consent and kills its tokens. |
Each grant records the app and the scopes it was granted. Revoking is immediate and irreversible for the existing tokens: disconnecting an app invalidates the access and refresh tokens it holds, so the app can no longer act for that user until they re-authorize.
What this means for your app: treat token invalidation as a normal event. A
user can disconnect at any time; when they do, your calls start returning
401 invalid_token and you should route the user back through
consent rather than assuming a token lasts forever.
For developers: the program application
The developer program is optional. Registering an app — confidential or
public, with read, draft and publish scopes — is self-serve and needs no
application. What the program unlocks is the review tier: an approved developer
adds account:read, a2a and recipe:express to their apps directly, at
registration or by PATCH, instead of filing a per-scope request for each.
Access is invite-gated:
| Method | Path | Purpose |
|---|---|---|
| POST | /developer/applications | Apply to the developer program (invite-gated) — { invite_code, motivation }, both required. |
| GET | /developer/applications/my | Your developer-program applications and their status. |
An application has a status of pending, approved, or rejected. Applying
again while one is pending returns a 409. Once approved, review-tier scopes
no longer need a per-scope request — see
Registering apps.
You don't need program approval to start building, or to publish: a public, read-only client can self-register over RFC 7591 immediately, and the portal registers publish-capable apps self-serve. The program is only for apps that need review-tier scopes without a request per scope.
Related
- Registering apps — the self-serve app lifecycle
- Scopes — what users see and grant on the consent screen
- OAuth 2.0 + PKCE — how a grant is created and a token revoked
- OpenID Connect — sign-in and the identity a grant is tied to