Linear
Connect Linear to create issues from feedback and support tickets, and sync Linear workflow states back to post and ticket statuses.
Turn feedback into action. Automatically create Linear issues when feedback is submitted, and keep statuses synchronized between Quackback and Linear. When an issue moves through your Linear workflow, the linked feedback post updates too.
Note: On Quackback Cloud, integrations are available on the Business and Enterprise plans. Self-hosted installs include every integration.
Overview
The Linear integration enables:
- Create Linear issues from feedback posts: automatically create an issue when new feedback is submitted
- Link posts to issues: link feedback posts to Linear issues for traceability
- Create issues from tickets: create a Linear issue straight from a support ticket
- Status sync: keep feedback and ticket statuses in sync with Linear issue workflow states via inbound webhooks
Prerequisites
- The Owner or Admin role in Quackback (or a custom role that can manage integrations)
- A Linear workspace with admin access
- Self-hosted only: a Linear OAuth application (created at Linear Settings > API)
Self-hosted: create your Linear app
Note: On Quackback Cloud, skip this section. Quackback provides the Linear app for you, so you go straight to connecting.
Self-hosted instances connect through an app you create. Do this once before you connect.
Create a Linear OAuth application
- Go to Linear Settings > API
- Create a new OAuth application
- Copy the Client ID and Client Secret
Save the app credentials in Quackback
- Go to Admin > Settings > Integrations > Linear
Enter the following credentials:
- Client ID from your Linear OAuth application
- Client Secret from your Linear OAuth application
Setup
1. Connect your workspace
- Go to Admin > Settings > Integrations > Linear
- Click Connect to Linear
- You'll be redirected to Linear to authorize the application
- Review the permissions and click Authorize
The app requests these OAuth scopes: read, write, issues:create, admin.
2. Select a team
Back in Quackback:
- Choose the Linear team where issues should be created
- Issues will be created in this team when new feedback is submitted
3. Configure status mappings
Map Linear workflow states to Quackback statuses:
- Go to the Linear integration settings
- Configure status mappings between Linear states and Quackback statuses
- Map each Linear state name to the corresponding Quackback status, or set it to ignore
Status sync works via Linear webhooks. When a linked Linear issue changes state, the corresponding Quackback post status updates automatically.
4. Configure events
Choose which events trigger Linear actions:
Event | Action |
|---|---|
New post | Create a Linear issue with the feedback details |
Note: The Linear integration creates issues only for
post.createdevents. Status changes and comments are handled through status sync rather than by creating new issues.
5. Save and test
- Click Save
- Submit test feedback to verify an issue is created in Linear
Issue format
When a new feedback post triggers issue creation, the Linear issue includes:
- Title: The feedback post title
- Description: The post content, followed by metadata including the author, board, vote count, and a link back to the post in Quackback
Ticket linking
Support tickets can create Linear issues from the ticket detail panel in the inbox: Create new issue creates the issue in the connected team with the ticket's title and the first customer message as the description. Internal notes are never included.
Note: Linking an existing Linear issue by URL is not offered: Linear identifies issues internally by an id a pasted URL doesn't contain, so a hand-entered link couldn't receive status sync. Issues created from Quackback are linked correctly and sync as normal.
Status sync
When status sync is configured, Quackback registers a webhook with Linear to receive issue updates. When a linked Linear issue's workflow state changes:
- Linear sends a webhook to Quackback
- Quackback looks up the status mapping for the new Linear state
- If a mapping exists, the linked feedback post's status is updated
The webhook signature is verified using HMAC-SHA256 via the Linear-Signature header.
Tickets have their own mapping table in the integration settings. Linked tickets also get a team-only thread note and a Linked issue updates notification for watching agents on every state change, whether or not a mapping applies.
On post delete
When you delete a feedback post with a linked Linear issue, you can archive the issue at the same time. The delete dialog shows a checkbox for each linked issue.
To pre-check this by default, enable the On post delete toggle in the Linear integration settings. You can always override the default per delete.
Manage the integration
Pause
Temporarily stop the integration:
- Go to Admin > Settings > Integrations > Linear
- Toggle Enabled off
- Issue creation and status sync pause, but the connection remains
Reconnect
If you see connection errors:
- Click Reconnect
- Re-authorize in Linear
Tokens are refreshed automatically when they expire.
Disconnect
To fully remove the integration:
- Go to Admin > Settings > Integrations > Linear
- Click Disconnect
- Confirm the action
Note: Disconnecting revokes the OAuth token with Linear and removes the registered webhook.
Who is shown as the creator?
Quackback creates issues in Linear as the account that connected the integration, so Linear shows that person as the creator. To change the creator (for example, to a shared bot account), disconnect, sign in to Linear as the other account, and connect again.
Troubleshooting
Issues not being created
- Check integration status: look for errors in settings
- Verify team selection: ensure a Linear team is selected
- Check event mappings: confirm
post.createdis mapped - Admin permissions: the connected Linear account must have admin permissions to create webhooks
Status sync not working
- Check status mappings: ensure Linear states are mapped to Quackback statuses
- Verify webhook: the Linear webhook may need to be re-registered
- Check Linear permissions: the connected account needs admin access
"Authentication Failed" error
Linear OAuth tokens expire and are automatically refreshed. If refresh fails:
- Click Reconnect
- Re-authorize the app in Linear
Related articles
- GitHub: GitHub issue integration
- Jira: Jira issue integration
- Manage support tickets: Work tickets in the inbox
- Integrations overview: All integrations
Was this helpful?
Your feedback shapes what we write next.
