Skip to main content
Linear logo

Overview

Add Linear to any ModuleX agent or workflow. Project-management and issue-tracking integration for Linear via the GraphQL API at api.linear.app/graphql. Covers team discovery, issue CRUD + search, and project list/create.
Categories: Project & Task Management · Task Management · Collaboration · Auth: OAuth2, API Key · Actions: 7

Authentication

OAuth2 Authentication

Connect using Linear OAuth (recommended for most use cases)

Required Credentials

OAuth Configuration

  • Authorization URL: https://linear.app/oauth/authorize
  • Token URL: https://api.linear.app/oauth/token
  • Scopes: read, write

Available Actions

Parameters

integer
Maximum number of teams to return (Default: 50)
string
Cursor for pagination

Response

Parameters

string
required
The ID of the issue to retrieve

Response

Parameters

string
Filter by team ID
string
Filter by project ID
string
Filter by assignee user ID
string
Filter by workflow state ID
string
Substring to match in issue titles
array
Filter by label names
boolean
Include archived issues (Default: false)
string
Field to order by (‘createdAt’ or ‘updatedAt’) (Default: updatedAt)
integer
Maximum number of issues to return (Default: 50)

Response

Parameters

string
required
The team’s UUID (the ‘id’ field returned by get_teams) — NOT the short team key like ‘ENG’. Call get_teams first to resolve it.
string
required
The title of the issue
string
Markdown description
string
UUID of the user to assign the issue to
string
UUID of the project to add the issue to
string
UUID of the workflow state
array
Label UUIDs to attach
integer
Priority level: 0=No priority, 1=Urgent, 2=High, 3=Normal, 4=Low

Response

Parameters

string
required
The ID of the issue to update
string
New title
string
New markdown description
string
New assignee user ID
string
Move to a different team
string
Move to a different project
string
Change workflow state
array
Replace labels with these IDs
integer
New priority level (0-4)

Response

Parameters

string
Filter by team ID
string
Field to order by (‘createdAt’ or ‘updatedAt’) (Default: updatedAt)
integer
Maximum number of projects to return (Default: 50)
string
Cursor for pagination

Response

Parameters

string
required
The team’s UUID (the ‘id’ field returned by get_teams) — NOT the short team key like ‘ENG’. Call get_teams first to resolve it.
string
required
The name of the project
string
The description of the project
string
The project-status ID
integer
Priority level (0-4)
array
IDs of users to add as members
string
Start date (YYYY-MM-DD)
string
Target date (YYYY-MM-DD)
array
Label IDs to attach

Response

Limits & Quotas

  • All tools share a single GraphQL endpoint; failures (HTTP non-200, GraphQL errors, exceptions) surface as success=False + error.
  • The search_issues and list_projects actions interpolate filter values into the GraphQL string verbatim (matching legacy). Inputs are scoped to internal IDs / label names — not user prose — and treated as opaque tokens.
  • Output objects keep their nested GraphQL shape unchanged (state, team, assignee, creator, labels.nodes for issues; lead, status for projects).

Airtable

ClickUp

Jira