Productivity
Linear
target_app: "linear" · endpoint /v1/messaging/execute · Bring your own credentials
Setup
Generate a personal API key at linear.app/settings/api.
Credentials needed on your Connections page
Actions
create_issue
Create an issue in a team.
Request body:
{
"user_id": "...",
"action": "create_issue",
"payload": { "teamId": "...", "title": "Bug: X is broken", "description": "Details" },
"target_app": "linear"
}provider_response.result shape:
{ "data": { "issueCreate": { "success": true, "issue": {"id":"...","url":"..."} } } }list_issues
List a team's issues.
Request body:
{
"user_id": "...",
"action": "list_issues",
"payload": { "teamId": "..." },
"target_app": "linear"
}provider_response.result shape:
{ "data": { "team": { "issues": { "nodes": [{"id":"...","title":"..."}] } } } }Anticipated errors & fixes
"Authentication required" in the GraphQL response
Cause: API key is wrong. Note: Linear's Authorization header takes the raw key with NO "Bearer" prefix — a wrapper bug here would look exactly like a bad key.
Fix: Regenerate the key at linear.app/settings/api.
Empty issue list despite issues existing
Cause: teamId is wrong — Linear teams have their own UUID, separate from the workspace.
Fix: Find the correct team ID via Linear's own API explorer or team settings URL.
401 "Unauthorized: Invalid API key."
Cause: Your eConnect Authorization header is missing, malformed, or the key was regenerated/revoked.
Fix: Copy your api_key fresh from the eConnect dashboard and confirm the header reads exactly "Authorization: Bearer <key>".
429 "Too many requests"
Cause: You've exceeded your plan's per-minute rate limit.
Fix: Wait a minute and retry, or upgrade your plan for a higher per-minute limit.
429 "Monthly API limit exceeded"
Cause: You've used your plan's full monthly request allowance.
Fix: Wait for your next billing cycle reset, or upgrade to a plan with a higher monthly limit.