{
  "info": {
    "_postman_id": "91510084-60b1-94f2-d078-a7176e978559",
    "name": "SandboxAPIs — Linear",
    "description": "Linear publishes no REST API: one GraphQL endpoint at /graphql is the whole read surface,\npointed here at https://linear.sandboxapis.dev.\n\nPATHS ONLY: this file carries no request or response schema, because a schema is the part of an API\ndescription we do not own. It is generated from\ncoverage/COVERAGE_MANIFEST.yaml — our own record of what THIS host answers — and never from a vendor's\npublished specification, several of which may not be redistributed.\n\nThe host is read-only. Every write verb answers the provider's own error shape with a message naming what was\nattempted; the \"Read-only refusal, on purpose\" folder holds one so the shape is discoverable.\n\nNo credentials are needed — any value in `apiKey` is accepted, and a real SandboxAPIs key only raises the rate\nlimit. Path variables left blank are identifiers that move when the live host re-rolls; fill them from a list\nresponse.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "apikey",
    "apikey": [
      {
        "key": "key",
        "value": "Authorization",
        "type": "string"
      },
      {
        "key": "value",
        "value": "{{apiKey}}",
        "type": "string"
      },
      {
        "key": "in",
        "value": "header",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://linear.sandboxapis.dev",
      "type": "string",
      "description": "The live Linear host. Swap it for a *.snap. pin to freeze the data for CI."
    },
    {
      "key": "apiKey",
      "value": "any-token",
      "type": "string",
      "description": "No key is required — any value is accepted. A SandboxAPIs key raises the rate limit and rides Authorization: <key> — bare, no scheme."
    }
  ],
  "item": [
    {
      "name": "GraphQL",
      "item": [
        {
          "name": "POST /graphql",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/graphql",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "graphql"
              ]
            },
            "body": {
              "mode": "raw",
              "raw": "{\"query\":\"{ __typename }\"}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "description": "Linear answers GraphQL at /graphql.\n\nThe served schema is a SUBSET, and an uncovered field comes back as an explicit coverage error in\n`errors[]` — never a silent null. Replace the query with your own; this one only proves the endpoint\nis wired."
          }
        }
      ]
    },
    {
      "name": "Read-only refusal, on purpose",
      "item": [
        {
          "name": "POST /graphql (mutation)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/graphql",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "graphql"
              ]
            },
            "body": {
              "mode": "raw",
              "raw": "{\"query\":\"mutation { __typename }\"}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "description": "This universe is read-only, and this request is here so you can see what that looks like before your\ncode does.\n\nIt answers Linear's own error status and body shape, with a message naming the write that was\nattempted and a link to the roadmap. Nothing mutates. Every other write verb, on every other path,\nanswers the same way — this one is an example, not the only one."
          }
        }
      ]
    }
  ]
}
