{"standard_family":"UAI","current_release":"UAI-1","uai_version":"1.0","release_date":"2026-04-22","description":"Published transport and negotiation guidance for moving UAI-1 records across HTTP without losing the public envelope, async workflow semantics, or trace context.","default_binding":"https-json-envelope.v1","bindings":[{"id":"https-json-envelope.v1","title":"HTTPS JSON Envelope","status":"recommended","transport":"https","message_shape":"keyed-json-envelope","request_content_type":"application\/vnd.uaix.uai+json","compatible_fallback_content_types":["application\/json"],"response_content_types":["application\/vnd.uaix.uai+json","application\/problem+json"],"intended_use":"Default public or inter-organization exchange when both sides need the full readable UAI envelope.","requirements":["Use UTF-8 JSON over HTTPS and keep the published keyed envelope intact.","Keep the `profile` field in-body and do not infer it from endpoint naming alone.","Use HTTP 202 with `uai.intent.response.v1` status `accepted` when work continues asynchronously.","Carry `conversation.traceparent` when a distributed trace already exists."]},{"id":"https-json-keyless.v1","title":"HTTPS Optimized Keyless JSON","status":"peer-agreement-required","transport":"https","message_shape":"ordered-keyless-json","request_content_type":"application\/vnd.uaix.uai-keyless+json","compatible_fallback_content_types":["application\/json"],"response_content_types":["application\/vnd.uaix.uai-keyless+json","application\/vnd.uaix.uai+json"],"intended_use":"Compact transport for peers that have already resolved the exact UAI-1 field registry and profile body order.","requirements":["Only use this binding when both sides agree on the current field-registry release.","Derive order from the published field registry instead of local convention.","Keep a keyed JSON source record for review, logging, and conformance evidence.","Fall back to keyed JSON when profile order or extension handling is uncertain."]}],"headers":[{"name":"Content-Type","requirement":"MUST","guidance":"Publish the binding-specific media type when possible and use UTF-8 JSON."},{"name":"Accept","requirement":"SHOULD","guidance":"Advertise the preferred UAI media type plus `application\/json` for keyed fallback."},{"name":"Authorization","requirement":"MAY","guidance":"Use companion transport authorization rather than inventing bearer semantics inside the UAI body."},{"name":"traceparent","requirement":"SHOULD","guidance":"Reuse W3C Trace Context when an upstream trace already exists."},{"name":"tracestate","requirement":"MAY","guidance":"Carry vendor-specific tracing data only as a companion to `traceparent`."}],"http_patterns":[{"name":"synchronous-result","request_method":"POST","response_status":200,"response_profile":"uai.intent.response.v1","description":"Use when the result is immediately available and can be returned in one response."},{"name":"accepted-async","request_method":"POST","response_status":202,"response_profile":"uai.intent.response.v1","follow_up_profile":"uai.task.status.v1","description":"Use when work is accepted but not yet complete; publish a task reference and later task-status records."},{"name":"typed-failure","request_method":"POST","response_status":400,"response_profile":"uai.error.v1","response_content_type":"application\/problem+json","description":"Use RFC 9457 problem details with UAIX extension fields and the uai.error.v1 profile instead of ad hoc plain-text errors when the exchange cannot proceed."}],"adjacent_standards":[{"name":"Agent2Agent (A2A)","url":"https:\/\/a2a-protocol.org\/latest\/","fit":"Use A2A for agent discovery, task delegation, and streaming mechanics; use UAI-1 for the portable public exchange and evidence record."},{"name":"Model Context Protocol (MCP)","url":"https:\/\/modelcontextprotocol.io\/specification\/","fit":"Use MCP for host-client-server tool and context sessions inside an application boundary; use UAI-1 when the externally reviewable record must stay portable outside that boundary."},{"name":"W3C Trace Context","url":"https:\/\/www.w3.org\/TR\/trace-context\/","fit":"Use `traceparent` and `tracestate` for distributed tracing instead of inventing a competing trace header."},{"name":"RFC 9457 Problem Details","url":"https:\/\/www.rfc-editor.org\/rfc\/rfc9457","fit":"Use problem-details semantics to shape typed error bodies; `uai.error.v1` wraps that style inside the UAI envelope."}],"route_url":"https:\/\/uaix.org\/wp-json\/uaix\/v1\/transport-bindings"}