--- title: "채널 설정 변경" slug: "media-livestation-channel-channelupdate" tags: ["Channel Management", "Live Station"] updated: 2026-10-13T06:07:18Z published: 2026-10-13T10:00:06Z canonical: "api.ncloud-docs.com/media-livestation-channel-channelupdate" --- > ## Documentation Index > Fetch the complete documentation index at: https://api.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # 채널 설정 변경 Classic/VPC 환경에서 이용 가능합니다. 라이브 채널의 설정을 변경합니다. ## 요청 요청 형식을 설명합니다. 요청 형식은 다음과 같습니다. | 메서드 | URI | | --- | --- | | PUT | /api/v2/channels/{channelId} | ### 요청 헤더 Live Station API에서 공통으로 사용하는 헤더에 대한 정보는 [Live Station 요청 헤더](/docs/media-livestation#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%94)를 참조해 주십시오. ### 요청 경로 파라미터 요청 경로 파라미터에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `channelId` | String | Required | 채널 아이디 - [채널 목록 조회](/docs/media-livestation-channel-channellist) 참조 | ### 요청 바디 요청 바디에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `channelName` | String | Required | 채널 이름 - 한글, 영문자, 숫자, 특수 문자 '_'를 조합하여 3~20자 이내로 입력 | | `envType` | String | Optional | 채널 타입 - `REAL` (기본값) \| `DEV` \| `STAGE` - 적용할 서비스 환경에 따른 구분자 | | `outputProtocol` | String | Optional | Output Protocol 설정 - `HLS` (기본값) \| `LL_HLS` \| `HLS,DASH` - `HLS`: 안정적이고 호환성 높은 HLS 스트리밍을 이용하기 위한 옵션 - `LL_HLS`: CMAF을 이용한 저지연 HLS 스트리밍을 위한 옵션 - `HLS,DASH`: 일반 HLS와 DASH 모두 스트리밍 가능한 옵션 - `HLS`/`HLS,DASH`와 `LL_HLS` 간 상호 전환 불가 | | `useDvr` | Boolean | Required | 타임머신 설정 여부 - `true` \| `false` - `true`: 설정 - `false`: 설정 안 함 - 설정 시 송출 중인 라이브 방송을 되돌려 볼 수 있음 | | `immediateOnAir` | Boolean | Required | 송출 즉시 자동 녹화 설정 여부 - `true` \| `false` - `true`: 자동 - `false`: 수동 | | `timemachineMin` | Integer | Conditional | 타임머신 허용 범위(분) - `360` (유효 값) - `useDvr`이 `true`인 경우, 필수 입력 | | `record` | Object | Required | 녹화 저장 정보 | | `record.format` | String | Conditional | 자동 저장 녹화 타입 - `MP4` \| `HLS` \| `ALL` - 녹화 파일 포맷 지정 - `record.type`이 `AUTO_UPLOAD`인 경우, 필수 입력 | | `record.type` | String | Required | 녹화 저장 설정 - `NO_RECORD` \| `AUTO_UPLOAD` \| `MANUAL_UPLOAD` - `NO_RECORD`: 녹화 안 함 - `AUTO_UPLOAD`: 자동 저장 - `MANUAL_UPLOAD`: 임시 저장 | | `record.bucketName` | String | Conditional | 녹화 파일 저장 버킷 이름 - [ListBuckets](/docs/storage-objectstorage-listbuckets) 참조 - `record.type`이 `AUTO_UPLOAD`인 경우, 필수 입력 | | `record.filePath` | String | Conditional | 저장 상세 경로 - `/`로 시작 - `record.type`이 `AUTO_UPLOAD`인 경우, 필수 입력 | | `record.accessControl` | String | Conditional | 녹화 파일 저장 버킷 공개 범위 - `PRIVATE` (기본값) \| `PUBLIC_READ` - `PRIVATE`: 비공개 - `PUBLIC_READ`: 공개 - `record.type`이 `AUTO_UPLOAD`인 경우, 필수 입력 | ### 요청 예시 요청 예시는 다음과 같습니다. ``` 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" } }' ``` ## 응답 응답 형식을 설명합니다. ### 응답 바디 응답 바디에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `content` | Object | - | 응답 결과 | | `content.channelId` | String | - | 채널 아이디 | | `content.channelName` | String | - | 채널 이름 | | `content.instanceNo` | Integer | - | 채널 인스턴스 번호 | | `content.qualitySetId` | Integer | - | 화질 설정 아이디 | | `content.qualitySetName` | String | - | 화질 설정 이름 | | `content.outputProtocol` | String | - | Output Protocol | | `content.ingestProtocol` | String | - | 송출(Ingest) 프로토콜 - `RTMP` \| `SRT` | | `content.channelStatus` | String | - | 채널 상태 - `CREATING` \| `READY` \| `PUBLISHING` \| `DELETED` \| `BLOCK` \| `FORCE_BLOCK` \| `FORCE_DELETED` - `CREATING`: 생성 중 - `READY`: 준비 - `PUBLISHING`: 송출 중 - `DELETED`: 반납 - `BLOCK`: 정지 - `FORCE_BLOCK`: 강제 정지 - `FORCE_DELETED`: 사용 불가 | | `content.isRecording` | Boolean | - | 녹화 여부 - `true` \| `false` - `true`: 녹화 중 - `false`: 녹화 중 아님 | | `content.useDVR` | Boolean | - | 타임머신 설정 여부 - `true` \| `false` - `true`: 설정 - `false`: 설정 안 함 | | `content.immediateOnAir` | Boolean | - | 송출 즉시 자동 녹화 설정 여부 - `true` \| `false` - `true`: 자동 - `false`: 수동 | | `content.timemachineMin` | Integer | - | 타임머신 허용 범위(분) | | `content.cdn` | Object | - | CDN 설정 | | `content.cdn.instanceNo` | String | - | CDN 인스턴스 아이디 | | `content.cdn.serviceName` | String | - | CDN 서비스 이름 | | `content.cdn.statusName` | String | - | CDN 상태 - `RUNNING` \| `PUBLISHING` \| `STOPPING` \| `STOPPED` \| `CREATING` \| `CHANGING` \| `CDN_NOT_FOUND` - `RUNNING`: 운영 중 - `PUBLISHING`: 배포 중 - `STOPPING`: 정지 중 - `STOPPED`: 정지 - `CREATING`: 생성 중 - `CHANGING`: 변경 중 - `CDN_NOT_FOUND`: CDN을 찾을 수 없음 | | `content.cdn.cdnType` | String | - | CDN 유형 - `GLOBAL_CDN` \| `GLOBAL_EDGE` | | `content.cdn.cdnDomain` | String | - | CDN 서비스 도메인 | | `content.cdn.profileId` | Integer | - | Global Edge 프로필 아이디 | | `content.cdn.regionType` | String | - | Global Edge 서비스 지역 | | `content.streamKey` | String | - | 메인 스트림 키 - RTMP 송출 시 사용 | | `content.publishUrl` | String | - | 기본 송출 URL | | `content.globalPublishUrl` | String | - | 해외 송출 URL | | `content.streamId` | String | - | 메인 스트림 아이디 - SRT 송출 시 사용 - 송출 프로토콜과 관계없이 항상 표시되며, `content.streamKey`와 동일한 값이 표시될 수 있음 | | `content.publishUrlWithIdMain` | String | - | 스트림 아이디가 포함된 메인 송출 URL | | `content.totalPublishSeconds` | Integer | - | 채널 사용 시간(초) | | `content.createdTime` | Integer | - | 채널 생성 일시(밀리초) - Unix Timestamp 형식 | | `content.alertOn` | Boolean | - | 이벤트 알람 설정 여부 - `true` \| `false` - `true`: 설정 - `false`: 설정 안 함 | | `content.recentPublishStartTime` | Integer | - | 최근 송출 시작 일시(밀리초) - Unix Timestamp 형식 - 최초 송출 전인 경우, 미표시 | | `content.alertOptions` | Object | - | 이벤트 알람 설정 | | `content.alertOptions.alertChangeStatus` | Boolean | - | 채널 상태 변경 알람 적용 여부 - `true` \| `false` - `true`: 적용 - `false`: 적용 안 함 | | `content.alertOptions.alertVodUploadFail` | Boolean | - | 녹화 파일 업로드 실패 알람 적용 여부 - `true` \| `false` - `true`: 적용 - `false`: 적용 안 함 | | `content.alertOptions.alertReStreamFail` | Boolean | - | 동시 송출 릴레이 실패 알람 적용 여부 - `true` \| `false` - `true`: 적용 - `false`: 적용 안 함 | | `content.alertOptions.reStreamFailThreshold` | Integer | - | 알람 발생 조건(기준 횟수) | | `content.alertOptions.alertStreamFailOver` | Boolean | - | 메인 스트림 전환 알람 적용 여부 - `true` \| `false` - `true`: 적용 - `false`: 적용 안 함 | | `content.callbackEndpoint` | String | - | 콜백 엔드포인트 URL - 유효 값 존재 시 표시 | | `content.envType` | String | - | 채널 타입 - `DEV` \| `STAGE` \| `REAL` | | `content.uploadPath` | String | - | 녹화 파일 업로드 경로 - `content.record.type`이 `AUTO_UPLOAD`인 경우, 표시 | | `content.record` | Object | - | 녹화 저장 정보 | | `content.record.type` | String | - | 녹화 저장 설정 - `NO_RECORD` \| `AUTO_UPLOAD` \| `MANUAL_UPLOAD` - `NO_RECORD`: 녹화 안 함 - `AUTO_UPLOAD`: 자동 저장 - `MANUAL_UPLOAD`: 임시 저장 | | `content.record.bucketName` | String | - | 녹화 파일 저장 버킷 이름 - `content.record.type`이 `AUTO_UPLOAD`인 경우, 표시 | | `content.record.filePath` | String | - | 저장 상세 경로 - `content.record.type`이 `AUTO_UPLOAD`인 경우, 표시 | | `content.record.format` | String | - | 자동 저장 녹화 타입 - `MP4` \| `HLS` \| `ALL` | | `content.record.accessControl` | String | - | 녹화 파일 저장 버킷 공개 범위 - `PRIVATE` \| `PUBLIC_READ` - `PRIVATE`: 비공개 - `PUBLIC_READ`: 공개 - `content.record.type`이 `AUTO_UPLOAD`인 경우, 표시 | | `content.origin` | Object | - | 원본 정보 | | `content.origin.originDomain` | String | - | 원본 도메인 | | `content.origin.originPath` | String | - | 원본 경로 | | `content.backupStreamKey` | String | - | 백업 스트림 키 - RTMP 송출 시 사용 - 송출 이중화 설정 시 표시 | | `content.backupStreamId` | String | - | 백업 스트림 아이디 - SRT 송출 시 사용 - `content.backupStreamKey`와 동일한 값이 표시될 수 있음 - 송출 이중화 설정 시 표시 | | `content.publishUrlWithIdBackup` | String | - | 스트림 아이디가 포함된 백업 송출 URL - 송출 이중화 설정 시 표시 | | `content.isStreamFailOver` | Boolean | - | 송출 이중화 설정 여부 - `true` \| `false` - `true`: 사용 - `false`: 사용 안 함 | | `content.drmEnabledYn` | Boolean | - | Multi DRM 사용 여부 - `true` \| `false` - `true`: 사용 - `false`: 사용 안 함 | | `content.drm` | Object | - | Multi DRM 설정 - `content.drmEnabledYn`이 `true`인 경우, 하위 정보 표시 | | `content.drm.siteId` | String | - | 사이트 아이디 | | `content.drm.contentId` | String | - | 콘텐츠 아이디 | | `content.subtitle` | Object | - | 실시간 자동 자막 설정 정보 - 실시간 자동 자막 설정 시 표시 | | `content.subtitle.secretKey` | String | - | 자막 서비스 키 | | `content.subtitle.sourceLang` | String | - | 원본 음성 언어 - `KO` \| `EN` \| `JA` | | `content.subtitle.translateToLang` | Array | - | 자막 번역 언어 목록 - `KO` \| `EN` \| `JA` | ### 응답 상태 코드 Live Station API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 [Live Station 응답 상태 코드](/docs/media-livestation#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C)를 참조해 주십시오. ### 응답 예시 응답 예시는 다음과 같습니다. ``` { "content": { "channelId": "ls-20250818******-UbUBe", "channelName": "testchannel", "instanceNo": 10******7, "qualitySetId": 3, "qualitySetName": "1080p-set", "outputProtocol": "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, "ingestProtocol": "RTMP", "streamId": "hb*****************************1", "backupStreamId": "hb*****************************************e", "publishUrlWithIdMain": "rtmp://***********.video.media.ntruss.com:8080/relay/hb*****************************1", "publishUrlWithIdBackup": "rtmp://***********.video.media.ntruss.com:8080/relay/hb*****************************************e", "subtitle": { "secretKey": "a3******************************9f", "sourceLang": "KO", "translateToLang": ["EN", "JA"] } } } ```