Channel REST Operations for Oracle Radio

Discover visible channels, inspect their activity, and update channel administration settings.

Listing requires radio.channel.list. Reading channel details, talk status, or connected users requires radio.channel.read; updating channel administration settings requires radio.channel.create. 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.

ParameterLocationRequirement
channelPathRequired 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.

ParameterLocationRequirement
channelPathRequired 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.

ParameterLocationRequirement
channelPathRequired 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.

Update a Channel

Operation: updateChannel. Requires radio.channel.create and applicable channel access.

PATCH /api/v1/management/channels/{channel}

Supply a JSON object containing at least one of the following fields. Omitted fields retain their saved values. The channel handle can't be changed.

FieldValue
displayNameString, up to 128 characters.
descriptionString, up to 512 characters.
maxSubscribersInteger from 1 through 99,999.
isDefaultBoolean. Set to true on the replacement channel to change the default. You can't set it to false on the current default without a replacement.

For example, this request changes a channel's display name and makes it the default:

{"displayName":"Dispatch","isDefault":true}

HTTP 200 returns the updated channel details. Default replacement occurs atomically. HTTP 409 with code default_channel_required means the update would leave the Identity Domain without a default channel; set isDefault to true on the replacement channel instead. HTTP 404 NotAuthorizedOrNotFound conceals a missing or inaccessible channel.

For the browser procedure, see Editing an Oracle Radio Channel.

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.