카테고리 생성

Prev Next

Classic/VPC 환경에서 이용 가능합니다.

카테고리를 생성합니다. 영상 파일 인코딩은 카테고리를 생성한 후 원본 파일을 추가하여 진행할 수 있습니다.

요청

요청 형식을 설명합니다. 요청 형식은 다음과 같습니다.

메서드 URI
POST /api/v2/category

요청 헤더

VOD Station API에서 공통으로 사용하는 헤더에 대한 정보는 VOD Station 요청 헤더를 참조해 주십시오.

요청 바디

요청 바디에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
name String Required 카테고리 이름
  • output.bucketName에 카테고리 이름의 폴더가 자동 생성
encodingOptions Array Optional 카테고리에 설정할 인코딩 옵션
encodingOptionTemplateId Integer Optional 인코딩 템플릿 아이디
  • 템플릿 조회 참조
  • 해당 템플릿 아이디에 포함된 encodingOptionId 값을 encodingOptions 값으로 설정
thumbnail Boolean Optional 섬네일 추출 설정
  • true | false (기본값)
    • true: 설정
    • false: 설정 안 함
notificationUrl String Optional 콜백(Callback) URL
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 응답 상태 코드를 참조해 주십시오.

응답 예시

응답 예시는 다음과 같습니다.

{
    "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
    }
}