curl -X POST https://api.rotavision.com/v1/orchestrate/workflows \
-H "Authorization: Bearer rv_live_..." \
-H "Content-Type: application/json" \
-d '{
"name": "Customer Support Triage",
"agents": [
{
"id": "classifier",
"type": "llm",
"model": "gpt-5-mini",
"system_prompt": "Classify customer support tickets..."
},
{
"id": "responder",
"type": "llm",
"model": "claude-4.5-sonnet",
"system_prompt": "Generate helpful customer support responses..."
},
{
"id": "escalation",
"type": "human",
"assignees": ["support-lead@company.com"]
}
],
"steps": [
{
"agent": "classifier",
"action": "classify",
"input": "{{ticket}}"
},
{
"condition": "{{classifier.priority}} == \"high\"",
"agent": "escalation",
"action": "approve",
"input": "High priority ticket requires approval"
},
{
"agent": "responder",
"action": "respond",
"input": "Category: {{classifier.category}}\nTicket: {{ticket}}"
}
]
}'
{
"id": "wf_abc123",
"name": "Customer Support Triage",
"status": "active",
"version": 1,
"agents": [...],
"steps": [...],
"config": {
"timeout_ms": 300000,
"max_retries": 3
},
"created_at": "2026-02-01T10:00:00Z"
}
Orchestrate
Create Workflow
Create a multi-agent workflow definition
POST
/
orchestrate
/
workflows
curl -X POST https://api.rotavision.com/v1/orchestrate/workflows \
-H "Authorization: Bearer rv_live_..." \
-H "Content-Type: application/json" \
-d '{
"name": "Customer Support Triage",
"agents": [
{
"id": "classifier",
"type": "llm",
"model": "gpt-5-mini",
"system_prompt": "Classify customer support tickets..."
},
{
"id": "responder",
"type": "llm",
"model": "claude-4.5-sonnet",
"system_prompt": "Generate helpful customer support responses..."
},
{
"id": "escalation",
"type": "human",
"assignees": ["support-lead@company.com"]
}
],
"steps": [
{
"agent": "classifier",
"action": "classify",
"input": "{{ticket}}"
},
{
"condition": "{{classifier.priority}} == \"high\"",
"agent": "escalation",
"action": "approve",
"input": "High priority ticket requires approval"
},
{
"agent": "responder",
"action": "respond",
"input": "Category: {{classifier.category}}\nTicket: {{ticket}}"
}
]
}'
{
"id": "wf_abc123",
"name": "Customer Support Triage",
"status": "active",
"version": 1,
"agents": [...],
"steps": [...],
"config": {
"timeout_ms": 300000,
"max_retries": 3
},
"created_at": "2026-02-01T10:00:00Z"
}
Request
Human-readable workflow name.
Workflow description.
Workflow steps.
Show step properties
Show step properties
Step identifier. Auto-generated if not provided.
Agent ID to execute step.
Action for the agent to perform.
Input template (supports
{{variable}} syntax).Conditional expression for step execution.
Steps to run in parallel.
curl -X POST https://api.rotavision.com/v1/orchestrate/workflows \
-H "Authorization: Bearer rv_live_..." \
-H "Content-Type: application/json" \
-d '{
"name": "Customer Support Triage",
"agents": [
{
"id": "classifier",
"type": "llm",
"model": "gpt-5-mini",
"system_prompt": "Classify customer support tickets..."
},
{
"id": "responder",
"type": "llm",
"model": "claude-4.5-sonnet",
"system_prompt": "Generate helpful customer support responses..."
},
{
"id": "escalation",
"type": "human",
"assignees": ["support-lead@company.com"]
}
],
"steps": [
{
"agent": "classifier",
"action": "classify",
"input": "{{ticket}}"
},
{
"condition": "{{classifier.priority}} == \"high\"",
"agent": "escalation",
"action": "approve",
"input": "High priority ticket requires approval"
},
{
"agent": "responder",
"action": "respond",
"input": "Category: {{classifier.category}}\nTicket: {{ticket}}"
}
]
}'
{
"id": "wf_abc123",
"name": "Customer Support Triage",
"status": "active",
"version": 1,
"agents": [...],
"steps": [...],
"config": {
"timeout_ms": 300000,
"max_retries": 3
},
"created_at": "2026-02-01T10:00:00Z"
}
⌘I

