Getting Oracle Radio WebSocket Session Information
Send a WHO_AM_I message to get the authenticated identity and current connection-local Radio state.
Permissions and Prerequisites
The following permissions and prerequisites apply to this operation.
| Requirement | Value |
|---|---|
| Authentication | Complete the supported authentication path before sending WHO_AM_I. For a bearer-token client, wait for AUTH_SUCCESS. The response describes the identity already associated with the connection; WHO_AM_I doesn't authenticate the client. See authentication. |
| Radio permission | No operation-specific Radio permission is required. |
| Channel access | No additional channel access is required. The response reports channels joined by the current connection. |
| Session state | The WebSocket connection must be open. |
Request
Send the WHO_AM_I message as a JSON text message.
| Name | Data type | Required | Default | Constraints | Description |
|---|---|---|---|---|---|
type | string | Yes | None | Must be WHO_AM_I. | Identifies the session-information operation. |
{
"type": "WHO_AM_I"
}
Responses
The following table lists the messages the client can receive and explains their purpose.
| Message type | Kind | Description |
|---|---|---|
WHO_AM_I | Direct response | Returns the authenticated identity and state of the current connection. |
ERROR | Error | Indicates that the request could not be processed, such as when the JSON message is invalid. |
WHO_AM_I Response
The following table describes the response properties, their data types, and whether they are required.
| Name | Data type | Required | Description |
|---|---|---|---|
type | string | Yes | Response type. The value is WHO_AM_I. |
authenticated | boolean | No | Whether the connection is authenticated. |
user | string | No | Username associated with the connection. |
roles | array of strings | No | Radio roles associated with the user. |
channels | array of strings | No | Channels joined by the current connection. |
activeChannel | string | No | Currently active channel. |
hasToken | boolean | No | Whether the connection has an active talk token. |
clientIp | string | No | Client IP address observed for the connection. |
timestamp | string | No | Server date and time in ISO 8601 format. |
{
"type": "WHO_AM_I",
"authenticated": true,
"user": "dispatcher1",
"roles": ["dispatcher", "user"],
"channels": ["operations", "dispatch"],
"activeChannel": "operations",
"hasToken": false,
"clientIp": "192.0.2.25",
"timestamp": "2026-09-02T14:30:00Z"
}