Conventions

Base URL

The base URL is your organization’s arcodash Cloud origin plus /api:

https://<your-org>.arcodash.com/api

Every path in this reference is written relative to that base, e.g. GET /api/queries means GET https://<your-org>.arcodash.com/api/queries.

Request and response format

All request bodies and response bodies are JSON. Send Content-Type: application/json on any request with a body.

Errors

Errors use standard HTTP status codes:

Status Meaning
401 Missing or invalid API key.
403 Authenticated, but not allowed to perform this action on this object.
404 The object doesn’t exist, or you don’t have access to it.
204 The action succeeded and returns no body (e.g. logging out).
409 The request conflicts with the object’s current state (e.g. acknowledging a monitor
that isn’t currently triggered, or that’s already acknowledged).
422 The request body failed validation.
429 Rate limit exceeded — see below.

Rate limits

Several endpoints are rate-limited. Each limit is enforced independently — hitting one doesn’t affect your budget on another.

Endpoint Limit
Query execute 60/min per user
Data source test 10/min per user
Public dashboard 30/min per IP
Public embed 30/min per IP
Digest unsubscribe 30/min per IP
Sign-in 10/min per IP
Session exchange and organization select 10/min per IP
Invitation status lookup 10/min per IP
Signup 5/min per IP
Invite accept 5/min per IP
AI SQL generation 10/min per user (an organization admin can raise or lower this in AI Settings)

Going over a limit returns 429 with the same JSON error shape as any other failure ({"message": "..."}, Content-Type: application/json). No Retry-After header is set — back off and retry after a short delay rather than parsing one from the response.

[!NOTE] AI SQL generation’s rate limit is enforced inside that endpoint’s own response body rather than as an HTTP 429 — a request over the limit still gets 200 with a JSON body reporting a rate_limited status and a retry_after_secs value. Every other limit in the table above returns a genuine 429.