Build on Kindle Holdings
Everything the app does, it does through the same public API. There is no private surface we kept for ourselves.
API reference
Two ways in, both authenticated with a workspace API key or an OAuth token scoped to the permissions you ask for.
- GraphQL at
/graphql— one round trip for a nested read. The schema is introspectable and mirrors the objects you see in the app: workspaces, teams, cycles, issues, sub-issues, comments, attachments. - REST at
/v1— cursor-paginated, predictable resource paths, standard status codes.
Rate limits are published in response headers on every request rather than left for you to discover: X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset. Breaking changes get a new dated version and twelve months of overlap.
Full referenceEndpoint-level documentation lives at TBC: docs URL — publish before linking this page publicly. Do not link this page from the footer until that exists.
Webhooks
Subscribe to events and we will POST them to your endpoint as JSON.
| Event | Fires when |
|---|---|
issue.created | An issue is filed, by a person or by an integration |
issue.status_changed | Status moves, including moves caused by a merge |
issue.assigned | Assignee changes |
cycle.opened | A new cycle begins |
cycle.closed | A cycle ends, before rollover runs |
cycle.rolled_over | Rollover completes, with the list of what moved |
Every delivery carries an X-Kindle-Signature HMAC header — verify it and reject anything that does not match. Failed deliveries retry with exponential backoff for 24 hours, and the last 7 days of attempts are visible in workspace settings so you can replay one.
CLI
The command line tool wraps the same API. It authenticates against the workspace you are in, reads the issue ID from your branch name, and is designed to be used from a script as much as by a person.
- File, assign, move and close issues without leaving the terminal
- Pipe a filtered view to JSON for use in your own tooling
- Non-zero exit codes and machine-readable errors, so it works in CI
AvailabilityTBC: installation instructions and package registry — confirm the CLI ships before this page goes live
Getting help
API questions go to TBC: support@ email. Security issues in the API go to TBC: security@ email under the disclosure policy, not to support.