Skip to main content
This page documents the currently supported managed-agents Anthropic-compatible operations through Synth backend:
  • Base path: /api/managed-agents/anthropic/v1
  • Auth: Authorization: Bearer <SYNTH_API_KEY>
  • Compatibility headers: anthropic-version, optional anthropic-beta

Supported Phase 1 operations

MethodPath
GET/health
GET/environments
POST/environments
GET/environments/{environment_id}
POST/environments/{environment_id}
POST/environments/{environment_id}/archive
GET/agents
POST/agents
GET/agents/{agent_id}
POST/agents/{agent_id}
POST/agents/{agent_id}/archive
GET/sessions
POST/sessions
GET/sessions/{session_id}
POST/sessions/{session_id}
POST/sessions/{session_id}/archive
POST/sessions/{session_id}/events
GET/sessions/{session_id}/events
GET/sessions/{session_id}/events/stream
GET/sessions/{session_id}/stream

Example: health

curl -sS https://api.usesynth.ai/api/managed-agents/anthropic/v1/health \
  -H "Authorization: Bearer $SYNTH_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "anthropic-beta: managed-agents-2026-04-01"
Typical success payload:
{
  "status": "ok"
}

Example: create session

curl -sS https://api.usesynth.ai/api/managed-agents/anthropic/v1/sessions \
  -H "Authorization: Bearer $SYNTH_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "anthropic-beta: managed-agents-2026-04-01" \
  -H "content-type: application/json" \
  -d '{
    "agent": "agent_123",
    "environment_id": "env_123",
    "title": "Docs smoke session"
  }'
Typical success payload (shape):
{
  "id": "session_abc123",
  "agent": "agent_123",
  "environment_id": "env_123",
  "title": "Docs smoke session",
  "status": "active"
}

Example: list session events

curl -sS "https://api.usesynth.ai/api/managed-agents/anthropic/v1/sessions/$SESSION_ID/events" \
  -H "Authorization: Bearer $SYNTH_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "anthropic-beta: managed-agents-2026-04-01"
Typical response shape:
{
  "events": [
    {
      "type": "user.message",
      "content": [{"type": "text", "text": "hello"}]
    },
    {
      "type": "session.status_idle"
    }
  ]
}

Example: stream session events

curl -N -sS "https://api.usesynth.ai/api/managed-agents/anthropic/v1/sessions/$SESSION_ID/events/stream" \
  -H "Authorization: Bearer $SYNTH_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "anthropic-beta: managed-agents-2026-04-01" \
  -H "accept: text/event-stream"

Notes

  • This reference tracks the backend Phase 1 allowlist, not the full upstream managed-agents surface.
  • Native managed-agents /v1 backend exposure is out of scope in this phase.

Error examples

Typical auth failure:
{
  "detail": "Invalid API key"
}
Typical validation failure:
{
  "detail": [
    {
      "loc": ["body", "agent"],
      "msg": "field required",
      "type": "value_error.missing"
    }
  ]
}
Typical proxy config failure (service-side):
{
  "detail": "HORIZONS_PRIVATE_SERVICE_API_KEY is required for managed-agents proxy"
}

Known unproxied Anthropic operations

From contract report generated on 2026-04-14 using:
uv run scripts/ci/check_horizons_private_proxy_contract.py \
  --report-path artifacts/horizons_private_proxy_contract_report.json
Counts:
  • pinned OpenAPI operations: 24
  • proxied allowlist operations: 20
  • unproxied Phase-1-capable operations: 4
Current unproxied operations:
  • GET /anthropic/v1/agents/{agent_id}/versions
  • GET /anthropic/v1/sessions/{session_id}/threads
  • GET /anthropic/v1/sessions/{session_id}/threads/{agent_thread_id}/events
  • GET /anthropic/v1/threads