linear_webhook
Manages a Linear webhook — the outbound HTTP callback Linear fires when the subscribed resources change. Scope it either to one team via team_id or to every public team via all_public_teams; both are fixed at creation, since Linear's webhookUpdate takes neither.
linear_webhook (Resource)
Manages a Linear webhook — the outbound HTTP callback Linear fires when the subscribed resources change.
Scope it either to one team via team_id or to every public team via all_public_teams; both are fixed at creation, since Linear's webhookUpdate takes neither.
Example Usage
variable "linear_webhook_secret" {
type = string
sensitive = true
}
resource "linear_webhook" "github_sync" {
url = "https://sync.example.com/linear"
label = "linear-github-sync"
team_id = linear_team.engineering.id
secret = var.linear_webhook_secret
resource_types = [
"Issue",
"Comment",
"IssueLabel",
]
}
Schema
Required
resource_types(Set of String) Resources the webhook subscribes to, e.g.Issue,Comment,Project,Cycle,IssueLabel,Reaction.url(String) URL Linear posts events to.
Optional
all_public_teams(Boolean) Whether the webhook covers every public team rather than a single one. Changing it replaces the webhook.enabled(Boolean) Whether the webhook fires. Linear disables a webhook itself after repeated delivery failures; setting this back totruere-enables it.label(String) Label identifying the webhook in the Linear UI.secret(String, Sensitive) Signing secret Linear uses for theLinear-Signatureheader, so the receiver can verify a delivery came from Linear.
Write-only by design: it is sent but never read back, so it cannot surface through a refresh or a provider log. It is still stored in state — keep the state encrypted.
team_id(String) UUID of the team the webhook is scoped to. Leave unset together withall_public_teamsfor a workspace-wide webhook. Changing it replaces the webhook.
Read-Only
id(String) UUID of the webhook.
Import
Import is supported using the following syntax:
The terraform import command can be used, for example:
# Import by UUID.
terraform import linear_webhook.example a1b2c3d4-0000-0000-0000-000000000000