linear-api 0.1.0

Unofficial async Rust client for the Linear GraphQL API (API-key auth)
Documentation
{
  "data": {
    "issue": {
      "comments": {
        "nodes": [
          {
            "id": "5f9a1c2e-8d3b-4a6f-9e01-b2c3d4e5f601",
            "body": "Reproduced on staging — the gauge resets after the second websocket reconnect.",
            "url": "https://linear.app/acme/issue/ENG-8123/token-count-gauge#comment-5f9a1c2e",
            "user": {
              "id": "9c2c88a6-99d3-4a63-a201-8ee5c7dcc374",
              "name": "Ada Lovelace",
              "displayName": "ada"
            },
            "createdAt": "2026-07-01T12:00:00.000Z",
            "editedAt": null,
            "resolvedAt": null,
            "parent": null
          },
          {
            "id": "6a0b2d3f-9e4c-4b70-af12-c3d4e5f60712",
            "body": "**CI run finished**: 42 tests passed, patch attached.",
            "url": "https://linear.app/acme/issue/ENG-8123/token-count-gauge#comment-6a0b2d3f",
            "user": null,
            "createdAt": "2026-07-02T08:30:15.250Z",
            "editedAt": null,
            "resolvedAt": null,
            "parent": null
          },
          {
            "id": "7b1c3e40-af5d-4c81-b023-d4e5f6071823",
            "body": "Nice — merging once CI is green.",
            "url": "https://linear.app/acme/issue/ENG-8123/token-count-gauge#comment-7b1c3e40",
            "user": {
              "id": "99999999-9999-4999-8999-999999999999",
              "name": "Grace Hopper",
              "displayName": "grace"
            },
            "createdAt": "2026-07-02T09:05:42.000Z",
            "editedAt": "2026-07-02T09:06:10.000Z",
            "resolvedAt": null,
            "parent": {
              "id": "5f9a1c2e-8d3b-4a6f-9e01-b2c3d4e5f601"
            }
          }
        ],
        "pageInfo": {
          "hasNextPage": true,
          "hasPreviousPage": false,
          "startCursor": "c0",
          "endCursor": "c1"
        }
      }
    }
  }
}