Skip to main content

Reactive AsyncAPI reference

The AsyncAPI 3.0 specification describes Transit's reactive WebSocket protocol. Channels, operations, messages and schemas below come directly from the generated serving description. Fetch-SSE uses the separate OpenAPI reference.

Session and connection lifecycle​

  1. Provision a caller and publish a service/watch binding for the selected int64 Table. Establish the durable session and subscription with signed controls under current policy.
  2. Connect through the configured TLS host and exact Origin using the transit.reactive.v1 WebSocket subprotocol.
  3. Complete the provisioned Ed25519 challenge bootstrap in the first client message. No URL credentials or arbitrary browser handshake headers are used.
  4. Attach with the current subscription/attachment generation and signed cursor. Apply invalidations and refresh an exact finite snapshot through the shared client; a notification is not an updated query result.
  5. Renew or close through explicit controls. A disconnected socket does not close the durable session or cancel accepted work.

The host uses RFC 6455 over HTTP/1.1 with JSON text. Compression, binary messages and HTTP/2 CONNECT are outside this profile. Cursors prove integrity, not permission; every bounded disclosure rechecks current native/service/source rights, lease and generation. A missing retained range produces explicit reset or interruption, never a claim of continuous coverage.

See the reactive wire contract, runnable reactive example and live-view model for exact recovery and snapshot freshness. The directions receive and send below are from the server's perspective.

Generated reference​

Transit reactive WebSocket · contract version 1.0.0.

RFC 6455 HTTP/1.1, transit.reactive.v1, JSON text, provisioned Ed25519 challenge bootstrap in the first client message. No URL credentials, arbitrary browser handshake headers, compression, binary messages or HTTP/2 CONNECT. Native exact command recovery is shared with HTTP.

Servers​

{
"configured": {
"host": "{host}",
"protocol": "wss",
"variables": {
"host": {
"default": "serving.example.test",
"description": "Must equal the deployment's exact configured public HTTPS host."
}
}
}
}

Channel reactive​

Address: /reactive/v1/websocket.

Bindings and messages:

{
"bindings": {
"ws": {
"method": "GET",
"bindingVersion": "0.1.0",
"headers": {
"type": "object",
"properties": {
"Origin": {
"type": "string"
},
"Sec-WebSocket-Protocol": {
"type": "string",
"const": "transit.reactive.v1"
}
},
"required": [
"Origin",
"Sec-WebSocket-Protocol"
]
}
}
},
"messages": {
"client": {
"$ref": "#/components/messages/client"
},
"server": {
"$ref": "#/components/messages/server"
}
}
}

Operation receiveClient​

Action from the server's perspective: receive.

{
"action": "receive",
"channel": {
"$ref": "#/channels/reactive"
},
"messages": [
{
"$ref": "#/channels/reactive/messages/client"
}
]
}

Operation sendServer​

Action from the server's perspective: send.

{
"action": "send",
"channel": {
"$ref": "#/channels/reactive"
},
"messages": [
{
"$ref": "#/channels/reactive/messages/server"
}
]
}

Message client​

ClientMessage · application/json

Field / variantTypeRequired in parentConstraints
$ClientMessageyes

Message server​

ServerMessage · application/json

Field / variantTypeRequired in parentConstraints
$ServerMessageyes

Schemas​

Nested fields use dot paths; array entries use []. Required means required within the containing object or variant. Numeric, encoding and union constraints come from the specification; a shape-valid request still needs current authority.

SubjectProof​

