Skip to main content

Reference

Every endpoint below is authenticated the same way, refuses in the same shape, and pages the same way. Those three things are documented once, in the guides, rather than repeated on every operation:

The machine-readable contract is at /api/v1/openapi.json. It is generated from the same definitions that build the responses, so it cannot describe a field the API does not return.

Prefer to browse?

The same contract is rendered interactively in the API Explorer: every endpoint with its parameters, response schemas and a ready-to-copy request in curl, JavaScript, Python and more. The pages here and the explorer are generated from the same document, so they never disagree.

Requests are made server-side

API keys are never usable from a browser — /api/v1 does not allow cross-origin credentialed requests, deliberately. Every example here is a server-side call, and the explorer generates requests for you to run from your own code rather than sending them from the page, because from the page they could not work.