Configuration
Resources
Each resource has its own GraphQL query, reads 100 rows per page, and includes archived records. Issue relationships such as team, state, assignee, creator, and project are available both as flat ID columns and compact JSON objects. Issue rows include up to the first 50 labels.Modes
All resources support full reads. If interrupted, a full read resumes after the last completed page. All four resources are incremental, following the same pattern.
The first incremental run uses
1970-01-01T00:00:00Z, so it also backfills
existing records. Later runs send the saved updated_at value as
updatedAfter. The manifest fixes the cursor field, but the pipeline can add a
lookback window if needed.
Behavior
- Auth: the API key is sent as a raw
Authorizationheader value, with noBearerprefix. This is Linear’s personal-key convention. - Pagination: Relay-style cursors.
pageInfo.endCursorfrom each response feedsvariables.afterin the next request body, terminating whenpageInfo.hasNextPageis false. - Errors: GraphQL returns HTTP 200 for query failures, so the manifest
declares an error envelope. Any response with an
errorsarray fails the run with the first error’s message. - Rate limiting: no client-side limiter is configured. The engine backs
off on 429 responses using
Retry-After. - Every resource carries a
rawremainder column preserving fields the manifest does not project.