--- title: "Stop channel" slug: "vodstation-channel-stop" tags: ["VOD Station"] updated: 2026-09-17T10:12:36Z published: 2026-09-17T10:12:36Z canonical: "api.ncloud-docs.com/vodstation-channel-stop" --- > ## 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. # Stop channel Available in Classic and VPC Stop a channel in the `READY` status. ## Request This section describes the request format. The method and URI are as follows: | Method | URI | | --- | --- | | PUT | /api/v2/channels/{channelId}/stop | ### Request headers For information about the headers common to all VOD Station APIs, see [VOD Station request headers](/docs/en/vodstation#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%94). ### Request path parameters You can use the following path parameters with your request: | Field | Type | Required | Description | | --- | --- | --- | --- | | `channelId` | String | Required | Channel ID - See [Get channel list](/docs/en/vodstation-channel-list). | ### Request example The request example is as follows: ``` curl --location --request PUT 'https://vodstation.apigw.ntruss.com/api/v2/channels/vs-20250821095732-*******/stop' \ --header 'x-ncp-apigw-timestamp: {Timestamp}' \ --header 'x-ncp-iam-access-key: {Access Key}' \ --header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' ``` ## 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.disabled` | Boolean | - | Whether Sub Account is disabled - `true` \| `false` - `true`: Disabled - `false`: Enabled | | `content.id` | String | - | Channel ID | | `content.name` | String | - | Channel name | | `content.channelStatus` | String | - | Channel status - `CREATING` \| `READY` \| `STOPPING` \| `STOPPED` \| `TERMINATING` \| `TERMINATED` \| `FORCE_STOPPING` \| `FORCE_STOPPED` \| `FORCETERMINATING` \| `FORCETERMINATED` - `CREATING`: Creating - `READY`: Running - `STOPPING`: Stopping - `STOPPED`: Stopped - `TERMINATING`: Deleting - `TERMINATED`: Deleted - `FORCE_STOPPING`: Force stopping - `FORCE_STOPPED`: Force stopped - `FORCETERMINATING`: Force deleting - `FORCETERMINATED`: Force deleted | | `content.storageBucketName` | String | - | Name of the bucket where the video the channel will stream is stored | | `content.segmentDuration` | Integer | - | Playback time per segment (second) | | `content.protocolList` | Array | - | List of streaming protocols - `HLS` \| `DASH` | | `content.createTime` | Integer | - | Channel creation start date and time (millisecond) - Unix timestamp format | | `content.readyTime` | Integer | - | Channel creation completion date and time (millisecond) - Unix timestamp format | | `content.cdnCreatedTime` | Integer | - | Date and time when the CDN was automatically created in integration with the channel - Unix timestamp format | | `content.stopTime` | Integer | - | Channel stop date and time (millisecond) - Unix timestamp format - Displayed if `channelStatus` is `STOPPED` (Stop completed) | | `content.playUrl` | String | - | Playback URL template via CDN | | `content.cdnStatus` | String | - | Status of the CDN integrated with the channel - If not auto-generated, displayed as `NOT_FOUND` | | `content.cdnDomain` | String | - | Auto-generated Global Edge's domain | | `content.cdnServiceName` | String | - | Auto-generated Global Edge's service name | | `content.storageBucketStatus` | String | - | Status of the Object Storage bucket integrated with the channel | | `content.originPath` | String | - | Source path of the created channel - Use when creating a separate CDN. | | `content.encryptList` | Array | - | Content protection settings information for the channel: [encryptList](/docs/en/vodstation-channel-stop#encryptList) | | `content.accessPrivateFiles` | Boolean | - | Whether to restrict access to private files in the bucket - `true` \| `false` - `true`: Restrict - `false`: Allow - Private files can also be streamed if allowed. | | `content.encryptedBucketName` | String | - | Encrypted name of the bucket integrated with the channel - Use when creating the playback URL. | | `content.segmentDurationOption` | String | - | Segmentation method settings - `BASIC` \| `VARIABLE` - `BASIC`: Create segments at regular intervals set by the `segmentDuration` setting. - `VARIABLE`: Create segments so that every segment starts with a keyframe. - If the `VARIABLE` option is selected, there is a possibility of a difference between the `segmentDuration` value and the actual generated segment playback time. | | `content.cdn` | Object | - | Auto-generated CDN (Global Edge) information | | `content.cdn.cdnType` | String | - | CDN type - `GLOBAL_EDGE` (valid value) | | `content.cdn.cdnDomain` | String | - | Auto-generated Global Edge's domain | | `content.cdn.cdnServiceName` | String | - | Auto-generated Global Edge's service name | | `content.cdn.profileId` | Integer | - | Auto-generated Global Edge's profile ID | | `content.cdn.regionType` | String | - | Auto-generated Global Edge Service Region | | `content.cdn.cdnInstanceNo` | Integer | - | Auto-generated Global Edge's instance ID | | `content.notificationUrl` | String | - | Channel (callback) URL | #### `encryptList` The following describes `encryptList`. | Field | Type | Required | Description | | --- | --- | --- | --- | | `drmContentId` | String | Optional | DRM content ID - The value is included for DRM key requests and needed for license issuing. | | `drmKeyUrl` | String | - | DRM key URL - DRM provider's CPIX API URL. - VOD Station officially supports the integration with Inka Pallyacon DRM's CPIX v1 API. | | `systemIdList` | Array | - | DRM system ID - DRM system's unique identifier | | `drmTypeCode` | Integer | Optional | DRM type - `21` \| `22` - `21`: FairPlay - `22`: Widevine/PlayReady | | `drmTypeName` | String | - | DRM type name | | `protocol` | String | - | Set protocol - `HLS` \| `DASH` - `HLS`: FairPlay/Media Encryption - `DASH`: Widevine/PlayReady | | `mediaEncryptTypeCode` | Integer | Optional | Set Media Encryption (HLS AES-128) code settings - `1` \| `2` \| `3` - `1`: AES-128 - `2`: Sample-AES - `3`: CENC | | `mediaEncryptionTypeName` | String | - | Set Media Encryption (HLS AES-128) type name - `AES-128` \| `Sample-AES` \| `CENC` | ### Response status codes For information about the HTTP status codes common to all VOD Station APIs, see [VOD Station response status codes](/docs/en/vodstation#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C). ### Response example The response example is as follows: ``` { "content": { "disabled": false, "id": "vs-20250821095732-*******", "name": "ch-media-encrypt", "channelStatus": "STOPPING", "storageBucketName": "station-000", "segmentDuration": 10, "protocolList": [ "HLS" ], "createTime": 1755737852, "readyTime": 1755758700, "cdnCreatedTime": 1755737852, "stopTime": 1755760282, "playUrl": "https://cpzplvi211650.edge.naverncp.com/[protocol]/[Object Storage Bucket(encryption name)]/[path]/[video filename]/[manifest]", "cdnStatus": "RUNNING", "cdnDomain": "cpzplvi211650.edge.naverncp.com", "cdnServiceName": "edge-vs-20250821095732-*******", "storageBucketStatus": "RUNNING", "originPath": "vs2-k1.video.media.ntruss.com/2706412/vs-20250821095732-*******", "encryptList": [ { "protocol": "HLS", "mediaEncryptTypeCode": 1 } ], "accessPrivateFiles": true, "encryptedBucketName": "*****VzPmKvIthkozoufHw__", "segmentDurationOption": "BASIC", "cdn": { "cdnType": "GLOBAL_EDGE", "cdnDomain": "cpzplvi211650.edge.naverncp.com", "cdnServiceName": "edge-vs-20250821095732-*******", "profileId": ****, "regionType": "KOREA", "cdnInstanceNo": ***** }, "notificationUrl": "https://example.com/vodstation/callback" } } ```