Skip to main content

API Reference

Clone exposes one REST surface, served at https://api.clone.is in production and at http://localhost:8001 in development. Every endpoint lives under one of these prefixes:

PrefixWhat it ownsPage
/api/auth/Signup, login, JWT refresh, API keys, invite, waitlist, me/.Authentication
/api/recording/Idempotent event ingest; sessions and event detail.Recording
/api/memory/Profile, semantic facts, episodes, raw memory; promotion pipeline; the headline /context/ bundle.Memory
/api/predictions/Predict, batch-predict, feedback, list, stats.Predictions
/api/access/Per-account members, invite/approve/decline.Reference page TBD
/api/voice/ElevenLabs voice synthesis.Reference page TBD
/api/sources/Source connectors (per-integration adapter scaffolding).Reference page TBD
/api/news/Curated news feed for the marketing site.Reference page TBD
/api/monitoring/Read-only health and stats endpoints.Reference page TBD
/api/jobs/Background-job records (one row per LLM call etc.).Reference page TBD
/admin/Django admin (staff only).N/A

Authentication, Recording, Memory, and Predictions have detailed reference pages linked above. The remaining surfaces are live but not yet documented in detail here.

Conventions

  • Auth. Every endpoint requires IsAuthenticated. See Authentication for the two credential shapes (Authorization: Bearer … JWT or X-Clone-API-Key: clone_… API key).
  • Content type. Request bodies are JSON. Responses are JSON. Empty responses use 204 No Content.
  • Datetimes. All datetimes are ISO-8601 in UTC. Query params like since= and until= accept the same format.
  • Pagination. List endpoints use limit (default and max documented per endpoint) and offset. There is no cursor pagination today.
  • Error shape. Errors return { "error": "<message>" } with the matching HTTP status; per-item batch errors return alongside the success array (e.g. recording/events/'s invalid list).

Status codes you'll see

CodeWhen
200 OKRead endpoints.
201 CreatedSuccessful POST that persisted a new row (recording ingest, prediction, fact).
204 No ContentSuccessful DELETE.
400 Bad RequestValidation error in the request body.
401 UnauthorizedMissing or invalid credential.
404 Not FoundRow does not exist or does not belong to request.user.
429 Too Many RequestsAnthropic rate-limited the prediction call.
502 Bad GatewayAnthropic returned a non-2xx upstream.
503 Service UnavailableLLM key missing, Anthropic unreachable, or invalid Anthropic key.