Channel REST Operations for Oracle Radio
Discover visible channels and inspect channel details, talk status, and connected users.
Listing requires radio.channel.list; the other operations require radio.channel.read. Authenticate as an enabled Radio user and verify applicable channel access. Channel names and channel IDs are different values: use the returned name in the {channel} path segment. Channel handles contain up to 64 letters, numbers, hyphens, or underscores and are normalized to lowercase.
The paths below start at the managed instance origin. When using the returned serviceEndpoint, append only the portion after /api/. See the REST overview for endpoint, authentication, and request guidance.
List Channels
Operation: listChannels.
GET /api/v1/radio/channels
Discover open normal channels and channels visible under Radio's default, owner, saved-subscription, and channel-access rules. Explicitly denied channels remain concealed. Listing a channel doesn't grant permission to join, transmit, or perform another action.
No request body or query parameters are required.
Success: 200 with a channels array. Each entry includes the required channel name, channelId, subscribers, busy, mode, and owner fields.
Use the returned channel name for subsequent requests. Use the status and users operations below for current activity rather than treating catalog discovery as a live connection check.
Get Channel Details
Operation: getChannel.
GET /api/v1/radio/channels/{channel}
Inspect a channel's catalog details.
| Parameter | Location | Requirement |
|---|---|---|
channel | Path | Required channel name, encoded as one URL path segment. |
Success: 200 with channel metadata including channel, channelId, mode, owner, createdAt, isPersistent, and isDefault.
Use isPersistent when selecting a channel for a saved subscription. A successful read doesn't join a WebSocket session or grant the talk floor.
Get Talk Status
Operation: getChannelStatus.
GET /api/v1/radio/channels/{channel}/status
Inspect current talk-floor state for one channel.
| Parameter | Location | Requirement |
|---|---|---|
channel | Path | Required channel name, encoded as one URL path segment. |
Success: 200 with type, channel, mode, owner, subscriberCount, and busy. Holder and transmission fields can be absent or null.
The result is a snapshot and can change immediately. An idle result isn't permission to transmit; follow the talk-floor request and grant sequence.
Get Connected Users
Operation: getChannelUsers.
GET /api/v1/radio/channels/{channel}/users
Read the channel's current connected-user roster.
| Parameter | Location | Requirement |
|---|---|---|
channel | Path | Required channel name, encoded as one URL path segment. |
Success: 200 with channel, users, userDisplayNames, userDetails, and count.
Use this result for the current roster; use saved subscriptions for durable membership. A saved subscription doesn't establish a live WebSocket connection.
Next Steps
Save a subscription for a persistent channel, or follow Joining a Channel to join the current WebSocket connection.
For failed requests, see errors, troubleshooting, and the FAQ. A 404 NotAuthorizedOrNotFound response doesn't distinguish missing resources from authorization failures.