Skip to main content
The published REST API uses one base URL:
The unversioned Entities route is a compatibility adapter for older workspace and MCP integrations. It is not part of the published v1 contract and is not a starting point for new integrations. Use the dedicated /api/v1 resources and the OpenAPI document instead.

Learn the API in this order

Receipts are the front door for proof. Validate a portable receipt without an account, or import one into a workspace with the same API key used by other workspace operations. To understand the resources themselves — their fields, lifecycles, every operation on each, and where every referenced ID comes from — start with the entity map.

Shared guarantees

Success responses are not one shape

Errors share one envelope. Successes do not. Three families are in production, and the endpoint pages state which one each operation returns. Read the shape from the endpoint page rather than assuming: POST /api/v1/lifecycle returns its successful result bare. Its errors use the shared envelope like every other versioned operation. Pagination on /api/v1 uses meta.nextCursor and meta.hasMore. Compatibility entities reads use their legacy pagination fields; new clients should use the resource-specific v1 operation documented in OpenAPI.
These differences are real behavior, not documentation shorthand. Write clients against the shape the endpoint page names. The endpoint page and the OpenAPI document are authoritative for that operation’s success shape.
Account-free utilities need no key. Inbound provider callbacks are documented separately on the webhooks page.

Other integration surface

Use the hosted MCP endpoint when an AI client needs tools, resources, and browser-based OAuth. MCP and REST share workspace authority but serve different client protocols. The OpenAPI document is the machine contract. If an operation is absent from it, treat that operation as unsupported.