Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.powabase.ai/llms.txt

Use this file to discover all available pages before exploring further.

Orchestrations coordinate multiple agents to handle complex, multi-domain tasks. A coordinator agent analyzes incoming messages and delegates subtasks to specialized entity agents based on their role descriptions. The coordinator synthesizes entity responses into a unified reply.

Common Patterns

Create an orchestration, add entity agents with clear role descriptions, then use the streaming endpoint. The coordinator automatically handles delegation. Entity role descriptions should be specific and non-overlapping so the coordinator can make clear routing decisions.

CRUD

POST /api/orchestrations

Create an orchestration.
{ "name": "Team", "strategy": "supervisor" }
requests.post(f"{BASE_URL}/api/orchestrations", headers=headers, json={"name": "Team", "strategy": "supervisor"})

GET /api/orchestrations

List all orchestrations.
requests.get(f"{BASE_URL}/api/orchestrations", headers=headers)

GET /api/orchestrations/

Get orchestration with its entities.
id
string
required
Orchestration ID
requests.get(f"{BASE_URL}/api/orchestrations/{orch_id}", headers=headers)

PUT /api/orchestrations/

Update orchestration config.
id
string
required
Orchestration ID
requests.put(f"{BASE_URL}/api/orchestrations/{orch_id}", headers=headers, json={"name": "Updated"})

DELETE /api/orchestrations/

Delete an orchestration.
id
string
required
Orchestration ID
requests.delete(f"{BASE_URL}/api/orchestrations/{orch_id}", headers=headers)

Entities

POST /api/orchestrations//entities

Add an agent as an entity.
id
string
required
Orchestration ID
{ "agent_id": "uuid", "role": "Handles billing" }
requests.post(f"{BASE_URL}/api/orchestrations/{orch_id}/entities", headers=headers, json={"agent_id": agent_id, "role": "Handles billing"})

GET /api/orchestrations//entities

List entities in the orchestration.
id
string
required
Orchestration ID
requests.get(f"{BASE_URL}/api/orchestrations/{orch_id}/entities", headers=headers)

PUT /api/orchestrations//entities/

Update an entity’s role or config.
id
string
required
Orchestration ID
eid
string
required
Entity ID
requests.put(f"{BASE_URL}/api/orchestrations/{orch_id}/entities/{entity_id}", headers=headers, json={"role": "Updated role"})

DELETE /api/orchestrations//entities/

Remove an entity.
id
string
required
Orchestration ID
eid
string
required
Entity ID
requests.delete(f"{BASE_URL}/api/orchestrations/{orch_id}/entities/{entity_id}", headers=headers)

Execution

POST /api/orchestrations//run/stream

Run orchestration with streaming SSE. Includes delegation events.
id
string
required
Orchestration ID
{ "message": "Hello" }
requests.post(f"{BASE_URL}/api/orchestrations/{orch_id}/run/stream", headers=headers, json={"message": "Hello"}, stream=True)

GET /api/orchestrations/runs/

Get orchestration run result.
run_id
string
required
Run ID
requests.get(f"{BASE_URL}/api/orchestrations/runs/{run_id}", headers=headers)

Error Responses

StatusCodeDescription
400no_entitiesThe orchestration has no entity agents — add at least one before running
404orchestration_not_foundNo orchestration exists with the given ID