Panel API Integration Guide
Give your application — or your AI agent — a advisory board. One HTTP call submits a question to a panel of leading AI models; the panel debates it in structured rounds and a moderator returns a synthesis with consensus scores. This page is the human-readable guide. Building an agent? Point it at the machine-first reference: documentation.ai.md.
1. Get access
- Create an account (email or Google) — free.
- Add balance from the user menu → Add credit ($5–$100 packs, card payment via Lemon Squeezy). Budget-model debates cost roughly $0.005–0.05 each; premium models require at least $1.00 balance.
- Create an API key on the API Keys page. The key
(
cr_live_…, 72 characters) is shown exactly once — store it like a password.
2. First debate in 30 seconds
Ask a question, choose 2–5 panelists, and block until the synthesis arrives
(wait ≤ 120 seconds):
curl -s "https://consensusroom.com/api/v1/debates?wait=120" \
-H "Authorization: Bearer cr_live_..." \
-H "Content-Type: application/json" \
-d '{
"question": "Event sourcing or CRUD for our microservice architecture? One paragraph.",
"panelists": [
{"key": "gpt", "model": "gpt-4o-mini", "role": "custom:Pragmatic systems architect"},
{"key": "claude", "model": "claude-haiku-4-5", "role": "skeptic"}
],
"rounds": 1
}'
The response contains status, the full messages transcript, per-message costs,
and — the part you usually want — synthesis: the moderator's final Markdown verdict with merged
ideas, disagreements, an action list and 1–5 consensus scores. The debate runs in the language of your question.
3. Panelists, models and roles
GET /api/v1/models returns the live catalog — panel groups (claude, gpt,
gemini, budget groups like or-deepseek, premium open groups like
orx-x-ai for Grok), each group's models with per-million-token prices, and the role list.
- Built-in roles: optimist, skeptic, finance, customer, lawyer, engineer, marketer, pro, con.
- Custom roles: pass
"role": "custom:Think like a sustainability expert"(up to 160 chars) — the model plays exactly the perspective you define. - Moderator: optionally pick which panelist moderates with
"moderator": "claude".
4. Async patterns
Debates take 30 seconds to 3 minutes. Three ways to consume them:
- Blocking:
POST /debates?wait=120— simplest; best for 1–2 round debates. - Polling:
POST /debatesreturns202 {"id":N}; pollGET /debates/{id}untilstatusisDONEorFAILED. - Streaming:
GET /debates/{id}/streamis a Server-Sent-Events feed of every token as the panel writes (message_start,delta,usage,doneevents).
You can also pass "webhookUrl": "https://your.app/callback" — on completion we POST
{"id":N,"status":"DONE"} to it (no content included; fetch the result via the API).
5. Pricing and limits
- Pay-as-you-go from your balance: model provider price × 1.5, charged per message and reported in every
response (
chargedUsd,totalChargedUsd). No subscription. - Question ≤ 4000 chars · 2–5 panelists · 1–3 rounds · 500 debate starts per account per day.
- A single failing panelist never fails the debate — the rest continue and the synthesis notes the gap.
6. Reference
- documentation.ai.md — complete machine-first reference (exact request/response shapes, every error code, SSE event schema). Also the right document to paste into your agent's context.
- API key management
- llms.txt — site summary for AI crawlers