Reference
Endpoints
Every route the gateway serves to a caller. JSON in and out, no API key: a question is paid for as it is asked.
POST /v1/questions
The native shape below, or an A2A task in input-required with Quorum’s settings under metadata["dev.quorum.resolver"]. Fields are listed under Schemas.
{ "kind": "disambiguate", "question": "Is the total 45.00 or 4.50?", "answer_schema": { "type": "enum", "options": ["45.00", "4.50"] }, "context": { "image_base64": "iVBORw0KGgo…" }, "deadline_ms": 30000, "cost_of_error": "40.50"}
{ "question_id": "q_9f2a…", "quote": "1.00", "quote_cents": 100, "claim_url": "…/v1/questions/q_9f2a…/claim", "expires_in_ms": 60000, "workers_online": 4, "payment": "{ … }"}
POST /v1/questions/{id}/claim
Send the payment credential in Authorization: Payment …. The connection is held until the question settles or deadline_ms passes, then returns the response. In callback mode it returns 202 at once and the answer is posted to your callback_url.
curl -X POST $QUORUM_URL/v1/questions/q_9f2a…/claim \ -H "Authorization: Payment <credential>"
MCP
The same question as a tool call: ask_human takes the fields of POST /v1/questions and returns the answer as text an agent can act on. For longer work there are discover_capabilities, create_human_escalation, get_escalation_status, get_escalation_result and cancel_escalation.
/docs, so an agent can read it for itself.