docs

Linear

Receive Linear issue events in Plural

A Linear webhook delivers Linear issues into Plural. Each issue becomes an issue record in Plural that a workbench can act on. Linear generates the signing secret, so you create the webhook in Linear first and paste its secret into Plural.

An issue event does not start a job by itself. A job starts only when a webhook trigger on a workbench matches the issue, and only when the issue has just become open: a new open issue, or an issue that moved back into a state Plural treats as open. Edits to an issue that is already open do not start another job, and the same issue starts at most one job per workbench in an hour.

What Plural reads from the payload

Plural reads only events with type set to Issue. Events for comments, projects, cycles, and other models are acknowledged and ignored. Plural does not look at action, so create, update, and remove events for an issue are handled the same way.

From the issue in data:

  • id becomes the issue ID. Later events for the same issue update the existing record instead of creating a new one.
  • title and description become the issue title and body. Bodies longer than 10,000 characters are truncated.
  • url becomes the link back to the issue.
  • state.name sets the status.

A trigger matches against the title and body joined by a newline.

Status

State names match exactly, including case, except where both forms are listed. Any other state, such as Triage, Backlog, Todo, or Duplicate, is treated as open.

Open
In progress
Completed
Cancelled
Any other stateIn Progress, In ReviewDone, done, Completed, completedCanceled, Cancelled