Browse documentation
Get startedIntroductionQuickstart
ConceptsArchitectureCore objectsApproval and continuationsQuery lifecycle
SpecificationOverviewHTTP bindingMCP bindingA2A bindingSecuritySchema reference
CommunityContributingQEP 0001Governance
Concepts

Core objects

The canonical data model every AQP binding carries.

QueryRequest

A bounded, expiring question about one subject. It declares the intended respondent, query type, prompt, timing, exact response format, delivery information, expiry, and optional continuation lineage.

QuerySubject

An opaque, audience-scoped reference to what the question concerns. User subjects must be local or pairwise; names, emails, and globally correlatable identifiers do not belong in the protocol object.

QueryResponse

A typed answer linked to the query and subject. It carries respondent kind and provenance, answer, optional explanation and confidence, creation time, and optional supersession reference. The answer is validated against its request.

{
  "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", "provenance": "direct" },
  "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. An accepted or duplicate receipt may carry one nextQuery.

Continuations

A continuation is a new query whose continuationOf names the acknowledged predecessor. It receives a new identifier and capability, preserves the subject, and cannot silently widen the preceding query's authority.