Skip to content

API Reference

Everything you can do in the GatherCloud dashboard is also available over a REST API, so you can create events, drive their lifecycle, and pull recordings and transcripts from your own systems.

Base URL

https://api.gathercloud.dev

All endpoints are versioned under /v1.

Interactive reference

Explore and try every endpoint in the interactive API explorer, rendered live from our OpenAPI spec.

Authentication

Server-to-server calls authenticate with a workspace API key in the x-api-key header. See Authentication.

sh
curl https://api.gathercloud.dev/v1/events \
  -H "x-api-key: gck_..."

Conventions

  • Requests and responses are JSON (content-type: application/json).
  • Timestamps are ISO 8601 strings (2026-06-11T18:00:00.000Z).
  • IDs are UUIDs.
  • Successful deletes return 204 No Content.

Errors

Errors use a problem+json style body (content-type: application/problem+json) with three fields: a type URI, a stable machine-readable code, and a human-readable detail. Branch on code (and the HTTP status), not on the detail text — detail strings may change.

StatusCodeMeaning
400bad_requestMalformed or missing input
401unauthorizedMissing or invalid credentials
403forbiddenAuthenticated, but not allowed
404not_foundNo such resource in your workspace
409conflict (e.g. slug_taken)State conflict

400 — validation failure. A required field is missing or a value is the wrong type or out of range. detail summarises what failed:

json
{
  "type": "https://gathercloud.com/errors/bad_request",
  "code": "bad_request",
  "detail": "body/title must be string"
}

401 — missing or invalid credentials. No x-api-key header, or a key that doesn't match any workspace:

json
{
  "type": "https://gathercloud.com/errors/unauthorized",
  "code": "unauthorized",
  "detail": "missing x-api-key"
}

404 — no such resource. The id doesn't exist, or it belongs to a different workspace than your key (we don't distinguish the two, so you can't probe for ids outside your workspace):

json
{
  "type": "https://gathercloud.com/errors/not_found",
  "code": "not_found",
  "detail": "event not found"
}

Resources