Debates API
The Debates API allows you to create, manage, and query multi-agent debates.
Endpoints
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/debates | Create a new debate |
| GET | /api/debates | List debates |
| GET | /api/debates/:id | Get debate details |
| GET | /api/debates/:id/messages | Get debate messages |
| GET | /api/debates/:id/consensus | Get consensus result |
Create Debate
POST /api/debates
Request Body
{
"topic": "string",
"context": "string (optional)",
"agents": ["claude", "gpt4", "gemini"],
"rounds": 3,
"protocol": {
"phases": ["opening", "critique", "revision", "vote"],
"consensus_threshold": 0.75
}
}
Response
{
"id": "debate_abc123",
"status": "running",
"topic": "...",
"created_at": "2024-01-15T10:30:00Z"
}
List Debates
GET /api/debates?status=completed&limit=20
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| status | string | Filter by status (pending, running, completed, failed) |
| limit | number | Max results (default: 20) |
| offset | number | Pagination offset |
Get Debate
GET /api/debates/:id
Returns full debate details including all rounds and messages.
Get Consensus
GET /api/debates/:id/consensus
Response
{
"debate_id": "debate_abc123",
"status": "consensus_reached",
"consensus": {
"summary": "...",
"confidence": 0.85,
"key_points": ["..."],
"disagreements": ["..."]
},
"voting_summary": {
"agree": 2,
"agree_with_modifications": 1,
"disagree": 0
}
}
All endpoints also accept the /api/v1/ prefix. For full schemas and response
examples, see the generated API reference at /docs/api/reference or the
OpenAPI spec at /api/v1/openapi.json.