---
title: Capawesome Cloud API
description: The Capawesome Cloud API lets you manage apps programmatically — Live Updates, Native Builds, App Submissions, and more, over a REST API.
---

# API

The Capawesome Cloud API lets you manage your apps and resources programmatically — apps, builds, bundles, channels, devices, deployments, and more. It's a REST API that speaks JSON, and it's the same API the [CLI](cli/index.md) and [SDKs](sdks/node.md) are built on. Reach for it directly when you need something those tools don't cover, or when you're integrating Capawesome Cloud into your own backend.

## Base URL

```
https://api.cloud.capawesome.io
```

The API is versioned through the URL path. All endpoints below the base URL live under a version segment such as `/v1`, so an existing integration keeps working when a new version ships.

## Authentication

Requests are authenticated with an [API token](accounts/tokens.md). Create a token in the Console and send it as a bearer token in the `Authorization` header:

```bash
curl https://api.cloud.capawesome.io/v1/apps \
  -H "Authorization: Bearer $CAPAWESOME_TOKEN"
```

!!! warning "Keep tokens secret"

    Never commit a token or expose it in client-side code. Store it as a secret or environment variable, and rotate it if it might have leaked.

## Requests and responses

The API accepts and returns JSON. For requests with a body, send `Content-Type: application/json`:

```bash
curl -X POST https://api.cloud.capawesome.io/v1/apps \
  -H "Authorization: Bearer $CAPAWESOME_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ "name": "My App" }'
```

## Pagination

Endpoints that return a list of resources are paginated. Use the `limit` and `offset` query parameters to control how many items you get back and where the page starts:

```bash
curl "https://api.cloud.capawesome.io/v1/apps?limit=20&offset=40" \
  -H "Authorization: Bearer $CAPAWESOME_TOKEN"
```

## Errors

The API uses standard HTTP status codes: `2xx` for success, `4xx` for client errors — such as `401` for a missing or invalid token and `404` for a resource that doesn't exist — and `5xx` for server-side problems. Error responses include a JSON body describing what went wrong, so check both the status code and the message when a request fails.

## Reference

The full, interactive endpoint reference is published as an OpenAPI/Swagger specification. You can browse every endpoint, see the exact request and response shapes, and try calls directly in the browser:

[API Reference](https://api.cloud.capawesome.io/docs){ .md-button .md-button--primary }

Because it's an OpenAPI spec, you can also import it into tools like Postman or feed it to a client generator to scaffold a typed SDK in your language of choice.

## Next steps

- [CLI](cli/index.md) — manage your apps from the command line.
- [Node.js SDK](sdks/node.md) and [Python SDK](sdks/python.md) — call the API from your own code.
- [API tokens](accounts/tokens.md) — create and manage the tokens that authenticate your requests.