Field / variantTypeRequired in parentConstraints
$objectyesadditionalProperties: false; x-transit-defaults: {}
$.claimobjectyesadditionalProperties: false; x-transit-defaults: {}
$.claim.definitionstringyesenum: ["c7e556954e7f6e9cf79a65abf9d082372ea626174ca7a6b4422ae25083dffc8b"]
$.claim.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.claim.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.claim.credential_epochintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.claim.roleanyOfyes
$.claim.role (anyOf 1)integeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.claim.role (anyOf 2)nullyes
$.claim.audienceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.claim.contextarrayyesminItems: 32; maxItems: 32
$.claim.context[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.signaturearrayyesminItems: 64; maxItems: 64
$.signature[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false

Diagnostic​

Field / variantTypeRequired in parentConstraints
$objectyesadditionalProperties: false; x-transit-defaults: {"cause":null,"identity":null,"location":null,"facts":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"actions":[null,null,null,null]}
$.versionvalueyesconst: 1
$.definitionstringyesenum: ["c7e556954e7f6e9cf79a65abf9d082372ea626174ca7a6b4422ae25083dffc8b"]
$.codestringyesmaxLength: 96; x-transit-max-utf8-bytes: 96
$.categorystringyesenum: ["syntax","binding","unsupported","constraint","access","conflict","limit","lifecycle","integrity","unavailable","internal"]
$.stagestringyesenum: ["input","parse","compile","bind","prepare","submit","admission","execute","read","decode","output","reconcile","cleanup","control"]
$.outcomestringyesenum: ["not_applicable","not_submitted","not_dispatched","prepared","unknown","pending","input_rejected","rejected","applied","completed","failed","cancelled","retired","closed_unknown"]
$.evidencestringyesenum: ["none","local_before_dispatch","saved_intent","native_receipt","domain_status"]
$.messagestringyesmaxLength: 384; x-transit-max-utf8-bytes: 384
$.causeanyOfyes
$.cause (anyOf 1)stringyesmaxLength: 96; x-transit-max-utf8-bytes: 96
$.cause (anyOf 2)nullyes
$.identityanyOfyes
$.identity (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {"realm":null,"resource":null,"sequence":null}
$.identity (anyOf 1).domainstringyesenum: ["sql","query","mutation","catalog","application","publication","migration","reactive","serving","effect","exchange","transport","internal"]
$.identity (anyOf 1).idstringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.identity (anyOf 1).realmanyOfyes
$.identity (anyOf 1).realm (anyOf 1)stringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.identity (anyOf 1).realm (anyOf 2)nullyes
$.identity (anyOf 1).resourceanyOfyes
$.identity (anyOf 1).resource (anyOf 1)stringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.identity (anyOf 1).resource (anyOf 2)nullyes
$.identity (anyOf 1).sequenceanyOfyes
$.identity (anyOf 1).sequence (anyOf 1)stringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.identity (anyOf 1).sequence (anyOf 2)nullyes
$.identity (anyOf 2)nullyes
$.locationanyOfyes
$.location (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {"source":null,"source_encoding":"utf8","source_truncated":false,"statement":null}
$.location (anyOf 1).sourceanyOfyes
$.location (anyOf 1).source (anyOf 1)stringyesmaxLength: 512; x-transit-max-utf8-bytes: 512
$.location (anyOf 1).source (anyOf 2)nullyes
$.location (anyOf 1).source_encodingstringyesenum: ["utf8","escaped_bytes"]
$.location (anyOf 1).source_truncatedbooleanyes
$.location (anyOf 1).statementanyOfyes
$.location (anyOf 1).statement (anyOf 1)stringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.location (anyOf 1).statement (anyOf 2)nullyes
$.location (anyOf 1).offsetstringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.location (anyOf 1).lengthstringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.location (anyOf 1).linestringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.location (anyOf 1).byte_columnstringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.location (anyOf 2)nullyes
$.factsarrayyesminItems: 16; maxItems: 16
$.facts[]anyOfyes
$.facts[] (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {}
$.facts[] (anyOf 1).fieldstringyesenum: ["object","name","table","native_input","affected_rows","argument","option","permissions","scope","column","qualifier","constraint","key","input_row","first_occurrence","parameter","parameter_use","expected_count","actual_count","expected_type","actual_type","supplied_value","expected_value","expression","source_kind","source_basis","source_key","source_row","field_path","byte_offset","expected_resource","actual_resource","expected_source","actual_source","expected_revision","actual_revision","expected_schema","actual_schema","expected_policy","actual_policy","budget","limit","required","unit","completed_statements","emitted_rows","emitted_segments","completion","proposal","step","generation","attachment","lease","schema_origin","sampling_records","operation","native_cause","expected_bytes","presence","published","subscription","expected_codec","actual_codec","observed_clock","expected_namespace","actual_namespace","attempt","executor","resolution_reason","principal","deadline","authorization_policy","resolution_policy","protocol_status","native_effect","dependency","dependency_kind","dependency_owner"]
$.facts[] (anyOf 1).originstringyesenum: ["caller","execution","schema","authority","owner"]
$.facts[] (anyOf 1).availabilitystringyesenum: ["provided","truncated","unrecorded","unavailable","withheld","inapplicable"]
$.facts[] (anyOf 1).valueanyOfyes
$.facts[] (anyOf 1).value (anyOf 1)oneOfyes
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 1)objectyesadditionalProperties: false
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 1).textstringyesmaxLength: 256; x-transit-max-utf8-bytes: 256
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 2)objectyesadditionalProperties: false
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 2).signedstringyesmaxLength: 20; pattern: "^(0|-?[1-9][0-9]*)$"
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 3)objectyesadditionalProperties: false
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 3).unsignedstringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 4)objectyesadditionalProperties: false
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 4).booleanbooleanyes
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 5)objectyesadditionalProperties: false
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 5).digestarrayyesminItems: 32; maxItems: 32
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 5).digest[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 6)objectyesadditionalProperties: false
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 6).locationobjectyesadditionalProperties: false; x-transit-defaults: {"source":null,"source_encoding":"utf8","source_truncated":false,"statement":null}
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 6).location.sourceanyOfyes
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 6).location.source (anyOf 1)stringyesmaxLength: 512; x-transit-max-utf8-bytes: 512
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 6).location.source (anyOf 2)nullyes
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 6).location.source_encodingstringyesenum: ["utf8","escaped_bytes"]
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 6).location.source_truncatedbooleanyes
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 6).location.statementanyOfyes
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 6).location.statement (anyOf 1)stringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 6).location.statement (anyOf 2)nullyes
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 6).location.offsetstringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 6).location.lengthstringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 6).location.linestringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.facts[] (anyOf 1).value (anyOf 1) (oneOf 6).location.byte_columnstringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.facts[] (anyOf 1).value (anyOf 2)nullyes
$.facts[] (anyOf 2)nullyes
$.actionsarrayyesminItems: 4; maxItems: 4
$.actions[]anyOfyes
$.actions[] (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {"target":null}
$.actions[] (anyOf 1).kindstringyesenum: ["correct_input","inspect_status","resume_exact","cancel_wait","cancel_mutation","refresh","recompile","retry_read","inspect_scope","reconcile_effect","contact_operator"]
$.actions[] (anyOf 1).targetanyOfyes
$.actions[] (anyOf 1).target (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {"realm":null,"resource":null,"sequence":null}
$.actions[] (anyOf 1).target (anyOf 1).domainstringyesenum: ["sql","query","mutation","catalog","application","publication","migration","reactive","serving","effect","exchange","transport","internal"]
$.actions[] (anyOf 1).target (anyOf 1).idstringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.actions[] (anyOf 1).target (anyOf 1).realmanyOfyes
$.actions[] (anyOf 1).target (anyOf 1).realm (anyOf 1)stringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.actions[] (anyOf 1).target (anyOf 1).realm (anyOf 2)nullyes
$.actions[] (anyOf 1).target (anyOf 1).resourceanyOfyes
$.actions[] (anyOf 1).target (anyOf 1).resource (anyOf 1)stringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.actions[] (anyOf 1).target (anyOf 1).resource (anyOf 2)nullyes
$.actions[] (anyOf 1).target (anyOf 1).sequenceanyOfyes
$.actions[] (anyOf 1).target (anyOf 1).sequence (anyOf 1)stringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.actions[] (anyOf 1).target (anyOf 1).sequence (anyOf 2)nullyes
$.actions[] (anyOf 1).target (anyOf 2)nullyes
$.actions[] (anyOf 2)nullyes

SignedCommand​

Field / variantTypeRequired in parentConstraints
$objectyesadditionalProperties: false; x-transit-defaults: {}
$.requestobjectyesadditionalProperties: false; x-transit-defaults: {"version":1}
$.request.versionvaluenoconst: 1
$.request.definitionstringyesenum: ["c7e556954e7f6e9cf79a65abf9d082372ea626174ca7a6b4422ae25083dffc8b"]
$.request.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.request.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.request.sequenceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.request.commandobjectyesadditionalProperties: false; x-transit-defaults: {}
$.request.command.sendobjectyesadditionalProperties: false; x-transit-defaults: {"role":null}
$.request.command.send.pidintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.request.command.send.valuestringyespattern: "^(?:[0-9a-f]{2})*$"; maxLength: 512; x-transit-encoding: "lowercase-hex"
$.request.command.send.roleanyOfno
$.request.command.send.role (anyOf 1)integeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.request.command.send.role (anyOf 2)nullyes
$.signaturearrayyesminItems: 64; maxItems: 64
$.signature[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false

ServingRead​

Field / variantTypeRequired in parentConstraints
$objectyesadditionalProperties: false; x-transit-defaults: {}
$.readobjectyesadditionalProperties: false; x-transit-defaults: {"operation":0}
$.read.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.serviceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.ingressintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.kindstringyesenum: ["discovery","status","result","disposition"]
$.read.operationintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.proofSubjectProofyes

ServingResponse​

Field / variantTypeRequired in parentConstraints
$objectyesadditionalProperties: false; x-transit-defaults: {"stage":"not_observed","binding":null,"operation":null,"diagnostic":null,"disposition":null,"capabilities":{"http":true,"sse":false,"websocket":false,"grpc":false,"flight":false}}
$.serviceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.policy_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.stagestringnoenum: ["ingress_accepted","not_observed","service_admitted","completed","cancelled","timed_out","failed","rejected"]
$.bindinganyOfno
$.binding (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {"published":true}
$.binding (anyOf 1).revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.binding (anyOf 1).targetintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.binding (anyOf 1).codecintegeryesminimum: 0; maximum: 65535; x-transit-bits: 16; x-transit-signed: false
$.binding (anyOf 1).active_limitintegeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.binding (anyOf 1).wait_before_msintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.binding (anyOf 1).publishedbooleanno
$.binding (anyOf 2)nullyes
$.operationanyOfno
$.operation (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {"phase":"admitted","resolution_input":0,"result":"","reply_bytes":0}
$.operation (anyOf 1).principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.operation (anyOf 1).operationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.operation (anyOf 1).bindingintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.operation (anyOf 1).codecintegeryesminimum: 0; maximum: 65535; x-transit-bits: 16; x-transit-signed: false
$.operation (anyOf 1).deadline_msintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.operation (anyOf 1).digestarrayyesminItems: 32; maxItems: 32
$.operation (anyOf 1).digest[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.operation (anyOf 1).targetintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.operation (anyOf 1).correlationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.operation (anyOf 1).policy_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.operation (anyOf 1).phasestringnoenum: ["admitted","completed","cancelled","timed_out","failed"]
$.operation (anyOf 1).resolution_inputintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.operation (anyOf 1).resultstringnopattern: "^(?:[0-9a-f]{2})*$"; maxLength: 512; x-transit-encoding: "lowercase-hex"
$.operation (anyOf 1).reply_bytesintegernominimum: 0; maximum: 65535; x-transit-bits: 16; x-transit-signed: false
$.operation (anyOf 2)nullyes
$.diagnosticanyOfno
$.diagnostic (anyOf 1)Diagnosticyes
$.diagnostic (anyOf 2)nullyes
$.dispositionanyOfno
$.disposition (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {}
$.disposition (anyOf 1).recordobjectyesadditionalProperties: false; x-transit-defaults: {}
$.disposition (anyOf 1).record.reasonstringyesenum: ["InvalidServingFrame","ServingExternalOriginRequired","UnexpectedServingOrigin","InvalidServingCommand","InvalidServingIdentity","InvalidServiceBinding","InvalidServicePolicy","ServingDenied","ServiceRevisionConflict","ServingIdentityConflict","ServingCapacity","ServiceUnpublished","InvalidWaitLifetime","ServingOperationNotFound","UnknownServingCorrelation","UnexpectedServingReplySource","UnexpectedTimerObserver","InvalidTimerObservation","PrematureTimer","UnsupportedServingFrame","InvalidReactiveSource","ReactiveSessionNotFound","ReactiveGenerationConflict","ReactiveSessionClosed","ReactiveSessionExpired","ReactiveResetRequired","InvalidReactiveLease","ReactiveCapacity","InvalidReactiveAttachment","ReactiveAttachmentConflict","ReactiveSubscriptionConflict","ReactiveLeaseConflict","InvalidRefreshBudget","InvalidRefreshTemplate","RefreshGenerationConflict","RefreshNotFound","RefreshResultConflict","UnexpectedRefreshWake","AccessDenied","QueryDenied","CatalogDenied","ResourceUnavailable","QuerySourceUnavailable","ResultUnavailable","PublicationNotPublished","UnsupportedReactiveSource","InvalidReactiveProgress","TableNotFound"]
$.disposition (anyOf 1).record.inputintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.disposition (anyOf 1).record.kindstringyesenum: ["service","reactive","refresh"]
$.disposition (anyOf 1).record.subjectstringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.disposition (anyOf 1).record.generationstringyesmaxLength: 20; pattern: "^(0|[1-9][0-9]*)$"
$.disposition (anyOf 1).record.payloadarrayyesminItems: 32; maxItems: 32
$.disposition (anyOf 1).record.payload[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.disposition (anyOf 1).record.causestringyespattern: "^(?:[0-9a-f]{2})*$"; maxLength: 512; x-transit-encoding: "lowercase-hex"
$.disposition (anyOf 1).diagnosticanyOfyes
$.disposition (anyOf 1).diagnostic (anyOf 1)Diagnosticyes
$.disposition (anyOf 1).diagnostic (anyOf 2)nullyes
$.disposition (anyOf 2)nullyes
$.capabilitiesobjectnoadditionalProperties: false; x-transit-defaults: {"http":true,"sse":false,"websocket":false,"grpc":false,"flight":false}
$.capabilities.httpbooleanno
$.capabilities.ssebooleanno
$.capabilities.websocketbooleanno
$.capabilities.grpcbooleanno
$.capabilities.flightbooleanno

Receipt​

Field / variantTypeRequired in parentConstraints
$objectyesadditionalProperties: false; x-transit-defaults: {"stage":"ingress_accepted"}
$.stagestringnoenum: ["ingress_accepted","not_observed","service_admitted","completed","cancelled","timed_out","failed","rejected"]
$.receiptobjectyesadditionalProperties: false; x-transit-defaults: {}
$.receipt.positionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false

ReactiveRead​

Field / variantTypeRequired in parentConstraints
$objectyesadditionalProperties: false; x-transit-defaults: {}
$.readobjectyesadditionalProperties: false; x-transit-defaults: {"attachment":0,"nonce":"\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000","cursor":null}
$.read.scopeobjectyesadditionalProperties: false; x-transit-defaults: {"subscription":0,"subscription_generation":0}
$.read.scope.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.scope.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.scope.serviceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.scope.ingressintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.scope.sessionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.scope.generationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.scope.subscriptionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.scope.subscription_generationintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.kindstringyesenum: ["session","snapshot","events"]
$.read.attachmentintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.noncearraynominItems: 16; maxItems: 16
$.read.nonce[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.read.cursoranyOfno
$.read.cursor (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {}
$.read.cursor (anyOf 1).positionobjectyesadditionalProperties: false; x-transit-defaults: {"version":1,"outcome_position":0}
$.read.cursor (anyOf 1).position.versionvaluenoconst: 1
$.read.cursor (anyOf 1).position.scopeobjectyesadditionalProperties: false; x-transit-defaults: {"subscription":0,"subscription_generation":0}
$.read.cursor (anyOf 1).position.scope.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.cursor (anyOf 1).position.scope.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.cursor (anyOf 1).position.scope.serviceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.cursor (anyOf 1).position.scope.ingressintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.cursor (anyOf 1).position.scope.sessionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.cursor (anyOf 1).position.scope.generationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.cursor (anyOf 1).position.scope.subscriptionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.cursor (anyOf 1).position.scope.subscription_generationintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.cursor (anyOf 1).position.watch_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.cursor (anyOf 1).position.resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.cursor (anyOf 1).position.schemaarrayyesminItems: 32; maxItems: 32
$.read.cursor (anyOf 1).position.schema[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.read.cursor (anyOf 1).position.data_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.cursor (anyOf 1).position.outcome_positionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.cursor (anyOf 1).signaturearrayyesminItems: 64; maxItems: 64
$.read.cursor (anyOf 1).signature[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.read.cursor (anyOf 2)nullyes
$.proofSubjectProofyes

ReactiveResponse​

Field / variantTypeRequired in parentConstraints
$objectyesadditionalProperties: false; x-transit-defaults: {"version":1,"source":null,"snapshot":null,"event":null,"cursor":null}
$.versionvaluenoconst: 1
$.sessionobjectyesadditionalProperties: false; x-transit-defaults: {"phase":"open","attachment":0,"nonce":"\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000","subscription":0,"subscription_generation":0,"operation":0}
$.session.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.session.sessionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.session.generationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.session.source_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.session.open_digestarrayyesminItems: 32; maxItems: 32
$.session.open_digest[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.session.lease_before_msintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.session.phasestringnoenum: ["open","closed","expired"]
$.session.attachmentintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.session.noncearraynominItems: 16; maxItems: 16
$.session.nonce[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.session.subscriptionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.session.subscription_generationintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.session.operationintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.sourceanyOfno
$.source (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {"published":true}
$.source (anyOf 1).revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.source (anyOf 1).targetintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.source (anyOf 1).resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.source (anyOf 1).realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.source (anyOf 1).catalogstringyespattern: "^(0|[1-9][0-9]*)$"; maxLength: 20; x-transit-encoding: "unsigned-decimal-u64"
$.source (anyOf 1).objectstringyespattern: "^(0|[1-9][0-9]*)$"; maxLength: 20; x-transit-encoding: "unsigned-decimal-u64"
$.source (anyOf 1).metadata_revisionstringyespattern: "^(0|[1-9][0-9]*)$"; maxLength: 20; x-transit-encoding: "unsigned-decimal-u64"
$.source (anyOf 1).metadata_lengthintegeryesminimum: 0; maximum: 4294967295; x-transit-bits: 32; x-transit-signed: false
$.source (anyOf 1).metadata_digestarrayyesminItems: 32; maxItems: 32
$.source (anyOf 1).metadata_digest[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.source (anyOf 1).publishedbooleanno
$.source (anyOf 2)nullyes
$.snapshotanyOfno
$.snapshot (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {"rows":[null,null,null,null,null,null,null,null],"more":false}
$.snapshot (anyOf 1).observationobjectyesadditionalProperties: false; x-transit-defaults: {}
$.snapshot (anyOf 1).observation.data_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.snapshot (anyOf 1).observation.basisobjectyesadditionalProperties: false; x-transit-defaults: {}
$.snapshot (anyOf 1).observation.basis.cutobjectyesadditionalProperties: false; x-transit-defaults: {"head":"\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000"}
$.snapshot (anyOf 1).observation.basis.cut.kindstringyesenum: ["kv","table","document"]
$.snapshot (anyOf 1).observation.basis.cut.resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.snapshot (anyOf 1).observation.basis.cut.revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.snapshot (anyOf 1).observation.basis.cut.headarraynominItems: 32; maxItems: 32
$.snapshot (anyOf 1).observation.basis.cut.head[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.snapshot (anyOf 1).observation.basis.contractarrayyesminItems: 32; maxItems: 32
$.snapshot (anyOf 1).observation.basis.contract[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.snapshot (anyOf 1).observation.basis.schemaarrayyesminItems: 32; maxItems: 32
$.snapshot (anyOf 1).observation.basis.schema[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.snapshot (anyOf 1).observation.schemaobjectyesadditionalProperties: false; x-transit-defaults: {"value_type":"int64"}
$.snapshot (anyOf 1).observation.schema.namesarrayyesminItems: 2; maxItems: 2
$.snapshot (anyOf 1).observation.schema.names[]objectyesadditionalProperties: false; x-transit-defaults: {"data":"\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000"}
$.snapshot (anyOf 1).observation.schema.names[].lenintegeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.snapshot (anyOf 1).observation.schema.names[].dataarraynominItems: 255; maxItems: 255
$.snapshot (anyOf 1).observation.schema.names[].data[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.snapshot (anyOf 1).observation.schema.value_typestringnoenum: ["int64"]
$.snapshot (anyOf 1).rowsarraynominItems: 8; maxItems: 8
$.snapshot (anyOf 1).rows[]anyOfyes
$.snapshot (anyOf 1).rows[] (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {}
$.snapshot (anyOf 1).rows[] (anyOf 1).keystringyespattern: "^(0|-[1-9][0-9]*|[1-9][0-9]*)$"; maxLength: 20; x-transit-encoding: "signed-decimal-i64"
$.snapshot (anyOf 1).rows[] (anyOf 1).valueanyOfyes
$.snapshot (anyOf 1).rows[] (anyOf 1).value (anyOf 1)stringyespattern: "^(0|-[1-9][0-9]*|[1-9][0-9]*)$"; maxLength: 20; x-transit-encoding: "signed-decimal-i64"
$.snapshot (anyOf 1).rows[] (anyOf 1).value (anyOf 2)nullyes
$.snapshot (anyOf 1).rows[] (anyOf 2)nullyes
$.snapshot (anyOf 1).morebooleanno
$.snapshot (anyOf 2)nullyes
$.eventanyOfno
$.event (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {"outcome":null}
$.event (anyOf 1).source_changedbooleanyes
$.event (anyOf 1).resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.event (anyOf 1).data_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.event (anyOf 1).outcomeanyOfno
$.event (anyOf 1).outcome (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {"diagnostic":null}
$.event (anyOf 1).outcome (anyOf 1).resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.event (anyOf 1).outcome (anyOf 1).operationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.event (anyOf 1).outcome (anyOf 1).phasestringyesenum: ["admitted","completed","cancelled","timed_out","failed"]
$.event (anyOf 1).outcome (anyOf 1).resolution_inputintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.event (anyOf 1).outcome (anyOf 1).diagnosticanyOfno
$.event (anyOf 1).outcome (anyOf 1).diagnostic (anyOf 1)Diagnosticyes
$.event (anyOf 1).outcome (anyOf 1).diagnostic (anyOf 2)nullyes
$.event (anyOf 1).outcome (anyOf 2)nullyes
$.event (anyOf 2)nullyes
$.cursoranyOfno
$.cursor (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {}
$.cursor (anyOf 1).positionobjectyesadditionalProperties: false; x-transit-defaults: {"version":1,"outcome_position":0}
$.cursor (anyOf 1).position.versionvaluenoconst: 1
$.cursor (anyOf 1).position.scopeobjectyesadditionalProperties: false; x-transit-defaults: {"subscription":0,"subscription_generation":0}
$.cursor (anyOf 1).position.scope.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.cursor (anyOf 1).position.scope.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.cursor (anyOf 1).position.scope.serviceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.cursor (anyOf 1).position.scope.ingressintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.cursor (anyOf 1).position.scope.sessionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.cursor (anyOf 1).position.scope.generationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.cursor (anyOf 1).position.scope.subscriptionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.cursor (anyOf 1).position.scope.subscription_generationintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.cursor (anyOf 1).position.watch_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.cursor (anyOf 1).position.resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.cursor (anyOf 1).position.schemaarrayyesminItems: 32; maxItems: 32
$.cursor (anyOf 1).position.schema[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.cursor (anyOf 1).position.data_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.cursor (anyOf 1).position.outcome_positionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.cursor (anyOf 1).signaturearrayyesminItems: 64; maxItems: 64
$.cursor (anyOf 1).signature[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.cursor (anyOf 2)nullyes

Bootstrap​

Field / variantTypeRequired in parentConstraints
$objectyesadditionalProperties: false; x-transit-defaults: {"version":1}
$.versionvaluenoconst: 1
$.attachobjectyesadditionalProperties: false; x-transit-defaults: {}
$.attach.requestobjectyesadditionalProperties: false; x-transit-defaults: {"version":1}
$.attach.request.versionvaluenoconst: 1
$.attach.request.definitionstringyesenum: ["c7e556954e7f6e9cf79a65abf9d082372ea626174ca7a6b4422ae25083dffc8b"]
$.attach.request.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.attach.request.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.attach.request.sequenceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.attach.request.commandobjectyesadditionalProperties: false; x-transit-defaults: {}
$.attach.request.command.sendobjectyesadditionalProperties: false; x-transit-defaults: {"role":null}
$.attach.request.command.send.pidintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.attach.request.command.send.valuestringyespattern: "^(?:[0-9a-f]{2})*$"; maxLength: 512; x-transit-encoding: "lowercase-hex"
$.attach.request.command.send.roleanyOfno
$.attach.request.command.send.role (anyOf 1)integeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.attach.request.command.send.role (anyOf 2)nullyes
$.attach.signaturearrayyesminItems: 64; maxItems: 64
$.attach.signature[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.readobjectyesadditionalProperties: false; x-transit-defaults: {}
$.read.readobjectyesadditionalProperties: false; x-transit-defaults: {"attachment":0,"nonce":"\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000","cursor":null}
$.read.read.scopeobjectyesadditionalProperties: false; x-transit-defaults: {"subscription":0,"subscription_generation":0}
$.read.read.scope.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.scope.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.scope.serviceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.scope.ingressintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.scope.sessionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.scope.generationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.scope.subscriptionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.scope.subscription_generationintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.kindstringyesenum: ["session","snapshot","events"]
$.read.read.attachmentintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.noncearraynominItems: 16; maxItems: 16
$.read.read.nonce[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.read.read.cursoranyOfno
$.read.read.cursor (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {}
$.read.read.cursor (anyOf 1).positionobjectyesadditionalProperties: false; x-transit-defaults: {"version":1,"outcome_position":0}
$.read.read.cursor (anyOf 1).position.versionvaluenoconst: 1
$.read.read.cursor (anyOf 1).position.scopeobjectyesadditionalProperties: false; x-transit-defaults: {"subscription":0,"subscription_generation":0}
$.read.read.cursor (anyOf 1).position.scope.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.cursor (anyOf 1).position.scope.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.cursor (anyOf 1).position.scope.serviceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.cursor (anyOf 1).position.scope.ingressintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.cursor (anyOf 1).position.scope.sessionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.cursor (anyOf 1).position.scope.generationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.cursor (anyOf 1).position.scope.subscriptionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.cursor (anyOf 1).position.scope.subscription_generationintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.cursor (anyOf 1).position.watch_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.cursor (anyOf 1).position.resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.cursor (anyOf 1).position.schemaarrayyesminItems: 32; maxItems: 32
$.read.read.cursor (anyOf 1).position.schema[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.read.read.cursor (anyOf 1).position.data_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.cursor (anyOf 1).position.outcome_positionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.read.read.cursor (anyOf 1).signaturearrayyesminItems: 64; maxItems: 64
$.read.read.cursor (anyOf 1).signature[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.read.read.cursor (anyOf 2)nullyes
$.read.proofSubjectProofyes

ClientMessage​

Field / variantTypeRequired in parentConstraints
$oneOfyes
$ (oneOf 1)objectyesadditionalProperties: false
$ (oneOf 1).attachobjectyesadditionalProperties: false; x-transit-defaults: {"version":1}
$ (oneOf 1).attach.versionvaluenoconst: 1
$ (oneOf 1).attach.attachobjectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 1).attach.attach.requestobjectyesadditionalProperties: false; x-transit-defaults: {"version":1}
$ (oneOf 1).attach.attach.request.versionvaluenoconst: 1
$ (oneOf 1).attach.attach.request.definitionstringyesenum: ["c7e556954e7f6e9cf79a65abf9d082372ea626174ca7a6b4422ae25083dffc8b"]
$ (oneOf 1).attach.attach.request.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.attach.request.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.attach.request.sequenceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.attach.request.commandobjectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 1).attach.attach.request.command.sendobjectyesadditionalProperties: false; x-transit-defaults: {"role":null}
$ (oneOf 1).attach.attach.request.command.send.pidintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.attach.request.command.send.valuestringyespattern: "^(?:[0-9a-f]{2})*$"; maxLength: 512; x-transit-encoding: "lowercase-hex"
$ (oneOf 1).attach.attach.request.command.send.roleanyOfno
$ (oneOf 1).attach.attach.request.command.send.role (anyOf 1)integeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.attach.request.command.send.role (anyOf 2)nullyes
$ (oneOf 1).attach.attach.signaturearrayyesminItems: 64; maxItems: 64
$ (oneOf 1).attach.attach.signature[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 1).attach.readobjectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 1).attach.read.readobjectyesadditionalProperties: false; x-transit-defaults: {"attachment":0,"nonce":"\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000","cursor":null}
$ (oneOf 1).attach.read.read.scopeobjectyesadditionalProperties: false; x-transit-defaults: {"subscription":0,"subscription_generation":0}
$ (oneOf 1).attach.read.read.scope.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.scope.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.scope.serviceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.scope.ingressintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.scope.sessionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.scope.generationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.scope.subscriptionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.scope.subscription_generationintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.kindstringyesenum: ["session","snapshot","events"]
$ (oneOf 1).attach.read.read.attachmentintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.noncearraynominItems: 16; maxItems: 16
$ (oneOf 1).attach.read.read.nonce[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 1).attach.read.read.cursoranyOfno
$ (oneOf 1).attach.read.read.cursor (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 1).attach.read.read.cursor (anyOf 1).positionobjectyesadditionalProperties: false; x-transit-defaults: {"version":1,"outcome_position":0}
$ (oneOf 1).attach.read.read.cursor (anyOf 1).position.versionvaluenoconst: 1
$ (oneOf 1).attach.read.read.cursor (anyOf 1).position.scopeobjectyesadditionalProperties: false; x-transit-defaults: {"subscription":0,"subscription_generation":0}
$ (oneOf 1).attach.read.read.cursor (anyOf 1).position.scope.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.cursor (anyOf 1).position.scope.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.cursor (anyOf 1).position.scope.serviceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.cursor (anyOf 1).position.scope.ingressintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.cursor (anyOf 1).position.scope.sessionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.cursor (anyOf 1).position.scope.generationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.cursor (anyOf 1).position.scope.subscriptionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.cursor (anyOf 1).position.scope.subscription_generationintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.cursor (anyOf 1).position.watch_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.cursor (anyOf 1).position.resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.cursor (anyOf 1).position.schemaarrayyesminItems: 32; maxItems: 32
$ (oneOf 1).attach.read.read.cursor (anyOf 1).position.schema[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 1).attach.read.read.cursor (anyOf 1).position.data_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.cursor (anyOf 1).position.outcome_positionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 1).attach.read.read.cursor (anyOf 1).signaturearrayyesminItems: 64; maxItems: 64
$ (oneOf 1).attach.read.read.cursor (anyOf 1).signature[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 1).attach.read.read.cursor (anyOf 2)nullyes
$ (oneOf 1).attach.read.proofSubjectProofyes
$ (oneOf 2)objectyesadditionalProperties: false
$ (oneOf 2).commandobjectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 2).command.requestobjectyesadditionalProperties: false; x-transit-defaults: {"version":1}
$ (oneOf 2).command.request.versionvaluenoconst: 1
$ (oneOf 2).command.request.definitionstringyesenum: ["c7e556954e7f6e9cf79a65abf9d082372ea626174ca7a6b4422ae25083dffc8b"]
$ (oneOf 2).command.request.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 2).command.request.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 2).command.request.sequenceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 2).command.request.commandobjectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 2).command.request.command.sendobjectyesadditionalProperties: false; x-transit-defaults: {"role":null}
$ (oneOf 2).command.request.command.send.pidintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 2).command.request.command.send.valuestringyespattern: "^(?:[0-9a-f]{2})*$"; maxLength: 512; x-transit-encoding: "lowercase-hex"
$ (oneOf 2).command.request.command.send.roleanyOfno
$ (oneOf 2).command.request.command.send.role (anyOf 1)integeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 2).command.request.command.send.role (anyOf 2)nullyes
$ (oneOf 2).command.signaturearrayyesminItems: 64; maxItems: 64
$ (oneOf 2).command.signature[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 3)objectyesadditionalProperties: false
$ (oneOf 3).controlobjectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 3).control.requestobjectyesadditionalProperties: false; x-transit-defaults: {"version":1}
$ (oneOf 3).control.request.versionvaluenoconst: 1
$ (oneOf 3).control.request.definitionstringyesenum: ["c7e556954e7f6e9cf79a65abf9d082372ea626174ca7a6b4422ae25083dffc8b"]
$ (oneOf 3).control.request.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 3).control.request.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 3).control.request.sequenceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 3).control.request.commandobjectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 3).control.request.command.sendobjectyesadditionalProperties: false; x-transit-defaults: {"role":null}
$ (oneOf 3).control.request.command.send.pidintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 3).control.request.command.send.valuestringyespattern: "^(?:[0-9a-f]{2})*$"; maxLength: 512; x-transit-encoding: "lowercase-hex"
$ (oneOf 3).control.request.command.send.roleanyOfno
$ (oneOf 3).control.request.command.send.role (anyOf 1)integeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 3).control.request.command.send.role (anyOf 2)nullyes
$ (oneOf 3).control.signaturearrayyesminItems: 64; maxItems: 64
$ (oneOf 3).control.signature[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 4)objectyesadditionalProperties: false
$ (oneOf 4).readobjectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 4).read.readobjectyesadditionalProperties: false; x-transit-defaults: {"attachment":0,"nonce":"\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000","cursor":null}
$ (oneOf 4).read.read.scopeobjectyesadditionalProperties: false; x-transit-defaults: {"subscription":0,"subscription_generation":0}
$ (oneOf 4).read.read.scope.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.scope.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.scope.serviceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.scope.ingressintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.scope.sessionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.scope.generationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.scope.subscriptionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.scope.subscription_generationintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.kindstringyesenum: ["session","snapshot","events"]
$ (oneOf 4).read.read.attachmentintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.noncearraynominItems: 16; maxItems: 16
$ (oneOf 4).read.read.nonce[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 4).read.read.cursoranyOfno
$ (oneOf 4).read.read.cursor (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 4).read.read.cursor (anyOf 1).positionobjectyesadditionalProperties: false; x-transit-defaults: {"version":1,"outcome_position":0}
$ (oneOf 4).read.read.cursor (anyOf 1).position.versionvaluenoconst: 1
$ (oneOf 4).read.read.cursor (anyOf 1).position.scopeobjectyesadditionalProperties: false; x-transit-defaults: {"subscription":0,"subscription_generation":0}
$ (oneOf 4).read.read.cursor (anyOf 1).position.scope.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.cursor (anyOf 1).position.scope.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.cursor (anyOf 1).position.scope.serviceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.cursor (anyOf 1).position.scope.ingressintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.cursor (anyOf 1).position.scope.sessionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.cursor (anyOf 1).position.scope.generationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.cursor (anyOf 1).position.scope.subscriptionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.cursor (anyOf 1).position.scope.subscription_generationintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.cursor (anyOf 1).position.watch_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.cursor (anyOf 1).position.resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.cursor (anyOf 1).position.schemaarrayyesminItems: 32; maxItems: 32
$ (oneOf 4).read.read.cursor (anyOf 1).position.schema[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 4).read.read.cursor (anyOf 1).position.data_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.cursor (anyOf 1).position.outcome_positionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).read.read.cursor (anyOf 1).signaturearrayyesminItems: 64; maxItems: 64
$ (oneOf 4).read.read.cursor (anyOf 1).signature[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 4).read.read.cursor (anyOf 2)nullyes
$ (oneOf 4).read.proofSubjectProofyes

ServerMessage​

Field / variantTypeRequired in parentConstraints
$oneOfyes
$ (oneOf 1)objectyesadditionalProperties: false
$ (oneOf 1).challengeobjectyesadditionalProperties: false; x-transit-defaults: {"version":1,"valid_for_ms":2000}
$ (oneOf 1).challenge.versionvaluenoconst: 1
$ (oneOf 1).challenge.noncearrayyesminItems: 16; maxItems: 16
$ (oneOf 1).challenge.nonce[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 1).challenge.valid_for_msintegernominimum: 0; maximum: 4294967295; x-transit-bits: 32; x-transit-signed: false
$ (oneOf 2)objectyesadditionalProperties: false
$ (oneOf 2).attachedobjectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 2).attached.sessionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 2).attached.generationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 2).attached.attachmentintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 3)objectyesadditionalProperties: false
$ (oneOf 3).receiptobjectyesadditionalProperties: false; x-transit-defaults: {"stage":"ingress_accepted"}
$ (oneOf 3).receipt.stagestringnoenum: ["ingress_accepted","not_observed","service_admitted","completed","cancelled","timed_out","failed","rejected"]
$ (oneOf 3).receipt.receiptobjectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 3).receipt.receipt.positionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4)objectyesadditionalProperties: false
$ (oneOf 4).observationobjectyesadditionalProperties: false; x-transit-defaults: {"version":1,"source":null,"snapshot":null,"event":null,"cursor":null}
$ (oneOf 4).observation.versionvaluenoconst: 1
$ (oneOf 4).observation.sessionobjectyesadditionalProperties: false; x-transit-defaults: {"phase":"open","attachment":0,"nonce":"\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000","subscription":0,"subscription_generation":0,"operation":0}
$ (oneOf 4).observation.session.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.session.sessionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.session.generationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.session.source_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.session.open_digestarrayyesminItems: 32; maxItems: 32
$ (oneOf 4).observation.session.open_digest[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 4).observation.session.lease_before_msintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.session.phasestringnoenum: ["open","closed","expired"]
$ (oneOf 4).observation.session.attachmentintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.session.noncearraynominItems: 16; maxItems: 16
$ (oneOf 4).observation.session.nonce[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 4).observation.session.subscriptionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.session.subscription_generationintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.session.operationintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.sourceanyOfno
$ (oneOf 4).observation.source (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {"published":true}
$ (oneOf 4).observation.source (anyOf 1).revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.source (anyOf 1).targetintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.source (anyOf 1).resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.source (anyOf 1).realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.source (anyOf 1).catalogstringyespattern: "^(0|[1-9][0-9]*)$"; maxLength: 20; x-transit-encoding: "unsigned-decimal-u64"
$ (oneOf 4).observation.source (anyOf 1).objectstringyespattern: "^(0|[1-9][0-9]*)$"; maxLength: 20; x-transit-encoding: "unsigned-decimal-u64"
$ (oneOf 4).observation.source (anyOf 1).metadata_revisionstringyespattern: "^(0|[1-9][0-9]*)$"; maxLength: 20; x-transit-encoding: "unsigned-decimal-u64"
$ (oneOf 4).observation.source (anyOf 1).metadata_lengthintegeryesminimum: 0; maximum: 4294967295; x-transit-bits: 32; x-transit-signed: false
$ (oneOf 4).observation.source (anyOf 1).metadata_digestarrayyesminItems: 32; maxItems: 32
$ (oneOf 4).observation.source (anyOf 1).metadata_digest[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 4).observation.source (anyOf 1).publishedbooleanno
$ (oneOf 4).observation.source (anyOf 2)nullyes
$ (oneOf 4).observation.snapshotanyOfno
$ (oneOf 4).observation.snapshot (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {"rows":[null,null,null,null,null,null,null,null],"more":false}
$ (oneOf 4).observation.snapshot (anyOf 1).observationobjectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 4).observation.snapshot (anyOf 1).observation.data_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.snapshot (anyOf 1).observation.basisobjectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 4).observation.snapshot (anyOf 1).observation.basis.cutobjectyesadditionalProperties: false; x-transit-defaults: {"head":"\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000"}
$ (oneOf 4).observation.snapshot (anyOf 1).observation.basis.cut.kindstringyesenum: ["kv","table","document"]
$ (oneOf 4).observation.snapshot (anyOf 1).observation.basis.cut.resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.snapshot (anyOf 1).observation.basis.cut.revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.snapshot (anyOf 1).observation.basis.cut.headarraynominItems: 32; maxItems: 32
$ (oneOf 4).observation.snapshot (anyOf 1).observation.basis.cut.head[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 4).observation.snapshot (anyOf 1).observation.basis.contractarrayyesminItems: 32; maxItems: 32
$ (oneOf 4).observation.snapshot (anyOf 1).observation.basis.contract[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 4).observation.snapshot (anyOf 1).observation.basis.schemaarrayyesminItems: 32; maxItems: 32
$ (oneOf 4).observation.snapshot (anyOf 1).observation.basis.schema[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 4).observation.snapshot (anyOf 1).observation.schemaobjectyesadditionalProperties: false; x-transit-defaults: {"value_type":"int64"}
$ (oneOf 4).observation.snapshot (anyOf 1).observation.schema.namesarrayyesminItems: 2; maxItems: 2
$ (oneOf 4).observation.snapshot (anyOf 1).observation.schema.names[]objectyesadditionalProperties: false; x-transit-defaults: {"data":"\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000"}
$ (oneOf 4).observation.snapshot (anyOf 1).observation.schema.names[].lenintegeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 4).observation.snapshot (anyOf 1).observation.schema.names[].dataarraynominItems: 255; maxItems: 255
$ (oneOf 4).observation.snapshot (anyOf 1).observation.schema.names[].data[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 4).observation.snapshot (anyOf 1).observation.schema.value_typestringnoenum: ["int64"]
$ (oneOf 4).observation.snapshot (anyOf 1).rowsarraynominItems: 8; maxItems: 8
$ (oneOf 4).observation.snapshot (anyOf 1).rows[]anyOfyes
$ (oneOf 4).observation.snapshot (anyOf 1).rows[] (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 4).observation.snapshot (anyOf 1).rows[] (anyOf 1).keystringyespattern: "^(0|-[1-9][0-9]*|[1-9][0-9]*)$"; maxLength: 20; x-transit-encoding: "signed-decimal-i64"
$ (oneOf 4).observation.snapshot (anyOf 1).rows[] (anyOf 1).valueanyOfyes
$ (oneOf 4).observation.snapshot (anyOf 1).rows[] (anyOf 1).value (anyOf 1)stringyespattern: "^(0|-[1-9][0-9]*|[1-9][0-9]*)$"; maxLength: 20; x-transit-encoding: "signed-decimal-i64"
$ (oneOf 4).observation.snapshot (anyOf 1).rows[] (anyOf 1).value (anyOf 2)nullyes
$ (oneOf 4).observation.snapshot (anyOf 1).rows[] (anyOf 2)nullyes
$ (oneOf 4).observation.snapshot (anyOf 1).morebooleanno
$ (oneOf 4).observation.snapshot (anyOf 2)nullyes
$ (oneOf 4).observation.eventanyOfno
$ (oneOf 4).observation.event (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {"outcome":null}
$ (oneOf 4).observation.event (anyOf 1).source_changedbooleanyes
$ (oneOf 4).observation.event (anyOf 1).resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.event (anyOf 1).data_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.event (anyOf 1).outcomeanyOfno
$ (oneOf 4).observation.event (anyOf 1).outcome (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {"diagnostic":null}
$ (oneOf 4).observation.event (anyOf 1).outcome (anyOf 1).resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.event (anyOf 1).outcome (anyOf 1).operationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.event (anyOf 1).outcome (anyOf 1).phasestringyesenum: ["admitted","completed","cancelled","timed_out","failed"]
$ (oneOf 4).observation.event (anyOf 1).outcome (anyOf 1).resolution_inputintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.event (anyOf 1).outcome (anyOf 1).diagnosticanyOfno
$ (oneOf 4).observation.event (anyOf 1).outcome (anyOf 1).diagnostic (anyOf 1)Diagnosticyes
$ (oneOf 4).observation.event (anyOf 1).outcome (anyOf 1).diagnostic (anyOf 2)nullyes
$ (oneOf 4).observation.event (anyOf 1).outcome (anyOf 2)nullyes
$ (oneOf 4).observation.event (anyOf 2)nullyes
$ (oneOf 4).observation.cursoranyOfno
$ (oneOf 4).observation.cursor (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 4).observation.cursor (anyOf 1).positionobjectyesadditionalProperties: false; x-transit-defaults: {"version":1,"outcome_position":0}
$ (oneOf 4).observation.cursor (anyOf 1).position.versionvaluenoconst: 1
$ (oneOf 4).observation.cursor (anyOf 1).position.scopeobjectyesadditionalProperties: false; x-transit-defaults: {"subscription":0,"subscription_generation":0}
$ (oneOf 4).observation.cursor (anyOf 1).position.scope.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.cursor (anyOf 1).position.scope.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.cursor (anyOf 1).position.scope.serviceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.cursor (anyOf 1).position.scope.ingressintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.cursor (anyOf 1).position.scope.sessionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.cursor (anyOf 1).position.scope.generationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.cursor (anyOf 1).position.scope.subscriptionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.cursor (anyOf 1).position.scope.subscription_generationintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.cursor (anyOf 1).position.watch_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.cursor (anyOf 1).position.resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.cursor (anyOf 1).position.schemaarrayyesminItems: 32; maxItems: 32
$ (oneOf 4).observation.cursor (anyOf 1).position.schema[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 4).observation.cursor (anyOf 1).position.data_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.cursor (anyOf 1).position.outcome_positionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 4).observation.cursor (anyOf 1).signaturearrayyesminItems: 64; maxItems: 64
$ (oneOf 4).observation.cursor (anyOf 1).signature[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 4).observation.cursor (anyOf 2)nullyes
$ (oneOf 5)objectyesadditionalProperties: false
$ (oneOf 5).eventobjectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 5).event.cursorobjectyesadditionalProperties: false; x-transit-defaults: {}
$ (oneOf 5).event.cursor.positionobjectyesadditionalProperties: false; x-transit-defaults: {"version":1,"outcome_position":0}
$ (oneOf 5).event.cursor.position.versionvaluenoconst: 1
$ (oneOf 5).event.cursor.position.scopeobjectyesadditionalProperties: false; x-transit-defaults: {"subscription":0,"subscription_generation":0}
$ (oneOf 5).event.cursor.position.scope.realmintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.cursor.position.scope.principalintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.cursor.position.scope.serviceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.cursor.position.scope.ingressintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.cursor.position.scope.sessionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.cursor.position.scope.generationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.cursor.position.scope.subscriptionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.cursor.position.scope.subscription_generationintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.cursor.position.watch_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.cursor.position.resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.cursor.position.schemaarrayyesminItems: 32; maxItems: 32
$ (oneOf 5).event.cursor.position.schema[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 5).event.cursor.position.data_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.cursor.position.outcome_positionintegernominimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.cursor.signaturearrayyesminItems: 64; maxItems: 64
$ (oneOf 5).event.cursor.signature[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$ (oneOf 5).event.eventobjectyesadditionalProperties: false; x-transit-defaults: {"outcome":null}
$ (oneOf 5).event.event.source_changedbooleanyes
$ (oneOf 5).event.event.resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.event.data_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.event.outcomeanyOfno
$ (oneOf 5).event.event.outcome (anyOf 1)objectyesadditionalProperties: false; x-transit-defaults: {"diagnostic":null}
$ (oneOf 5).event.event.outcome (anyOf 1).resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.event.outcome (anyOf 1).operationintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.event.outcome (anyOf 1).phasestringyesenum: ["admitted","completed","cancelled","timed_out","failed"]
$ (oneOf 5).event.event.outcome (anyOf 1).resolution_inputintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$ (oneOf 5).event.event.outcome (anyOf 1).diagnosticanyOfno
$ (oneOf 5).event.event.outcome (anyOf 1).diagnostic (anyOf 1)Diagnosticyes
$ (oneOf 5).event.event.outcome (anyOf 1).diagnostic (anyOf 2)nullyes
$ (oneOf 5).event.event.outcome (anyOf 2)nullyes
$ (oneOf 6)objectyesadditionalProperties: false
$ (oneOf 6).heartbeatobjectyesadditionalProperties: false; x-transit-defaults: {"version":1}
$ (oneOf 6).heartbeat.versionvaluenoconst: 1
$ (oneOf 7)objectyesadditionalProperties: false
$ (oneOf 7).terminalobjectyesadditionalProperties: false; x-transit-defaults: {"diagnostic":null}
$ (oneOf 7).terminal.reasonstringyesenum: ["denied","closed","expired","fenced","reset_required","interrupted","invalid_message","capacity"]
$ (oneOf 7).terminal.diagnosticanyOfno
$ (oneOf 7).terminal.diagnostic (anyOf 1)Diagnosticyes
$ (oneOf 7).terminal.diagnostic (anyOf 2)nullyes

Discovery​

Field / variantTypeRequired in parentConstraints
$objectyesadditionalProperties: false; x-transit-defaults: {"version":1,"sse":true,"websocket":true,"subprotocol":"transit.reactive.v1"}
$.versionvaluenoconst: 1
$.serviceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.ingressintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.resourceintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.binding_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.watch_revisionintegeryesminimum: 0; maximum: 9007199254740991; x-transit-bits: 64; x-transit-signed: false
$.ssebooleanno
$.websocketbooleanno
$.subprotocolstringnomaxLength: 256
$.openapi_sha256arrayyesminItems: 32; maxItems: 32
$.openapi_sha256[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false
$.asyncapi_sha256arrayyesminItems: 32; maxItems: 32
$.asyncapi_sha256[]integeryesminimum: 0; maximum: 255; x-transit-bits: 8; x-transit-signed: false

Error​

Field / variantTypeRequired in parentConstraints
$objectyesadditionalProperties: false; x-transit-defaults: {"reason":null,"diagnostic":null}
$.errstringyesenum: ["ServingRequestFailed","HttpCapacity","InvalidHttpRequest"]
$.reasonanyOfno
$.reason (anyOf 1)stringyesenum: ["denied","closed","expired","fenced","reset_required","not_found","conflict","result_not_completed","unavailable","capacity","invalid_request","internal_failure"]
$.reason (anyOf 2)nullyes
$.diagnosticanyOfno
$.diagnostic (anyOf 1)Diagnosticyes
$.diagnostic (anyOf 2)nullyes

SseItem​

Field / variantTypeRequired in parentConstraints
$objectyesadditionalProperties: false; x-transit-defaults: {"id":null}
$.eventstringyesenum: ["attached","event","heartbeat","terminal"]
$.datastringyesmaxLength: 8192; contentMediaType: "application/json"; contentSchema: {"$ref":"#/components/schemas/ServerMessage"}
$.idstringnopattern: "^(?:[0-9a-f]{2})+$"; maxLength: 512

Protocol budgets​

{
"message_bytes": 8192,
"fragments": 32,
"control_bytes": 125,
"bootstrap_ms": 2000,
"write_ms": 1000,
"revalidate_ms": 500
}