Available in Classic and VPC
Change the settings for a live channel.
Request
This section describes the request format. The method and URI are as follows:
Method | URI |
---|---|
PUT | /api/v2/channels/{channelId} |
Request headers
For information about the headers common to all Live Station APIs, see Live Station request headers.
Request path parameters
You can use the following path parameters with your request:
Field | Type | Required | Description |
---|---|---|---|
channelId |
String | Required | Channel ID
|
Request body
You can include the following data in the body of your request:
Field | Type | Required | Description |
---|---|---|---|
channelName |
String | Required | Channel name
|
envType |
String | Optional | Channel type
|
outputProtocol |
String | Optional | Output protocol settings
|
useDvr |
Boolean | Required | Time machine settings
|
immediateOnAir |
Boolean | Required | Whether to set up auto-recording immediately upon streaming
|
timemachineMin |
Integer | Conditional | Time Machine allowance (minute)
|
record |
Object | Required | Recording storage information |
record.format |
String | Conditional | Autosave recording type
|
record.type |
String | Required | Recording storage settings
|
record.bucketName |
String | Conditional | Recording file storage bucket name
|
record.filePath |
String | Conditional | Detailed storage path
|
record.accessControl |
String | Conditional | Recording file storage bucket disclosure scope
|
Request example
The request example is as follows:
curl --location --request PUT 'https://livestation.apigw.ntruss.com/api/v2/channels/ls-20250818******-UbUBe' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'x-ncp-region_code: KR' \
--header 'Content-Type: application/json' \
--data '{
"channelName": "testchannel",
"envType": "STAGE",
"outputProtocol": "LL_HLS",
"useDvr": true,
"immediateOnAir": true,
"timemachineMin": 360,
"record": {
"format": "MP4",
"type": "MANUAL_UPLOAD"
}
}'
Response
This section describes the response format.
Response body
The response body includes the following data:
Field | Type | Required | Description |
---|---|---|---|
content |
Object | - | Response result |
content.channelId |
String | - | Channel ID |
content.channelName |
String | - | Channel name |
content.instanceNo |
Integer | - | Channel instance number |
content.qualitySetId |
Integer | - | Image quality setting ID |
content.qualitySetName |
String | - | Image quality setting name |
content.outputProtocol |
String | - | Output Protocol |
content.channelStatus |
String | - | Channel status
|
content.isRecording |
Boolean | - | Recording status
|
content.useDVR |
Boolean | - | Time machine settings
|
content.immediateOnAir |
Boolean | - | Whether to set up auto-recording immediately upon streaming
|
content.timemachineMin |
Integer | - | Time Machine allowance (minute) |
content.cdn |
Object | - | Set up CDN. |
content.cdn.instanceNo |
String | - | CDN instance ID |
content.cdn.serviceName |
String | - | CDN service name |
content.cdn.statusName |
String | - | CDN status
|
content.cdn.cdnType |
String | - | CDN type
|
content.cdn.cdnDomain |
String | - | CDN service domain |
content.cdn.profileId |
Integer | - | Global Edge profile ID |
content.cdn.regionType |
String | - | Global Edge Service Region |
content.streamKey |
String | - | Main stream key |
content.publishUrl |
String | - | Default transmission URL |
content.globalPublishUrl |
String | - | Overseas streaming URL |
content.totalPublishSeconds |
Integer | - | Channel usage time (second) |
content.createdTime |
Integer | - | Channel creation date and time (millisecond)
|
content.alertOn |
Boolean | - | Event notification settings
|
content.recentPublishStartTime |
Integer | - | Latest streaming start date and time (millisecond)
|
content.alertOptions |
Object | - | Set event notifications. |
content.alertOptions.alertChangeStatus |
Boolean | - | Channel status change notification application
|
content.alertOptions.alertVodUploadFail |
Boolean | - | Recording file upload failure notification application
|
content.alertOptions.alertReStreamFail |
Boolean | - | Re-stream relay failure notification application
|
content.alertOptions.reStreamFailThreshold |
Integer | - | Notification condition (base count) |
content.alertOptions.alertStreamFailOver |
Boolean | - | Main stream switch notification application
|
content.callbackEndpoint |
String | - | Callback endpoint URL
|
content.envType |
String | - | Channel type
|
content.uploadPath |
String | - | Recording file upload path
|
content.record |
Object | - | Recording storage information |
content.record.type |
String | - | Recording storage settings
|
content.record.bucketName |
String | - | Recording file storage bucket name
|
content.record.filePath |
String | - | Storage detailed path
|
content.record.format |
String | - | Automatic save recording type
|
content.record.accessControl |
String | - | Recording file storage bucket disclosure scope
|
content.origin |
Object | - | Source information |
content.origin.originDomain |
String | - | Origin domain |
content.origin.originPath |
String | - | Origin path |
content.backupStreamKey |
String | - | Backup stream key
|
content.isStreamFailOver |
Boolean | - | Streaming redundancy settings
|
content.drmEnabledYn |
Boolean | - | Multi DRM usage
|
content.drm |
Object | - | Multi DRM settings
|
content.drm.siteId |
String | - | Site ID |
content.drm.contentId |
String | - | Content ID |
Response status codes
For information about the HTTP status codes common to all Live Station APIs, see Live Station response status codes.
Response example
The response example is as follows:
{
"content": {
"channelId": "ls-20250818******-UbUBe",
"channelName": "testchannel",
"instanceNo": 10******7,
"qualitySetId": 2585,
"qualitySetName": "ll-1080p-set",
"outputProtocol": "LL_HLS",
"channelStatus": "READY",
"isRecording": false,
"useDVR": true,
"immediateOnAir": true,
"timemachineMin": 360,
"cdn": {
"instanceNo": "11612",
"serviceName": "edge-ls-20250818******-UbUBe",
"statusName": "RUNNING",
"cdnType": "GLOBAL_EDGE",
"cdnDomain": "*************.edge.naverncp.com",
"profileId": 4207,
"regionType": "KOREA"
},
"streamKey": "hb*****************************1",
"publishUrl": "rtmp://***********.video.media.ntruss.com:8080/relay",
"globalPublishUrl": "rtmp://***************.video.media.ntruss.com:8080/relay",
"totalPublishSeconds": 0,
"createdTime": 1755494883000,
"alertOn": false,
"alertOptions": {
"alertChangeStatus": false,
"alertVodUploadFail": false,
"alertReStreamFail": false,
"alertStreamFailOver": false
},
"callbackEndpoint": "https://www.example.com",
"envType": "STAGE",
"record": {
"type": "MANUAL_UPLOAD",
"format": "MP4"
},
"origin": {
"originDomain": "*****.video.media.ntruss.com",
"originPath": "2*****5"
},
"backupStreamKey": "hb*****************************************e",
"isStreamFailOver": true,
"drmEnabledYn": false
}
}