Linear

Create Linear Issue

Raises a new issue in a Linear team.

Unverified

What the model is told

Create an issue in Linear. Give it a short title and put the customer's problem in the description. Confirm with the customer before calling. Tell them an issue has been raised and give the identifier returned (for example ENG-123).

Request

POSThttps://api.linear.app/graphql

Headers

  • Content-Typeapplication/json
  • AuthorizationYOUR_LINEAR_API_KEY

Body

{
  "query": "mutation ($input: IssueCreateInput!) { issueCreate(input: $input) { success issue { identifier url } } }",
  "variables": {
    "input": {
      "teamId": "YOUR_LINEAR_TEAM_ID",
      "title": "{{title}}",
      "description": "{{description}}"
    }
  }
}

Parameters

  • title stringA short issue title.
  • description stringThe detail the team needs, including how to contact the customer.

Engage payload

{
  "source": "VOICE_AI",
  "tool": {
    "id": "a1225c24-ef41-49b7-afa0-d718cd164842",
    "type": "HTTP_REQUEST",
    "label": "Create Linear Issue",
    "name": "create_linear_issue",
    "customName": false,
    "description": "Create an issue in Linear. Give it a short title and put the customer's problem in the description. Confirm with the customer before calling. Tell them an issue has been raised and give the identifier returned (for example ENG-123).",
    "parameters": [
      {
        "name": "title",
        "type": "string",
        "description": "A short issue title."
      },
      {
        "name": "description",
        "type": "string",
        "description": "The detail the team needs, including how to contact the customer."
      }
    ],
    "config": {
      "endpoint": {
        "method": "POST",
        "url": "https://api.linear.app/graphql"
      },
      "headers": [
        {
          "name": "Content-Type",
          "value": "application/json"
        },
        {
          "name": "Authorization",
          "value": "YOUR_LINEAR_API_KEY"
        }
      ],
      "body": "{\n  \"query\": \"mutation ($input: IssueCreateInput!) { issueCreate(input: $input) { success issue { identifier url } } }\",\n  \"variables\": {\n    \"input\": {\n      \"teamId\": \"YOUR_LINEAR_TEAM_ID\",\n      \"title\": \"{{title}}\",\n      \"description\": \"{{description}}\"\n    }\n  }\n}",
      "timeout": null
    }
  }
}

IDs are regenerated on every copy.