Business feature— included with the Business plan on Carbon Cloud. If you'd like to self-host this feature, you need a commercial license. Licensing →

Project management

Paid

Link Carbon action tasks and project elements to Linear or Jira issues and keep both sides in step.

Carbon links a record to one Linear or Jira issue and keeps the two in step in both directions:

Open the record and use the Linear or Jira button to link an existing issue or create a new one. One issue links to one record.

What syncs

RecordFields
Action taskStatus, assignee, due date, notes
Project elementName, description, state, owner, priority, target date

A change on either side reaches the other within about a minute, whatever made it: a user, the API, or a workflow. Assignees match by email address. If the issue's assignee has no matching Carbon employee, or Jira hides their email, the Carbon assignee stays as it is.

An element's state follows the issue's state type: Backlog, Unstarted, Started, Completed or Cancelled. Jira has three status categories, so an element in Backlog or Cancelled keeps that state when the Jira issue moves within the matching category.

Locked records

Carbon refuses a change from Linear or Jira that would edit a locked record, and shows Not applied with the reason on the linked issue:

  • every field of a task on a Done or Cancelled change notice
  • every field of an element on a Closed project
  • the name and description of an element once the project's plan is locked

Carbon does not undo the change in the tracker.

Deleting

Deleting the issue removes the link; the Carbon record stays. Deleting the Carbon record removes the link and Carbon's back-link on the issue; the issue stays.

Linear

Authenticate with a Linear API key (it begins with lin_api).

Create the webhook in Linear

In Linear's API settings, create a new webhook and paste the URL shown in Carbon's setup instructions (/api/webhook/linear/<your company id>) so Linear changes reach Carbon.

Copy the signing secret

Linear shows a signing secret on the webhook's detail page. Paste it into Webhook Signing Secret. Carbon then accepts only Linear-signed webhook requests that are no more than one minute old.

Paste your Linear API key

Provide your Linear API key. Carbon checks the lin_api prefix.

Link action tasks and project elements to Linear issues. Carbon keeps them in step in both directions.

SettingWhat it controls
API keyYour Linear API key — Carbon checks the lin_api prefix.
Webhook signing secretOptional. When set, webhook requests without a valid Linear signature are rejected.
HEADS UP

Webhooks without a saved secret remain compatible with older configurations, but Carbon cannot authenticate their requests. Configure a secret for every webhook.

Jira

Connect over OAuth. The only setting is an optional webhook secret. Step-by-step: Connect Jira.

Authorize over OAuth

Authorize Carbon in Jira.

Create the webhook in Jira

Changes made in Jira come back to Carbon only through this webhook. To set it up, go to System → WebHooks in Jira and create a webhook with the URL shown in Carbon's setup instructions (/api/webhook/jira/<your company id>), subscribed to Issue updated. Fill in the webhook's Secret field, and paste the same value into Webhook Secret in Carbon. With it saved, Carbon only accepts webhook requests Jira has signed.

Link action tasks and project elements to Jira issues. Carbon keeps them in step in both directions.

SettingWhat it controls
Webhook secretOptional. When set, webhook requests without a valid Jira signature are rejected.
HEADS UP

Jira appears only when JIRA_CLIENT_ID is configured server-side. See Environment variables.