EveryAppEveryApp

Connect GitHub (or any OAuth provider)

Let your apps use people's GitHub, Google, Notion or other accounts. You add the provider once; each person connects their own account.

Some apps work on things that belong to a person's account somewhere else: their repositories at GitHub, their Search Console at Google, their pages at Notion. Your Gateway can hold those connections for every app at once. You add the provider once, with the client id and secret the provider gives you. Each person then connects their own account once, in the Gateway, and every app that asks for it uses that connection. Apps never see the tokens.

Add a provider

Whoever runs the Gateway does this once per provider, as an owner or admin.

  1. Open Manage workspace, then Providers, and select Add OAuth provider.
  2. Pick the provider: GitHub, Google, Notion, Linear, GitLab, Atlassian, HubSpot, Zoom, Dropbox, Spotify or X, or Custom for one that isn't listed (you type its authorize and token addresses, its scopes and its API hosts).
  3. The dialog shows the redirect URI to register, like https://apps.yourcompany.com/connect/github-oauth/callback. Copy it.
  4. At the provider, make an OAuth app and paste that redirect URI. For GitHub: Settings → Developer settings → OAuth Apps → New OAuth App (an OAuth App, not a GitHub App). The provider gives you a client id and a client secret.
  5. Back in the dialog, paste the client id and the client secret, and select Add.

The secret is stored sealed and never shown again. To change it later, select the provider's ⋯ → Replace client. From a terminal, the same is:

pnpm everyapp provider add --oauth github-oauth
pnpm everyapp secret set GITHUB_OAUTH_CLIENT_ID GITHUB_OAUTH_CLIENT_SECRET

Connect your account

Each person does this for themselves, once per provider.

  1. Open the account menu at the bottom of the sidebar, then Connected accounts.
  2. Select Connect GitHub (or the provider's name). The provider asks you to allow what the apps on your Gateway need, nothing more.
  3. You land back in the Gateway, connected.

An app can send you there itself: a "Connect GitHub" button in the app opens the same page, and brings you back to the app afterwards. If an app later needs more than you allowed, the page shows Reconnect.

For the whole workspace

Some work runs for the workspace rather than for one person, like a nightly sync. An owner or admin can connect an account for the workspace: in Manage workspace → Providers, select Connect for the organization beside the provider. Apps use it for work no person started.

Disconnect

Under Connected accounts, select Disconnect beside the account. Apps stop using it at once. Where the provider supports it (GitHub does), the Gateway also tells the provider to revoke what it was given. An owner or admin sees every connection in the workspace under Manage workspace → Providers and can disconnect any of them. Removing a provider there disconnects everyone from it.

Which apps use a connection, and what they may do with it, is set by each app: an app asks for named parts of the account (repositories to read, for instance) and the Gateway holds it to those. For how this works underneath, ask your agent or see the agent docs.

On this page