Base URL
All API requests should be made to: http://localhost:8000Authentication
API key authentication is optional. IfLADDR_API_KEY environment variable is set, all endpoints require authentication.
Header Format:
- Query parameter:
?api_key=your-api-key - Or use
X-API-Keyheader - Or use
Authorization: Bearer your-api-keyheader
LADDR_API_KEY is not set, authentication is disabled (no-op).
Health
Check the system’s health status."database"- SQLite-based internal tracing"langfuse"- Langfuse external tracing"disabled"- Tracing not available
Prompts (Preferred)
The prompts API is the recommended way to submit tasks to agents.Create Prompt
Submit a new prompt execution.prompt_name(required) - Name of the agent to executeinputs(required) - Input data for the agentmode(optional) - Execution mode:"single"(default) or"sequential"agents(optional) - For sequential mode: ordered list of agent names to run in sequence
Get Prompt
Retrieve details of a specific prompt execution.List Prompts
List all prompt executions with pagination.limit- Maximum number of results (default: 50)
Cancel Prompt
Cancel a running prompt execution.Jobs (Legacy)
The jobs API is maintained for backward compatibility. Use the prompts API for new integrations.Submit Job
Submit a job using the legacy endpoint.Get Job
Retrieve a specific job by ID.List Jobs
List all jobs with pagination support.Replay Job
Replay a previous job execution.reexecute- Iftrue, re-run the job. Iffalse, return stored result.
Batches
Batch operations allow you to submit multiple tasks to an agent in parallel. Each task gets its own uniquejob_id and trace_id, but all tasks are grouped under a batch_id for tracking.
Submit Batch Tasks
Submit multiple tasks to an agent’s queue in parallel.tasks(required) - List of task payloads to execute in parallelwait(optional) - Iftrue, wait for all responses before returning (default:false)batch_id(optional) - Existing batch ID to add tasks to, ornullto create new batch
Add Tasks to Batch
Add more tasks to an existing batch (useful for adding aggregator tasks after evaluator workers complete).agent_name(required) - Agent to run the new taskstasks(required) - List of task payloads to addwait(optional) - Iftrue, wait for responses (default:false)
Get Batch
Retrieve batch metadata and status.List Batches
List recent batch operations.limit- Maximum number of batches to return (default: 50)
Agents
List Agents
List all registered agents with metadata.Chat with Agent
Send a message to an agent and optionally wait for response.message(required) - Message to send to the agentwait(optional) - Iftrue, wait for response (default:true)timeout(optional) - Timeout in seconds when waiting (default: 30)
Get Agent Tools
Get detailed tool information for a specific agent.Traces
Traces provide observability into agent execution, tool calls, and LLM interactions.List Traces
List trace events with optional filters.job_id(optional) - Filter traces by job IDagent_name(optional) - Filter traces by agent namelimit(optional) - Maximum number of traces to return (default: 100)
Get Grouped Traces
Get traces grouped by job_id, showing complete multi-agent runs together.limit(optional) - Maximum number of job groups to return (default: 50)
Get Trace
Get a single trace event by ID with full payload.Metrics
Get Metrics
Get aggregated system metrics.Responses
Get Resolved Response
Resolve a task response. If the response was offloaded to storage (MinIO/S3), this endpoint fetches the full payload.Container Logs
List Containers
List all Docker containers (project-agnostic).api- API server containersworker- Agent worker containersinfrastructure- Database, Redis, MinIO, etc.other- Other containers
Get Container Logs
Get logs from a specific container.tail(optional) - Number of lines to return (default: 100)since(optional) - Only logs since this timestamp (e.g., “5m”, “1h”, or ISO8601)timestamps(optional) - Include timestamps in logs (default:true)
WebSockets
Prompt Traces
Stream live trace events for a specific prompt execution.Batch Traces
Stream live trace events for a batch operation (all job_ids in the batch).job_ids in the batch, grouped by job_id.
Container Logs
Stream container logs in real-time.Events
Stream real-time system events (throttled).Error Responses
All endpoints may return error responses in the following format:200- Success400- Bad Request401- Unauthorized (invalid or missing API key)404- Not Found500- Internal Server Error502- Bad Gateway (storage fetch failed)503- Service Unavailable (Docker SDK not available)
Rate Limiting
Currently, there are no rate limits. For production deployments, consider implementing rate limiting.Event Types
Trace events use the followingevent_type values:
task_start- Agent task execution beginstask_complete- Agent task execution completestool_call- Tool invocation with parameters and resultsllm_usage- LLM API call with token usagecache_hit- Cached result useddelegation- Task delegation to another agenterror- Error occurrence with stack tracetask_cancel_requested- Task cancellation requested
Next Steps
- Traces and Database - Understanding traces, SQLite, Langfuse, and Postgres
- CLI Reference - Command-line interface
- Agent Configuration - Configure agents
- Getting Started - Setup guide