Run custom logic to update Linear via webhooks

Sometimes you need custom logic: if a score is above X, set priority to High and assign to the senior engineer. Notis webhooks support GraphQL mutations, so you send structured data and Notis executes complex updates in Linear using your exact specifications.

Trigger

Webhook received

Notis starts this workflow when an external tool or custom backend sends an HTTP request.

Linear logo

Action

Run Query or Mutation

Wildcard action that executes any graphql query or mutation against the linear api. use this as a fallback when no specific action exists for your use case, or when you need to perform complex operations not covered by other linear actions. supports full graphql capabilities including custom queries, mutations, and advanced filtering.

Why this helps

Standard automations don't cover your edge cases. You write custom code or do manual updates.

  • Complex logic executed without code
  • Full GraphQL capabilities available
  • Advanced workflows possible
  • Future-proof scaling

Setup

Build it in a few focused steps.

  • 1Connect Linear to Notis via webhook
  • 2Ask Notis: 'Create an advanced automation that takes webhook data and runs a GraphQL mutation on Linear'
  • 3Describe your mutation logic in plain language: 'If score > 80, set priority to High and add to current cycle'
  • 4Notis translates your description into GraphQL and executes it
  • 5Test with sample webhook data

Questions about this workflow

Do I need to write GraphQL?

No. Describe your logic in plain language. Notis translates it to GraphQL mutations. If you know GraphQL, you can specify mutations directly.

What mutations are supported?

Any mutation supported by Linear's GraphQL API. This includes issue creation, updates, label management, assignment, and more.

Can I validate webhook data before executing?

Yes. Set conditions: 'Only run the mutation if the webhook includes required_field and it passes validation.'

When this happens · Trigger

Do this · Action

Supported Triggers and Actions

Notis builds workflows that link Whatsapp to Linear. A trigger fires from one place; an action lands in another.

Whatsapp logo

Whatsapp triggers

Linear logo

Linear actions

Message Status Updated

Triggers when a WhatsApp message status changes. IMPORTANT LIMITATION: WhatsApp Cloud API does not provide a native polling endpoint for message status. Status updates are ONLY delivered via webhooks in real-time. This trigger cannot directly poll the WhatsApp API for status updates. This trigger will return empty results as WhatsApp does not support this operation. To track message status updates, you must: 1. Set up a webhook endpoint to receive status notifications from WhatsApp 2. Store the webhook data in your own database 3. Use a different mechanism to query your stored webhook data For more information, see: - https://developers.facebook.com/docs/whatsapp/cloud-api/webhooks

TriggerPolling

Create linear attachment

Creates a new attachment and associates it with a specific, existing linear issue.

ActionInstant

New Message Received

Triggered in real time when your WhatsApp Business number receives an inbound message from a customer (text, media, location, or contact). Delivered via the Cloud API webhook.

TriggerInstant

Create a comment

Creates a new comment on a specified linear issue.

ActionInstant

Interactive Reply Received

Triggered when a customer taps a quick-reply button or selects an option from an interactive list message you sent.

TriggerInstant

Create linear issue

Creates a new issue in a specified linear project and team, requiring a title and description, and allowing for optional properties like assignee, state, priority, cycle, and due date.

ActionInstant

Message Template Status Update

Triggered when the review status of a WhatsApp message template changes — for example approved, rejected, or flagged — on your WhatsApp Business Account.

TriggerInstant

Get create issue default params

Fetches a linear team's default issue estimate and state, useful for pre-filling new issue forms.

ActionInstant

Create a label

Creates a new label in linear for a specified team, used to categorize and organize issues.

ActionInstant

Delete issue

Archives an existing linear issue by its id, which is linear's standard way of deleting issues; the operation is idempotent.

ActionInstant

Get all teams

Retrieves all teams from the linear workspace without requiring any parameters.

ActionInstant

Download issue attachments

Downloads a specific attachment from a linear issue; the `file name` must include the correct file extension.

ActionInstant

Connect any two apps with Notis in the middle.

Not just Whatsapp and Linear. Any combination from 985+ integrations.

When this happens · Trigger

Do this · Action

Save your first hour today.

7 days free trial with 20$ free usage included.
No card. Works with personal or business Linear.