The single ActionCable channel Healthie exposes. A client generates its own unique
`channelId`, subscribes to `{"channel":"GraphqlChannel","channelId":""}`, then
sends the GraphQL subscription document as a stringified `data` payload on a
`message` command. All six GraphQL subscriptions below are multiplexed over this one
channel; the subscription is selected by the document, not by the channe
Send ActionCable commands to subscribe to the channel and register a GraphQL subscription.
subscribe
receiveGraphqlChannelFrames
Receive connection lifecycle frames and subscription results from Healthie.
Messages
subscribe
Registers the client-generated channel ID with the ActionCable server.
Content-Type: application/json
message
Carries the stringified GraphQL subscription document for the chosen channel ID.
Content-Type: application/json
welcome
Sent by Healthie immediately after the socket opens.
Content-Type: application/json
ping
Periodic keepalive frame carrying a Unix timestamp.
Content-Type: application/json
confirm_subscription
Subscription confirmed
Content-Type: application/json
subscription_result
A GraphQL execution result for one of the six Healthie subscriptions, wrapped in an
ActionCable message envelope. `message.result.data` carries the subscription field
named in the registered document.
Content-Type: application/json
About AsyncAPI
The AsyncAPI specification describes event-driven APIs the way OpenAPI describes request/response APIs. A channel is the named pipe — a webhook URL, a Kafka topic, a WebSocket route, an MQTT subject — that producers and consumers publish or subscribe to. Each channel carries one or more messages with structured payloads, and an operation declares whether a given party sends or receives on that channel.