@tigrbljs/tigr-asgi-contract-artifacts
v0.3.2
Published
Canonical npm artifact package for the Tigr ASGI contract. This package ships the source artifacts that drive the downstream contract packages.
Downloads
807
Readme
@tigrbljs/tigr-asgi-contract-artifacts
Canonical npm artifact package for the Tigr ASGI contract. This package ships the source artifacts that drive the downstream contract packages.
Artifact Package Matrix
| Ecosystem | Package | Version | Path | Surface files | Notes |
| --- | --- | --- | --- | --- | --- |
| python | tigr-asgi-contract-artifacts | 0.3.2 | packages/artifacts-py | 1 | Vendored file accessors |
| npm | @tigrbljs/tigr-asgi-contract-artifacts | 0.3.2 | packages/artifacts-npm | 4 | Packaged artifact exports |
| rust | tigr_asgi_contract_artifacts_rs | 0.3.2 | packages/artifacts-rs | 1 | Embedded artifact accessors |
Artifact Inventory Matrix
| Artifact path | Category | SHA-256 |
| --- | --- | --- |
| automata.yaml | registry | 5fb86aa93259 |
| bindings.yaml | registry | fa1438b1363b |
| capabilities.yaml | registry | 389e6a905497 |
| compatibility.yaml | registry | d90c5c30ab2c |
| completion.yaml | registry | 036f6b37c6bc |
| exchanges.yaml | registry | 6c7f8728836f |
| extensions.yaml | registry | 7da670b74348 |
| families.yaml | registry | 75debe47a1e6 |
| frames.yaml | registry | 31bf50bec7ba |
| ids.yaml | registry | aec52c6b3ef7 |
| legality/binding_family.yaml | legality | d73cf6ef3095 |
| legality/binding_subevent.yaml | legality | d6935ac0f993 |
| legality/family_subevent.yaml | legality | 36fda0df963c |
| protocols.yaml | registry | b36b61b2e29a |
| schemas/automata.schema.json | schema | 651e4d388282 |
| schemas/compatibility.schema.json | schema | 309ba3093d34 |
| schemas/completion.schema.json | schema | 26e6082df0cd |
| schemas/event.schema.json | schema | ac6b7a078104 |
| schemas/extensions.schema.json | schema | 132fed861e37 |
| schemas/frames.schema.json | schema | 944448bebdff |
| schemas/jsonrpc.schema.json | schema | c885d927555d |
| schemas/pathsend.schema.json | schema | 5ded01ee80d8 |
| schemas/protocols.schema.json | schema | 2cabd7b55baa |
| schemas/scope.schema.json | schema | 2698752580f8 |
| schemas/sse.schema.json | schema | 42e060246611 |
| schemas/tls.schema.json | schema | c66e49f6031a |
| schemas/transport.schema.json | schema | 865875cec84c |
| schemas/websocket.schema.json | schema | b4e38fad362c |
| schemas/webtransport.schema.json | schema | e6f9300bfe82 |
| scope_types.yaml | registry | 620b4d20180e |
| subevents.yaml | registry | b0abf1e13da9 |
| surfaces.yaml | registry | ed9c01e2355e |
Release Matrix
| Field | Value |
| --- | --- |
| Contract name | tigr-asgi-contract |
| Contract version | 0.3.2 |
| Artifact version | 0.3.2 |
| Serde version | 1 |
| Schema draft | 2020-12 |
| Bindings | 6 |
| Families | 5 |
| Subevents | 42 |
| Scope types | 4 |
| Event types | 26 |
Scope Type Matrix
| ASGI3 scope type | Scope ext fields | Scope event types | Source |
| --- | --- | --- | --- |
| http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | scope.schema.json |
| websocket | transport, family_capabilities, websocket | websocket.connect, websocket.receive, websocket.disconnect, websocket.accept, websocket.send, websocket.close, transport.emit.complete | scope.schema.json |
| webtransport | transport, family_capabilities, webtransport | webtransport.connect, webtransport.accept, webtransport.stream.receive, webtransport.stream.send, webtransport.datagram.receive, webtransport.datagram.send, webtransport.disconnect, webtransport.close, transport.emit.complete | scope.schema.json |
| lifespan | transport, family_capabilities | - | scope.schema.json |
Capability Matrix
| Capability field | Family alignment | Meaning | Schema source |
| --- | --- | --- | --- |
| request | request | bounded unary invocation available | transport.schema.json#/$defs/familyCapabilities |
| session | session | long-lived association available | transport.schema.json#/$defs/familyCapabilities |
| message | message | discrete logical message transport available | transport.schema.json#/$defs/familyCapabilities |
| stream_in | stream | inbound stream chunks available | transport.schema.json#/$defs/familyCapabilities |
| stream_out | stream | outbound stream chunks available | transport.schema.json#/$defs/familyCapabilities |
| datagram | datagram | datagram transport available | transport.schema.json#/$defs/familyCapabilities |
Compatibility Matrix
| Compatibility field | Value | Meaning | Source |
| --- | --- | --- | --- |
| contract_name | tigr-asgi-contract | Canonical contract identifier | contract/compatibility.yaml |
| contract_version | 0.1.2 | Published contract version | contract/compatibility.yaml |
| serde_version | 1 | Serialization surface version | contract/compatibility.yaml |
| schema_draft | 2020-12 | JSON Schema draft level | contract/compatibility.yaml |
Completion Matrix
| Completion level | Meaning | Default | Source |
| --- | --- | --- | --- |
| accepted_by_runtime | send accepted by runtime/output queue | no | contract/completion.yaml |
| flushed_to_transport | send flushed to transport boundary | yes | contract/completion.yaml |
Event Matrix
| Transport event | ASGI3 scope type | Bindings | Related subevents | Meaning |
| --- | --- | --- | --- | --- |
| http.request | http | http.stream, jsonrpc, rest, sse | request.accept, request.body_in, request.chunk_in, request.close, request.open, stream.chunk_in | Inbound HTTP request unit |
| http.disconnect | http | http.stream, jsonrpc, rest, sse | request.disconnect, stream.abort | HTTP connection closed by peer or server |
| http.response.start | http | http.stream, jsonrpc, rest, sse | response.open, stream.open | HTTP response metadata start |
| http.response.body | http | http.stream, jsonrpc, rest, sse | message.out, message.replay, message.snapshot, response.body_out, response.chunk_out, response.close, stream.chunk_out, stream.close, stream.finalize, stream.flush | HTTP response body frame |
| http.response.pathsend | http | http.stream, jsonrpc, rest, sse | - | |
| websocket.connect | websocket | websocket | session.open | WebSocket connection open event |
| websocket.receive | websocket | websocket | message.decode, message.handle, message.in | Inbound WebSocket frame |
| websocket.disconnect | websocket | websocket | session.disconnect | WebSocket disconnect signal |
| websocket.accept | websocket | websocket | session.accept, session.ready | WebSocket accept handshake response |
| websocket.send | websocket | websocket | message.ack, message.nack, message.out, message.replay, message.snapshot, session.heartbeat, session.sync | Outbound WebSocket frame |
| websocket.close | websocket | websocket | session.close | WebSocket close frame |
| webtransport.connect | webtransport | webtransport | session.open | WebTransport session connect event |
| webtransport.accept | webtransport | webtransport | session.accept, session.ready | WebTransport accept event |
| webtransport.stream.receive | webtransport | webtransport | message.decode, message.handle, message.in, stream.chunk_in | Inbound WebTransport stream frame |
| webtransport.stream.send | webtransport | webtransport | message.ack, message.nack, message.out, message.replay, message.snapshot, session.heartbeat, session.sync, stream.chunk_out, stream.finalize, stream.flush, stream.open | Outbound WebTransport stream frame |
| webtransport.datagram.receive | webtransport | webtransport | datagram.handle, datagram.in, message.decode, message.handle, message.in | Inbound WebTransport datagram |
| webtransport.datagram.send | webtransport | webtransport | datagram.ack, datagram.out, message.ack, message.nack | Outbound WebTransport datagram |
| webtransport.disconnect | webtransport | webtransport | session.disconnect | WebTransport disconnect signal |
| webtransport.close | webtransport | webtransport | datagram.close, session.close, stream.abort, stream.close | WebTransport close event |
| lifespan.startup | http, websocket, webtransport | - | - | |
| lifespan.startup.complete | http, websocket, webtransport | - | - | |
| lifespan.startup.failed | http, websocket, webtransport | - | - | |
| lifespan.shutdown | http, websocket, webtransport | - | - | |
| lifespan.shutdown.complete | http, websocket, webtransport | - | - | |
| lifespan.shutdown.failed | http, websocket, webtransport | - | - | |
| transport.emit.complete | http, websocket, webtransport | http.stream, jsonrpc, rest, sse, websocket, webtransport | datagram.emit_complete, message.emit_complete, response.emit_complete, session.emit_complete, stream.emit_complete | Completion emission event |
Family Matrix
| Family | Subevent count | Required bindings | Optional bindings | Subevents |
| --- | --- | --- | --- | --- |
| request | 11 | rest, jsonrpc, http.stream, sse | - | request.open, request.body_in, request.chunk_in, request.accept, request.close, request.disconnect, response.open, response.body_out, response.chunk_out, response.close, response.emit_complete |
| session | 8 | sse, websocket, webtransport | - | session.open, session.accept, session.ready, session.heartbeat, session.sync, session.close, session.disconnect, session.emit_complete |
| message | 9 | sse, websocket | webtransport | message.in, message.decode, message.handle, message.out, message.ack, message.nack, message.replay, message.snapshot, message.emit_complete |
| stream | 8 | http.stream, sse, webtransport | rest, jsonrpc | stream.open, stream.chunk_in, stream.chunk_out, stream.flush, stream.finalize, stream.abort, stream.close, stream.emit_complete |
| datagram | 6 | webtransport | - | datagram.in, datagram.handle, datagram.out, datagram.ack, datagram.close, datagram.emit_complete |
Subevent Matrix
| Subevent | Family | Family legality | Required bindings | Optional bindings | Derived bindings | Related transport events |
| --- | --- | --- | --- | --- | --- | --- |
| request.open | request | R required | rest, jsonrpc, http.stream, sse | - | - | http.request |
| request.body_in | request | R required | rest, jsonrpc | http.stream, sse | - | http.request |
| request.chunk_in | request | R required | - | - | http.stream | http.request |
| request.accept | request | R required | - | rest, jsonrpc, http.stream, sse | - | http.request |
| request.close | request | R required | rest, jsonrpc, http.stream, sse | - | - | http.request |
| request.disconnect | request | R required | - | rest, jsonrpc, http.stream, sse | - | http.disconnect |
| response.open | request | R required | rest, jsonrpc, http.stream | sse | - | http.response.start |
| response.body_out | request | R required | rest, jsonrpc | http.stream | - | http.response.body |
| response.chunk_out | request | R required | - | - | http.stream, sse | http.response.body |
| response.close | request | R required | - | rest, jsonrpc, http.stream, sse | - | http.response.body |
| response.emit_complete | request | R required | rest, jsonrpc, http.stream, sse | - | - | transport.emit.complete |
| session.open | session | R required | sse, websocket, webtransport | - | - | websocket.connect, webtransport.connect |
| session.accept | session | R required | sse, websocket, webtransport | - | - | websocket.accept, webtransport.accept |
| session.ready | session | R required | sse, websocket, webtransport | - | - | websocket.accept, webtransport.accept |
| session.heartbeat | session | R required | - | sse, websocket, webtransport | - | websocket.send, webtransport.stream.send |
| session.sync | session | R required | - | sse, websocket, webtransport | - | websocket.send, webtransport.stream.send |
| session.close | session | R required | sse, websocket, webtransport | - | - | websocket.close, webtransport.close |
| session.disconnect | session | R required | - | sse, websocket, webtransport | - | websocket.disconnect, webtransport.disconnect |
| session.emit_complete | session | R required | - | sse, websocket, webtransport | - | transport.emit.complete |
| message.in | message | R required | websocket | webtransport | - | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| message.decode | message | R required | - | websocket, webtransport | jsonrpc | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| message.handle | message | R required | websocket | webtransport | - | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| message.out | message | R required | sse, websocket | webtransport | - | websocket.send, webtransport.stream.send, http.response.body |
| message.ack | message | R required | - | websocket, webtransport | - | websocket.send, webtransport.stream.send, webtransport.datagram.send |
| message.nack | message | R required | - | websocket, webtransport | - | websocket.send, webtransport.stream.send, webtransport.datagram.send |
| message.replay | message | R required | - | sse, websocket, webtransport | - | websocket.send, webtransport.stream.send, http.response.body |
| message.snapshot | message | R required | - | sse, websocket, webtransport | - | websocket.send, webtransport.stream.send, http.response.body |
| message.emit_complete | message | R required | sse, websocket | webtransport | - | transport.emit.complete |
| stream.open | stream | R required | http.stream, sse, webtransport | rest, jsonrpc | - | webtransport.stream.send, http.response.start |
| stream.chunk_in | stream | R required | http.stream, webtransport | rest, jsonrpc | - | webtransport.stream.receive, http.request |
| stream.chunk_out | stream | R required | http.stream, sse, webtransport | rest, jsonrpc | - | webtransport.stream.send, http.response.body |
| stream.flush | stream | R required | - | http.stream, sse, webtransport | - | webtransport.stream.send, http.response.body |
| stream.finalize | stream | R required | http.stream, webtransport | rest, jsonrpc, sse | - | webtransport.stream.send, http.response.body |
| stream.abort | stream | R required | - | http.stream, sse, webtransport | - | webtransport.close, http.disconnect |
| stream.close | stream | R required | http.stream, sse, webtransport | rest, jsonrpc | - | webtransport.close, http.response.body |
| stream.emit_complete | stream | R required | http.stream, sse, webtransport | rest, jsonrpc | - | transport.emit.complete |
| datagram.in | datagram | R required | webtransport | - | - | webtransport.datagram.receive |
| datagram.handle | datagram | R required | webtransport | - | - | webtransport.datagram.receive |
| datagram.out | datagram | R required | webtransport | - | - | webtransport.datagram.send |
| datagram.ack | datagram | R required | - | webtransport | - | webtransport.datagram.send |
| datagram.close | datagram | R required | webtransport | - | - | webtransport.close |
| datagram.emit_complete | datagram | R required | webtransport | - | - | transport.emit.complete |
Binding Subevent Matrix
Every row is a concrete binding x subevent record sourced from the legality registries.
| Binding | Protocols | Exchange | ASGI3 scope type | Scope ext fields | Scope event types | Required families | Optional families | Subevent | Family | Family legality | Binding legality | Related transport events |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.open | request | R required | R required | http.request |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.body_in | request | R required | R required | http.request |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.chunk_in | request | R required | F forbidden | http.request |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.accept | request | R required | O optional | http.request |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.close | request | R required | R required | http.request |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.disconnect | request | R required | O optional | http.disconnect |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.open | request | R required | R required | http.response.start |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.body_out | request | R required | R required | http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.chunk_out | request | R required | F forbidden | http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.close | request | R required | O optional | http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.emit_complete | request | R required | R required | transport.emit.complete |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.open | session | R required | F forbidden | websocket.connect, webtransport.connect |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.accept | session | R required | F forbidden | websocket.accept, webtransport.accept |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.ready | session | R required | F forbidden | websocket.accept, webtransport.accept |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.heartbeat | session | R required | F forbidden | websocket.send, webtransport.stream.send |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.sync | session | R required | F forbidden | websocket.send, webtransport.stream.send |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.close | session | R required | F forbidden | websocket.close, webtransport.close |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.disconnect | session | R required | F forbidden | websocket.disconnect, webtransport.disconnect |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.emit_complete | session | R required | F forbidden | transport.emit.complete |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.in | message | R required | F forbidden | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.decode | message | R required | F forbidden | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.handle | message | R required | F forbidden | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.out | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.ack | message | R required | F forbidden | websocket.send, webtransport.stream.send, webtransport.datagram.send |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.nack | message | R required | F forbidden | websocket.send, webtransport.stream.send, webtransport.datagram.send |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.replay | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.snapshot | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.emit_complete | message | R required | F forbidden | transport.emit.complete |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.open | stream | R required | O optional | webtransport.stream.send, http.response.start |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.chunk_in | stream | R required | O optional | webtransport.stream.receive, http.request |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.chunk_out | stream | R required | O optional | webtransport.stream.send, http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.flush | stream | R required | F forbidden | webtransport.stream.send, http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.finalize | stream | R required | O optional | webtransport.stream.send, http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.abort | stream | R required | F forbidden | webtransport.close, http.disconnect |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.close | stream | R required | O optional | webtransport.close, http.response.body |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.emit_complete | stream | R required | O optional | transport.emit.complete |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.in | datagram | R required | F forbidden | webtransport.datagram.receive |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.handle | datagram | R required | F forbidden | webtransport.datagram.receive |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.out | datagram | R required | F forbidden | webtransport.datagram.send |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.ack | datagram | R required | F forbidden | webtransport.datagram.send |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.close | datagram | R required | F forbidden | webtransport.close |
| rest | http.rest, https.rest | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.emit_complete | datagram | R required | F forbidden | transport.emit.complete |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.open | request | R required | R required | http.request |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.body_in | request | R required | R required | http.request |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.chunk_in | request | R required | F forbidden | http.request |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.accept | request | R required | O optional | http.request |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.close | request | R required | R required | http.request |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | request.disconnect | request | R required | O optional | http.disconnect |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.open | request | R required | R required | http.response.start |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.body_out | request | R required | R required | http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.chunk_out | request | R required | F forbidden | http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.close | request | R required | O optional | http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | response.emit_complete | request | R required | R required | transport.emit.complete |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.open | session | R required | F forbidden | websocket.connect, webtransport.connect |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.accept | session | R required | F forbidden | websocket.accept, webtransport.accept |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.ready | session | R required | F forbidden | websocket.accept, webtransport.accept |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.heartbeat | session | R required | F forbidden | websocket.send, webtransport.stream.send |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.sync | session | R required | F forbidden | websocket.send, webtransport.stream.send |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.close | session | R required | F forbidden | websocket.close, webtransport.close |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.disconnect | session | R required | F forbidden | websocket.disconnect, webtransport.disconnect |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | session.emit_complete | session | R required | F forbidden | transport.emit.complete |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.in | message | R required | F forbidden | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.decode | message | R required | D derived | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.handle | message | R required | F forbidden | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.out | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.ack | message | R required | F forbidden | websocket.send, webtransport.stream.send, webtransport.datagram.send |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.nack | message | R required | F forbidden | websocket.send, webtransport.stream.send, webtransport.datagram.send |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.replay | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.snapshot | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | message.emit_complete | message | R required | F forbidden | transport.emit.complete |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.open | stream | R required | O optional | webtransport.stream.send, http.response.start |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.chunk_in | stream | R required | O optional | webtransport.stream.receive, http.request |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.chunk_out | stream | R required | O optional | webtransport.stream.send, http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.flush | stream | R required | F forbidden | webtransport.stream.send, http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.finalize | stream | R required | O optional | webtransport.stream.send, http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.abort | stream | R required | F forbidden | webtransport.close, http.disconnect |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.close | stream | R required | O optional | webtransport.close, http.response.body |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | stream.emit_complete | stream | R required | O optional | transport.emit.complete |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.in | datagram | R required | F forbidden | webtransport.datagram.receive |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.handle | datagram | R required | F forbidden | webtransport.datagram.receive |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.out | datagram | R required | F forbidden | webtransport.datagram.send |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.ack | datagram | R required | F forbidden | webtransport.datagram.send |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.close | datagram | R required | F forbidden | webtransport.close |
| jsonrpc | http.jsonrpc, https.jsonrpc | unary | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request | stream | datagram.emit_complete | datagram | R required | F forbidden | transport.emit.complete |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | request.open | request | R required | R required | http.request |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | request.body_in | request | R required | O optional | http.request |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | request.chunk_in | request | R required | D derived | http.request |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | request.accept | request | R required | O optional | http.request |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | request.close | request | R required | R required | http.request |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | request.disconnect | request | R required | O optional | http.disconnect |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | response.open | request | R required | R required | http.response.start |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | response.body_out | request | R required | O optional | http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | response.chunk_out | request | R required | D derived | http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | response.close | request | R required | O optional | http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | response.emit_complete | request | R required | R required | transport.emit.complete |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | session.open | session | R required | F forbidden | websocket.connect, webtransport.connect |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | session.accept | session | R required | F forbidden | websocket.accept, webtransport.accept |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | session.ready | session | R required | F forbidden | websocket.accept, webtransport.accept |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | session.heartbeat | session | R required | F forbidden | websocket.send, webtransport.stream.send |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | session.sync | session | R required | F forbidden | websocket.send, webtransport.stream.send |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | session.close | session | R required | F forbidden | websocket.close, webtransport.close |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | session.disconnect | session | R required | F forbidden | websocket.disconnect, webtransport.disconnect |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | session.emit_complete | session | R required | F forbidden | transport.emit.complete |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.in | message | R required | F forbidden | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.decode | message | R required | F forbidden | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.handle | message | R required | F forbidden | websocket.receive, webtransport.stream.receive, webtransport.datagram.receive |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.out | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.ack | message | R required | F forbidden | websocket.send, webtransport.stream.send, webtransport.datagram.send |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.nack | message | R required | F forbidden | websocket.send, webtransport.stream.send, webtransport.datagram.send |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.replay | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.snapshot | message | R required | F forbidden | websocket.send, webtransport.stream.send, http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | message.emit_complete | message | R required | F forbidden | transport.emit.complete |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | stream.open | stream | R required | R required | webtransport.stream.send, http.response.start |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | stream.chunk_in | stream | R required | R required | webtransport.stream.receive, http.request |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | stream.chunk_out | stream | R required | R required | webtransport.stream.send, http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | stream.flush | stream | R required | O optional | webtransport.stream.send, http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | stream.finalize | stream | R required | R required | webtransport.stream.send, http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | stream.abort | stream | R required | O optional | webtransport.close, http.disconnect |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | stream.close | stream | R required | R required | webtransport.close, http.response.body |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | stream.emit_complete | stream | R required | R required | transport.emit.complete |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | datagram.in | datagram | R required | F forbidden | webtransport.datagram.receive |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | datagram.handle | datagram | R required | F forbidden | webtransport.datagram.receive |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | datagram.out | datagram | R required | F forbidden | webtransport.datagram.send |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | datagram.ack | datagram | R required | F forbidden | webtransport.datagram.send |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | datagram.close | datagram | R required | F forbidden | webtransport.close |
| http.stream | http.stream, https.stream | server_stream | http | transport, family_capabilities | http.request, http.disconnect, http.response.start, http.response.body, transport.emit.complete | request, stream | - | datagram.emit_complete | datagram | R required | F forbidden | transport.emit.complete |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | request.open | request | R required | R required | http.request |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | request.body_in | request | R required | O optional | http.request |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | request.chunk_in | request | R required | F forbidden | http.request |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | request.accept | request | R required | O optional | http.request |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | request.close | request | R required | R required | http.request |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | request.disconnect | request | R required | O optional | http.disconnect |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | response.open | request | R required | O optional | http.response.start |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | response.body_out | request | R required | F forbidden | http.response.body |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | response.chunk_out | request | R required | D derived | http.response.body |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | response.close | request | R required | O optional | http.response.body |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | response.emit_complete | request | R required | R required | transport.emit.complete |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | session.open | session | R required | R required | websocket.connect, webtransport.connect |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | session.accept | session | R required | R required | websocket.accept, webtransport.accept |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | session.ready | session | R required | R required | websocket.accept, webtransport.accept |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | session.heartbeat | session | R required | O optional | websocket.send, webtransport.stream.send |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | session.sync | session | R required | O optional | websocket.send, webtransport.stream.send |
| sse | http.sse, https.sse | server_stream | http | transport, family_capabilities, sse | http.disconnect, http.request, http.response.body, http.response.start, transport.emit.complete | request, session, message, stream | - | `session.cl
