HomeDocsLinear

Linear integration

Connect a Linear workspace to an app so every bug report becomes an issue in a chosen team — with the screenshot and log file attached.

Overview

Connecting Linear links one of your apps to a single team in one Linear workspace. From then on, every report submitted from that app becomes an issue in that team, carrying the description, the reporter's classification, the device and app metadata, and the attachments.

If the app has other integrations connected as well, every report still reaches all of them — Linear is one destination among however many you add, and a failure at one never stops the others.

One workspace and one team per integration. To file into several teams, connect Linear more than once — each connection targets its own team.

Before you start

  • You've created an app in the BugScreen console.
  • You can sign in to a Linear account that's allowed to authorize applications in the workspace you want reports filed into.

Connect Linear

  1. Open your app in the console and go to the Integrations section.
  2. Click Connect Linear. You'll be redirected to Linear to authorize BugScreen.
  3. Approve the authorization. To restrict which teams BugScreen can reach, use Linear's Team access control on the same screen — it offers All public teams by default, or Only select teams.
  4. Back in the console, pick the team reports should be filed into, then confirm. The workspace is shown but not editable — it's settled by the authorization you just gave.
You don't pick a starting state. Issues are created without one, so they land in the team's Triage inbox — where a team triaging inbound work already looks. If the team has Triage turned off, they land in its first backlog state instead.

What gets created

Each report becomes one issue in the chosen team:

  • A title of Bug: … followed by the reporter's description, collapsed onto one line and trimmed with an ellipsis if it runs long.
  • A description carrying the full report text, the reporter's type and severity, the test account if the app supplied one, and the device, OS and app metadata.
  • The screenshot and the log file.
The report type — crash, bug, improvement — is applied as a label, so you can filter and group by it in Linear the same way you would any other label. Severity is separate: it maps onto Linear's own priority field, below.

Screenshots and the log file

These are uploaded into Linear before the issue is created, and appear in the issue description: screenshots inline as images, the log file as a View Logs link.

If an upload fails, the issue is still created with that attachment absent rather than being lost — so a report always reaches you, even when one of its files does not.

Priority

The reporter's severity maps onto Linear's built-in priority: high becomes High, medium becomes Medium, low becomes Low. Urgent is deliberately left free for your team to set by hand, so it keeps meaning what you decide it means. A report submitted without a severity gets no priority field, which Linear shows as No priority.

Test the connection

After connecting, use Test on the integration to confirm everything works end to end. The test creates a real sample issue in the team and shows you whether it succeeded.

Note: Testing creates a real issue in the team's Triage inbox, with no attachments. You can delete it afterwards.

Change team or disconnect

There's no in-place edit: to file into a different team, disconnect the integration and connect Linear again, picking the new team. Disconnect from the app's Integrations section to stop creating issues, and BugScreen asks Linear to revoke its access token.

The disconnect always takes effect on our side — no further issues are created either way — but the revoke is best-effort, so the token is not guaranteed to be withdrawn in Linear. Removing the BugScreen application from your workspace's authorized applications is the control that always works, and it is a separate action you take in Linear.

Troubleshooting

If a test or real report fails to reach Linear, check the following:

  • Reconnect needed. The authorization was revoked in Linear, or the connection expired and could not renew itself. BugScreen renews its Linear access automatically as it expires — roughly daily on an app that files reports — so this status means the renewal actually failed. Reconnect Linear from the console.
  • Issues arrive without the screenshot or log file. The connection predates a change in what BugScreen needs from Linear, and an existing authorization is never updated in place. Disconnect and reconnect to bring it up to date.
  • Degraded. Linear is rate-limiting us. Deliveries retry, and the status clears on the next report that gets through.
  • The team was archived, or the grant no longer covers it. Reconnect Linear and pick a live team — and if you restricted Team access on Linear's authorization screen, check the team you want is in that selection.
  • Connect is blocked with a plan-limit message. Your plan's integration limit has been reached — remove an unused integration or upgrade your plan.

Start shipping bug reports

Create an account to start shipping bug reports from your app.

    Linear Integration - Create Issues in a Team | BugScreen