--- title: "카테고리 생성" slug: "vodstation-category-create" tags: ["Category", "VOD Station"] updated: 2026-09-17T09:16:48Z published: 2026-09-17T09:16:48Z canonical: "api.ncloud-docs.com/vodstation-category-create" --- > ## 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 | | --- | --- | | POST | /api/v2/category | ### 요청 헤더 VOD Station API에서 공통으로 사용하는 헤더에 대한 정보는 [VOD Station 요청 헤더](/docs/vodstation#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%94)를 참조해 주십시오. ### 요청 바디 요청 바디에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `name` | String | Required | 카테고리 이름 - `output.bucketName`에 카테고리 이름의 폴더가 자동 생성 | | `encodingOptions` | Array | Optional | 카테고리에 설정할 인코딩 옵션 - [인코딩 옵션 목록 조회](/docs/vodstation-encodingoption-list) 참조 - 템플릿 이용 시 [템플릿 조회](/docs/vodstation-encodingoption-template-list) 참조 - `encodingOptionTemplateId` 값을 입력한 경우, 해당 템플릿 아이디에 포함된 `encodingOptionId` 외 다른 아이디는 설정 불가 | | `encodingOptionTemplateId` | Integer | Optional | 인코딩 템플릿 아이디 - [템플릿 조회](/docs/vodstation-encodingoption-template-list) 참조 - 해당 템플릿 아이디에 포함된 `encodingOptionId` 값을 `encodingOptions` 값으로 설정 | | `thumbnail` | Boolean | Optional | 섬네일 추출 설정 - `true` \| `false` (기본값) - `true`: 설정 - `false`: 설정 안 함 | | `notificationUrl` | String | Optional | 콜백(Callback) URL - [카테고리 콜백 사용](/docs/vodstation-category-callback) 참조 | | `output` | Object | Required | 카테고리 출력 설정 | | `output.bucketName` | String | Required | 출력 파일을 저장할 버킷 이름 | | `output.filePath` | String | Required | 출력 파일을 저장할 상세 경로 - 영문자, 숫자, 특수문자를 조합하여 1~256자 이내로 입력 - 특수문자 '<', '>', ':', '"', '/', '', '?', '*', '%' 입력 불가 | | `output.thumbnailBucketName` | String | Optional | 섬네일 추출 파일을 저장할 버킷 이름 - 미입력 시 `output.bucketName` 설정을 따름 | | `output.thumbnailFilePath` | String | Optional | 섬네일 추출 파일을 저장할 상세 경로 - 미입력 시 `output.filePath` 설정을 따름 | | `output.accessControl` | String | Optional | 출력 파일 공개 범위 - `PUBLIC_READ` \| `PRIVATE` (기본값) - `PUBLIC_READ`: 공개 읽기 - `PRIVATE`: 비공개 | | `output.thumbnailAccessControl` | String | Optional | 추출 섬네일의 공개 범위 - `PUBLIC_READ` \| `PRIVATE` (기본값) - `PUBLIC_READ`: 공개 읽기 - `PRIVATE`: 비공개 | | `advancedOptions` | Object | Optional | 고급 설정 | | `advancedOptions.trimming` | Object | Optional | 출력 파일 트리밍(재생 구간) 설정 | | `advancedOptions.trimming.startTimeCode` | String | Required | 트리밍 시작 시점 - HH:MM:SS.S 형식 | | `advancedOptions.trimming.endTimeCode` | String | Required | 트리밍 종료 시점 - HH:MM:SS.S 형식 - `advancedOptions.trimming.startTimeCode`보다 작은 값 입력 불가 | | `advancedOptions.imageOverlay` | Object | Optional | 이미지 오버레이(삽입) 설정 | | `advancedOptions.imageOverlay.input` | Object | Required | 이미지 설정 | | `advancedOptions.imageOverlay.input.bucketName` | String | Required | 이미지가 저장되어 있는 버킷 이름 | | `advancedOptions.imageOverlay.input.filePath` | String | Required | 파일명을 포함한 이미지의 상세 경로 | | `advancedOptions.imageOverlay.position` | Object | Required | 이미지 위치 설정 | | `advancedOptions.imageOverlay.position.x` | Integer | Required | x축 위치(픽셀) | | `advancedOptions.imageOverlay.position.y` | Integer | Required | y축 위치(픽셀) | | `advancedOptions.imageOverlay.size` | Object | Required | 이미지 크기 설정 | | `advancedOptions.imageOverlay.size.width` | Integer | Required | 이미지 너비(픽셀) | | `advancedOptions.imageOverlay.size.height` | Integer | Required | 이미지 높이(픽셀) | ### 요청 예시 요청 예시는 다음과 같습니다. ``` curl --location --request POST 'https://vodstation.apigw.ntruss.com/api/v2/category' \ --header 'x-ncp-apigw-timestamp: {Timestamp}' \ --header 'x-ncp-iam-access-key: {Access Key}' \ --header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' --data '{ "name": "VOD-Category", "encodingOptions": [1, 2, 3], "encodingOptionTemplateId": 1, "thumbnail": true, "notificationUrl": "https://example.com/vodstation/callback", "output": { "bucketName": "station-000", "filePath": "/", "thumbnailBucketName": "station-000", "thumbnailFilePath": "/thumbnail", "accessControl": "PUBLIC_READ", "thumbnailAccessControl": "PUBLIC_READ" }, "advancedOptions": { "trimming": { "startTimeCode": "00:00:00.0", "endTimeCode": "00:08:00.9" }, "imageOverlay": { "input": { "bucketName": "station-000", "filePath": "/VODStation.png" }, "position": { "x": 50, "y": 50 }, "size": { "width": 50, "height": 50 } } } }' ``` ## 응답 응답 형식을 설명합니다. ### 응답 바디 응답 바디에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `content` | Object | - | 응답 결과 | | `content.disabled` | Boolean | - | Sub Account 비활성화 여부 - `true` \| `false` - `true`: 비활성 - `false`: 활성 | | `content.id` | Integer | - | 카테고리 아이디 | | `content.name` | String | - | 카테고리 이름 | | `content.thumbnail` | Boolean | - | 섬네일 추출 설정 여부 - `true` \| `false` - `true`: 추출 - `false`: 추출 안 함 | | `content.notificationUrl` | String | - | 콜백(Callback) URL | | `content.output` | Object | - | 출력 설정 정보 | | `content.output.bucketName` | String | - | 출력 파일을 저장할 버킷 이름 | | `content.output.filePath` | String | - | 출력 파일을 저장할 상세 경로 | | `content.output.accessControl` | String | - | 출력 파일 공개 범위 | | `content.output.thumbnailAccessControl` | String | - | 추출 섬네일 공개 범위 | | `content.output.thumbnailBucketName` | String | - | 추출 섬네일을 저장할 버킷 이름 | | `content.output.thumbnailFilePath` | String | - | 추출 섬네일을 저장할 상세 경로 | | `content.createTime` | Integer | - | 카테고리 생성 일시(밀리초) - Unix Timestamp 형식 | | `content.updateTime` | Integer | - | 카테고리 수정 일시(밀리초) - Unix Timestamp 형식 | | `content.status` | String | - | 카테고리 상태 - `CREATED` \| `DELETED` \| `RUNNING` - `CREATED`: 생성 완료 - `DELETED`: 삭제 완료 - `RUNNING`: 사용 중 | | `content.advancedOptions` | Object | - | 고급 설정 정보 | | `content.advancedOptions.trimming` | Object | - | 출력 파일 트리밍(재생 구간) 설정 | | `content.advancedOptions.trimming.startTimeCode` | String | - | 트리밍 시작 시점 - HH:MM:SS.S 형식 | | `content.advancedOptions.trimming.endTimeCode` | String | - | 트리밍 종료 시점 - HH:MM:SS.S 형식 | | `content.advancedOptions.imageOverlay` | Object | - | 이미지 오버레이(삽입) 설정 | | `content.advancedOptions.imageOverlay.input` | Object | - | 이미지 설정 정보 | | `content.advancedOptions.imageOverlay.input.bucketName` | String | - | 이미지가 저장되어 있는 버킷 이름 | | `content.advancedOptions.imageOverlay.input.filePath` | String | - | 파일명을 포함한 이미지의 상세 경로 | | `content.advancedOptions.imageOverlay.size` | Object | - | 이미지 크기 정보 | | `content.advancedOptions.imageOverlay.size.width` | Integer | - | 이미지 너비(픽셀) | | `content.advancedOptions.imageOverlay.size.height` | Integer | - | 이미지 높이(픽셀) | | `content.advancedOptions.imageOverlay.position` | Object | - | 삽입할 이미지 위치 설정 | | `content.advancedOptions.imageOverlay.position.x` | Integer | - | x축 위치(픽셀) | | `content.advancedOptions.imageOverlay.position.y` | Integer | - | y축 위치(픽셀) | | `content.encodingOptionTemplateId` | Integer | - | 인코딩 템플릿 아이디 | ### 응답 상태 코드 VOD Station API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 [VOD Station 응답 상태 코드](/docs/vodstation#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C)를 참조해 주십시오. ### 응답 예시 응답 예시는 다음과 같습니다. ``` { "content": { "disabled": false, "id": *****, "name": "VOD-Category", "thumbnail": true, "notificationUrl": "https://example.com/vodstation/callback", "output": { "bucketName": "station-000", "filePath": "/", "accessControl": "PUBLIC_READ", "thumbnailAccessControl": "PUBLIC_READ", "thumbnailBucketName": "station-000", "thumbnailFilePath": "/thumbnail" }, "createTime": 1755569622000, "updateTime": 1755569622000, "status": "CREATED", "advancedOptions": { "trimming": { "startTimeCode": "00:00:00.0", "endTimeCode": "00:08:00.9" }, "imageOverlay": { "input": { "bucketName": "station-000", "filePath": "/VODStation.png" }, "size": { "width": 50, "height": 50 }, "position": { "x": 50, "y": 50 } } }, "encodingOptionTemplateId": 1 } } ```