Linear
Issue tracking over GraphQL: issues, projects, cycles, comments and teams.
Issue tracking over GraphQL: issues, projects, cycles, comments and teams.
API key
- In Linear, open Settings → Account → Security & access.
- Under Personal API keys, select New API key. Limit it to the permissions and teams the app needs.
- Copy the key. It's shown once.
Add it to your Gateway. It asks for the key:
everyapp provider add linearUse it in an app
In the app's everyapp.config.ts:
capabilities: {
linear: { access: "read", why: "What the app does with it." },
},The app calls Linear's API with integrationFetch(), and the Gateway adds the key. Use "write" if the app changes things. More in API providers.
Check it worked: everyapp provider show linear shows the key as set.
Rate limits: 2,500 requests and 3,000,000 complexity points an hour per API key.
Connect accounts
Each person connects their own Linear account in the Gateway, once, and every app that asks uses it. Apps never see the tokens. How connecting works
The redirect URI to register, with your Gateway's address (like apps.example.com):
https://<your gateway>/connect/linear-oauth/callback- Open Settings → API → OAuth applications in your Linear workspace and create a new application.
- Add the redirect URI above as a callback URL.
- Save, then copy the Client ID and Client secret.
Add it to your Gateway. It asks for the client ID and secret:
everyapp provider add linear-oauthOr add it in Manage workspace → Providers.
Use it in an app
capabilities: {
"linear-oauth": { access: "write", scopes: ["workspace.write"], why: "What the app does with it." },
},Apps ask for these scope sets:
| Set | Allows | Provider scopes |
|---|---|---|
workspace.write | Issues, projects and teams (read and write) | read, write |
Check it worked: everyapp provider show linear-oauth shows the client as set. Then open the account menu → Connected accounts → Connect Linear.
Something wrong or missing? Open an issue.