Authentication

Learn how to authenticate your API requests using API Keys.

Authentication Methods

Include your API Key in every request using one of the following methods:

X-API-Key Header

Pass the key directly in the X-API-Key header. This is the recommended method.

curl -H "X-API-Key: amk_your_api_key_here" \
  https://your-domain.com/api/v1/ext/orgs/my-org/pods

Authorization Bearer

Alternatively, pass the key as a Bearer token in the Authorization header.

curl -H "Authorization: Bearer amk_your_api_key_here" \
  https://your-domain.com/api/v1/ext/orgs/my-org/pods

Scopes

Each API Key is assigned one or more scopes that determine which endpoints it can access. Write scopes implicitly include read access for the same resource.

ScopeDescriptionAccessible Endpoints
pods:readRead-only access to podsList pods, get pod details
pods:writeFull pod management (includes read)Create pods, terminate pods + all read endpoints
tickets:readRead-only access to ticketsList tickets, get ticket, get board
tickets:writeFull ticket management (includes read)Create, update, delete tickets + all read endpoints
channels:readRead-only access to channelsList channels, get channel, list messages
channels:writeFull channel management (includes read)Create/update channels, send messages + all read endpoints
runners:readRead-only access to runnersList runners, get runner, list available runners, list runner pods
repos:readRead-only access to repositoriesList repositories, get repository, list branches, list merge requests

Error Handling

The API returns standard HTTP status codes. Common error responses:

Status CodeDescription
400Bad Request — Invalid parameters or request body
401Unauthorized — Missing or invalid API Key
403Forbidden — API Key lacks required scope for this endpoint
404Not Found — Resource does not exist or organization slug is invalid