Recent searches

in

API

Last modified: August 12th, 2026

On this page

The CloudCannon API lets you manage your Organizations, Projects, Sites, Builds, and more programmatically. This reference is generated from the CloudCannon OpenAPI specification and covers every available endpoint, grouped by resource.

The API is versioned under the /api/v0/ path. While it is on a v0 version, endpoints and fields may change. Deprecated endpoints are marked in this reference.

If CloudCannon changes an endpoint you use, you will receive an email alert. However, we recommend using the SDK, which we update to match changes to the API.

Working with the API#

We recommend working with the CloudCannon API is through one of our official tools, as they handle authentication, request signing, and pagination for you:

  • CloudCannon CLI — manage your Organizations, Sites, Builds, files, and form submissions from the terminal.
  • TypeScript SDK — a typed client with a sub-client for each resource and built-in pagination, sorting, and filtering.

However, if you need direct access, such as for another language or a use case the tools don't cover, this reference documents the underlying HTTP API.

OpenAPI specification#

This reference is generated from CloudCannon's OpenAPI specification, which is published as a machine-readable document at:

Bash
Copied to clipboard
https://app.cloudcannon.com/api/v0/openapi.json

Point your tooling at this URL to generate API clients, explore endpoints in a tool like Postman or Insomnia, or give an AI agent the complete, structured definition of every endpoint, parameter, and response in one request.

Download the specification to a file with curl:

Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/openapi.json -o openapi.json

Downloading the specification gives an AI agent or code generator the entire API in a single file, instead of reading this reference page by page.

Base URL#

All API requests are made to:

Bash
Copied to clipboard
https://app.cloudcannon.com/api/v0

Authentication#

Every request must be authenticated. The CloudCannon API supports two types of credentials:

  • API Keys — scoped to an Organization. Best for server-to-server integrations, and the method this reference documents.
  • Access Keys — scoped to an individual user. Created and used by the CloudCannon CLI to act on that user's behalf.

API Keys

An API Key authenticates as an Organization and grants access to that Organization's resources, limited to the permissions granted to the key when it was created. A request for an action the key doesn't have permission for returns 403 Forbidden. To create an API Key, please read our documentation on creating an API key, then pass it in the X-API-KEY header on every request:

Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs \
  -H "X-API-KEY: <your-api-key>"

Keep your API Key on your server. It grants access to your Organization, so never expose it in client-side code or commit it to source control.

Many endpoints are scoped to an Organization and include its Organization UUID in the path. Your Organization UUID appears alongside your keys on the API Keys page.

Access Keys

You can only make an Access Key for your own account. Access Keys should never be shared.

An Access Key authenticates as an individual account, with their Permissions across all the Organizations they belong to. You can create an Access Key yourself on the Access Keys page under Account Settings, or let the CloudCannon CLI create one for you when you run cloudcannon login. You can manage or revoke your keys from the same page. Requests made with an Access Key are cryptographically signed; the CLI and SDK handle this for you.

For direct HTTP access we recommend using an API Key. If you need to sign Access Key requests in another language, see the signRequest method in the SDK for a reference implementation of the signing scheme.

Requests without valid credentials return a 401 Unauthorized response.

Pagination#

List endpoints accept page and items query parameters to page through results, and sort_attribute and sort_direction to control ordering. sort_direction accepts ASC or DESC and defaults to DESC. The available sort_attribute values vary by endpoint and are listed with each endpoint's parameters.

Bash
Copied to clipboard
curl "https://app.cloudcannon.com/api/v0/orgs/<org_uuid>/sites?page=2&items=50" \
  -H "X-API-KEY: <your-api-key>"

Rate limiting#

Requests to the API are rate limited by IP address. Requests over the limit receive a 429 Too Many Requests response — back off and retry when you get one. Because the limit is per IP address, requests that share an IP (for example, several keys running from the same CI server) count against the same limit.

Endpoints#

Endpoints are grouped by resource. Select a resource to see its endpoints, parameters, and example requests, or browse them using the navigation on the left.

Open in a new tab