Overview
The LoopLlama API is organized around REST. It uses predictable resource URLs, accepts and returns JSON, and relies on standard HTTP verbs and status codes.
Base URL & versioning#
All endpoints live under a single versioned base URL. The current version is v1; breaking changes ship under a new version prefix.
Base URL
https://api.loopllama.ai/v1Authentication#
Authenticate every request with a Bearer API key. See Authentication for details.
bash
-H "Authorization: Bearer ll_live_..."Requests#
- Send request bodies as JSON with a
Content-Type: application/jsonheader. - Field names in request bodies use
camelCase(e.g.systemPrompt), matching the agent schema. - Resource ids are passed as path segments, e.g.
/v1/workflows/{id}.
Response envelope#
Successful responses wrap the payload in a data key. A single resource returns an object; collections return an array. Response field names use snake_case (e.g. created_at, workflow_id).
json
// Single resource
{ "data": { "id": "ckv9...", "name": "Brief writer" } }
// Collection
{ "data": [ { "id": "ckv9..." }, { "id": "ckva..." } ] }Errors are returned without a data key — instead they carry a top-level error string. See Errors.
HTTP status codes#
200 OK— a successful read.201 Created— a workflow was created.202 Accepted— a run was queued and will execute asynchronously.400,401,404,409— client errors, detailed on the Errors page.
Endpoints#
The complete v1 surface:
GET
/v1/workflowsPOST
/v1/workflowsGET
/v1/workflows/{id}GET
/v1/workflows/{id}/runsPOST
/v1/workflows/{id}/runsGET
/v1/runs/{id}