Browse documentation
Get startedIntroductionQuickstart
ConceptsArchitectureCore objectsQuery lifecycle
SpecificationOverviewHTTP bindingMCP bindingA2A bindingSecuritySchema reference
CommunityContributingGovernance
Concepts

Core objects

The canonical data model every AQP binding carries.

QueryRequest

A bounded, expiring question about one subject. It declares a query type, prompt, timing, consent mode, response format, delivery information, and expiry.

QuerySubject

A portable reference to what the question concerns. Initial kinds include interaction, message, task, artifact, tool_call, response, resource, service, user, and other. A protocol and context identifier may be included without embedding the underlying content.

QueryResponse

A typed answer linked to the query and subject. It carries the respondent kind, answer, optional explanation and confidence, consent attestation when applicable, creation time, and optional supersession reference.

{
  "protocolVersion": "2026-07-30",
  "responseId": "0198c7d0-2180-7729-b005-d33c99fc7452",
  "queryId": "0198c7cb-1af1-7e79-bd7f-02f8a89b8857",
  "subject": {
    "kind": "tool_call",
    "id": "call_01JQ8QY3EJX9",
    "protocol": "mcp"
  },
  "respondent": { "kind": "agent" },
  "answer": "partly",
  "explanation": "The result answered the question after one retry.",
  "confidence": 0.92,
  "createdAt": "2026-07-30T17:05:12Z"
}

QueryReceipt

An acknowledgment with one of four states: accepted, duplicate, rejected, or withdrawn. Receipts make retry behavior explicit and prevent a model from inferring success from prose.