트랜스코딩 & 패키징 API 가이드
본 문서는 HTTP API를 통해 PallyCon 트랜스코딩 & 패키징 서비스를 사용하는 방법을 안내합니다.
동영상 튜토리얼
API 공통 규격
본 문서에 명시된 모든 API에는 아래와 같은 공통 규격이 적용됩니다.
API 인증 토큰
T&P API 호출 시 아래 과정을 통해 생성한 인증 토큰을 설정해야 합니다.
1단계: Base64 인코딩된 인증 매개변수 생성
- 웹 브라우저로 PallyCon 데브콘솔의 Base64 Enc/Dec 페이지에 접속합니다.
Encrypt
옵션이 선택된 상태에서AccountID:AccessKey
형태의 값을 왼쪽 필드에 입력합니다.- 아래 스크린샷 이미지와 같이 Base64 인코딩된 값이 화면 오른쪽에 출력됩니다.
- 다음 단계에서 사용을 위해 출력된 값을 복사해둡니다.
AccountID
와AccessKey
값은 각각 PallyCon 서비스 가입 시 입력한 계정 ID와 가입 후 콘솔에 표시되는 엑세스 키를 입력해야 합니다.
2단계: 인코딩된 매개변수를 이용해 인증 토큰 생성
1단계에서 생성한 Base64 인코딩 결과 값을 아래 토큰 API 요청의 Authorization
헤더에 설정해 API를 호출합니다.
- URL: https://tnp.pallycon.com/api/token/{siteId}
- Method: GET
경로 매개변수
매개변수 | 유형 | 설명 |
---|---|---|
siteId | 네자리 영숫자 | 콘솔에 표시되는 PallyCon 사이트 ID |
요청 헤더
헤더 명 | 설명 |
---|---|
Authorization | 기본 인증 : Basic base64encode(userId:accessKey) |
요청 예제
GET /api/token/DEMO HTTP/1.1
Authorization: basic authInfo
Host: tnp.pallycon.com
응답 데이터 필드
필드 | 유형 | 값 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
data.token | String | API 인증 토큰 |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 112
{
"error_code" : "0000",
"error_message" : "Success.",
"data" : {
"token" : "Bearer valid-token"
}
}
API 요청 헤더
Authorization 헤더에 토큰 API를 통해 발급된 데이터를 설정하여 T&P API를 호출할 수 있습니다.
공통 응답 규격
응답 상태
HTTP 상태 코드 | 설명 |
---|---|
200 | 성공 |
401 | JWT 토큰 규격이 잘못 되었거나 사용자 정보를 찾을 수 없습니다. |
403 | API 이용 권한이 없습니다. |
응답 데이터 필드
키 | 유형 | 값 |
---|---|---|
error_code | String | 0000: 성공 / 실패 시 해당 에러코드 |
error_message | String | 에러 메시지 |
data | Json | API 수행 결과 |
리전 코드
T&P API 중 일부는 다음과 같은 리전 코드를 요청 및 응답 데이터에 사용합니다.
리전 코드 | 리전 명 | AWS 리전 코드 |
---|---|---|
RG004 |
Oregon | us-west-2 |
RG011 |
Seoul | ap-northeast-2 |
RG013 |
Singapore | ap-southeast-1 |
TNP 연동 정보 API
연동 정보 조회
TNP 연동과 관련된 정보를 조회하는 API 입니다.
- URL: https://tnp.pallycon.com/api/setting/{siteId}
- Method: GET
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | 콘솔에 표시되는 PallyCon 사이트 ID |
요청 예제
GET /api/setting/DEMO HTTP/1.1
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Host: tnp.api.com
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
data | Object | 연동 관련 정보 |
data.site_id | String | 사이트 ID |
data.region | String | TNP packaging 을 진행할 리전의 리전코드 |
data.service_status | String | TNP 사용 여부(SE000:사용중, SE001: 미사용) |
data.trial_pack_cnt | Number | 트라이얼인 경우 패키징한 횟수 |
data.site_key | String | 서비스 사이트 연동 과정에 필요한 암호화 키 (콘솔 ‘사이트 설정’ 페이지에서 확인) |
data.access_key | String | 패키져, 라이선스 토큰 등 추가적 연동 보안에 사용되는 키 (콘솔 ‘사이트 설정’ 페이지에서 확인) |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 230
{
"error_code" : "0000",
"error_message" : "Success.",
"data" : {
"site_id" : "DEMO",
"region" : "RG011",
"service_status" : "SE000",
"trial_pack_cnt" : 0,
"site_key" : null,
"access_key" : null
}
}
연동 정보 수정
TNP 연동과 관련된 정보를 수정하는 API 입니다.
- URL: https://tnp.pallycon.com/api/setting/{siteId}
- Method: PUT
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | 콘솔에 표시되는 PallyCon 사이트 ID |
요청 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
site_id | 콘솔에 표시되는 PallyCon 사이트 ID | |
region | String | TNP packaging 을 진행할 리전의 리전코드 |
요청 예제
PUT /api/setting/DEMO HTTP/1.1
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Content-Length: 76
Host: tnp.api.com
{
"site_id" : "DEMO",
"region" : "RG004"
}
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
data | Object | 연동 관련 정보 |
data.site_id | String | 사이트 ID |
data.region | String | TNP packaging 을 진행할 리전의 리전코드 |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 156
{
"error_code" : "0000",
"error_message" : "Success.",
"data" : {
"site_id" : "DEMO",
"region" : "RG004"
}
}
작업 API
작업 생성
트랜스코딩 & 패키징 작업을 생성하는 API입니다.
- URL: https://tnp.pallycon.com/api/job/{siteId}
- Method: POST
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | 콘솔에 표시되는 PallyCon 사이트 ID (네 자리 영숫자) |
요청 데이터 필드
필드 | 유형 | 필수 여부 | 설명 |
---|---|---|---|
job_name | String | Yes | 작업명 |
content_id | String | Yes | 콘텐트 ID |
input | Object | Yes | 입력 콘텐트 정보 |
input.storage_id | String | Yes | 입력 스토리지 ID |
input.files | Array | Yes | 입력 파일 정보 |
input.files.[].file_type | String | Yes | 파일 유형 : multi, video, audio - multi : 입력 파일의 비디오와 오디오 트랙 이용. 오디오 트랙 정보가 포함된 파일이어야 합니다. - video : 입력파일의 비디오 트랙을 이용. 오디오 트랙 정보는 사용되지 않음. multi 와 video 유형은 하나의 작업에 함께 사용될 수 없습니다. - audio : 입력 파일의 오디오 트랙을 이용. 오디오 트랙 정보가 포함된 파일이어야 합니다. |
input.files.[].file_path | String | Yes | 입력 파일 경로 |
input.files.[].audios | Array | 오디오 정보(파일 타입이 multi 혹은 audio 인 경우 작성 필요.) |
|
input.files.[].audios.[].in | Object | Yes | 입력 오디오 트랙 |
input.files.[].audios.[].in.track | Number | 입력 오디오 트랙 인덱스. 기본값: 0 | |
input.files.[].audios.[].remap | Object | Yes | 오디오 트랙 매핑(Remapping) |
input.files.[].audios.[].remap.track | Number | 매핑된 오디오 트랙 인덱스. 기본값: 0 | |
input.subtitles | Array | 자막 정보 | |
input.subtitles.[].file_path | String | Yes | 자막 파일 경로 |
input.subtitles.[].language | String | Yes | 자막 언어 |
output | Object | Yes | 출력 태스크 정보 |
output.storage_id | String | Yes | 출력 스토리지 ID |
output.path | String | Yes | 출력 폴더 경로 |
output.default_language | String | 오디오 트랙 기본 언어 코드 | |
output.transcodings | Array | Yes | 트랜스코딩 정보 |
output.transcodings.[].track_id | String | Yes | 트랙 ID |
output.transcodings.[].track_type | String | Yes | 트랙 유형 : video, audio |
output.transcodings.[].track_name | String | 트랙 명 : audio | |
output.transcodings.[].codec | String | Yes | 비디오/오디오 코덱 이름 (video: h264, h265. audio: aac, aac_lc,ac3,eac3 & heaac_v2) 오디오 코덱의 경우, source file(input file)의 오디오 코덱 정보와 동일해야 합니다. |
output.transcodings.[].height | Number | Yes | 영상 높이 |
output.transcodings.[].width | Number | Yes | 영상 너비 |
output.transcodings.[].bitrate_mode | String | 비트레이트 모드 (cbr, vbr) | |
output.transcodings.[].bitrate | Number | Yes | 비트레이트 (cbr). |
output.transcodings.[].min_bitrate | Number | 최소 비트레이트 (bps). VBR용. | |
output.transcodings.[].max_bitrate | Number | 최대 비트레이트 (bps). VBR용. | |
output.transcodings.[].crf | Number | bitrate 관련 옵션 - vbr 인 경우, bitrate 혹은 crf 값(0~63)을 정해주어야 합니다. | |
output.transcodings.[].bandwidth | Number | 영상 대역폭 | |
output.transcodings.[].sample_rate | Number | 오디오 샘플링 레이트 | |
output.transcodings.[].language | String | 오디오 트랙 언어 코드(ISO 639-1, 두자리 영문 소문자) | |
output.transcodings.[].sources | Array | 매핑된 오디오 트랙 목록 | |
output.transcodings.[].sources.[].track | Number | 매핑된 오디오 트랙 인덱스 | |
output.packaging | Object | Yes | 패키징 정보 |
output.packaging.dash | Boolean | DASH 패키징 출력 여부. dash, hls, cmaf 중에 한가지 타입은 필수 입니다. 설정 시 cmaf 은 false 가 되어야 합니다. | |
output.packaging.hls | Boolean | HLS 패키징 출력 여부. dash, hls, cmaf 중에 한가지 타입은 필수 입니다. 설정 시 cmaf 은 false 가 되어야 합니다. | |
output.packaging.cmaf | Boolean | CMAF 패키징 출력 여부. dash, hls, cmaf 중에 한가지 타입은 필수 입니다. 설정 시 dash, hls 는 false 가 되어야 합니다. | |
output.packaging.option | Object | 패키징 옵션 | |
output.packaging.option.min_buffer_time | Number | MPD Representation data rate의 정의에 사용되는 공통 기간을 초 단위로 지정합니다. 최소값: 2 | |
output.packaging.option.enable_average_bandwidth_mpd | Boolean | MPD의 각 트랙에 대해 평균 대역폭을 사용합니다. (기본값: false) | |
Boolean | Deprecated 이 매개변수를 사용하여 출력 자막 형식을 Embedded MP4로 설정할 수 있습니다. 파라미터를 생략하면 기본적으로 Text VTT 형식의 자막이 생성됩니다. (기본값: false) |
||
output.packaging.option.subtitle_format.dash | String | 출력 자막 형식(text_vtt, mp4_ttml, mp4_vtt)을 설정할 수 있습니다. 작업 생성시 DASH 패키징 출력을 요청한다면 넣을 수 있는 옵션 값입니다. (기본값: text_vtt) | |
output.packaging.option.subtitle_format.hls | String | 출력 자막 형식(text_vtt, mp4_ttml, mp4_vtt)을 설정할 수 있습니다. 작업 생성시 HLS 패키징 출력을 요청한다면 넣을 수 있는 옵션 값입니다. (기본값: text_vtt) | |
output.packaging.option.subtitle_format.cmaf | String | 출력 자막 형식(text_vtt, mp4_ttml)을 설정할 수 있습니다. 작업 생성시 CMAF 패키징 출력을 요청한다면 넣을 수 있는 옵션 값입니다. (기본값: text_vtt) | |
output.drm | Object | DRM 정보 | |
output.drm.enabled | Boolean | DRM 암호화 적용 여부. 기본값: false | |
output.drm.option | Object | DRM 옵션 | |
output.drm.option.multi_key | Boolean | 멀티키 패키징 적용 여부. 기본값: false | |
output.drm.option.max_sd_height | Number | SD 트랙으로 패키징될 최대 해상도. 기본값: 480 | |
output.drm.option.max_hd_height | Number | HD 트랙으로 패키징될 최대 해상도. 기본값: 1080 | |
output.drm.option.max_uhd1_height | Number | UHD 트랙으로 패키징될 최대 해상도. 기본값: 2160 | |
output.drm.option.skip_audio_encryption | Boolean | 오디오 트랙 암호화 제외 여부. 기본값: false(오디오 암호화) | |
output.drm.option.clear_lead | Number | 영상 초반에 암호화 비활성화 구간을 적용 (초 단위). 기본값: 0 | |
output.drm.option.generate_tracktype_manifests | Boolean | 멀티키 패키징 시 트랙별 매니페스트(플레이리스트) 파일 생성. SD부터 UHD 트랙까지 포함된 어댑티브 스트림의 경우, SD_ONLY , SD_HD , SD_UHD 세 가지 매니페스트가 생성됨. 기본값: false |
|
output.forensic_watermarking | Object | 포렌식 워터마킹 정보 | |
output.forensic_watermarking.enabled | Boolean | 포렌식 워터마킹 적용 여부. 기본값: false | |
output.job_noti_id | String | TNP 작업 상태 업데이트를 위해 알림 ID를 사용 | |
요청 예제 |
POST /api/job/DEMO HTTP/1.1
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Content-Length: 1541
Host: tnp.pallycon.com
{
"job_name" : "jobName",
"content_id" : "test-cid",
"input" : {
"storage_id" : "input-storage-id",
"files" : [ {
"file_type" : "multi",
"file_path" : "input/input-file1.mp4",
"audios" : [ {
"in" : {
"track" : 0
},
"remap" : {
"track" : 0
}
} ]
} ],
"subtitles" : [ {
"file_path" : "input/subtitle/en.vtt",
"language" : "eng"
} ]
},
"output" : {
"storage_id" : "output-storage-id",
"path" : "output",
"transcodings" : [ {
"track_id" : "video1",
"track_type" : "video",
"codec" : "h264",
"height" : 1080,
"width" : 1920,
"bitrate_mode" : "cbr",
"bitrate" : 10000,
"frame_rate" : 23.98
}, {
"track_id" : "audio1",
"track_type" : "audio",
"track_name" : "english",
"codec" : "h264",
"bitrate_mode" : "cbr",
"bitrate" : 128000,
"language" : "en",
"sources" : [ {
"track" : 0
} ]
} ],
"packaging" : {
"dash" : true,
"hls" : false,
"cmaf" : false,
"option" : {
"min_buffer_time" : 2,
"enable_average_bandwidth_mpd" : false,
"subtitle_format": {
"dash": "text_vtt"
}
}
},
"drm" : {
"enabled" : true,
"option" : {
"multi_key" : false,
"max_sd_height" : 0,
"max_hd_height" : 0,
"max_uhd1_height" : 0,
"skip_audio_encryption" : false,
"clear_lead" : 0,
"generate_tracktype_manifests" : false
}
},
"forensic_watermarking" : {
"enabled" : true
}
"job_noti_id":1
}
}
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
data.job_id | Number | 생성된 작업 ID |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 96
{
"error_code" : "0000",
"error_message" : "Success.",
"data" : {
"job_id" : 123
}
}
작업 목록 검색
생성된 작업의 목록을 검색할 수 있는 API입니다.
- URL: https://tnp.pallycon.com/api/job/{siteId}
- Method: GET
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | 콘솔에 표시되는 PallyCon 사이트 ID |
요청 매개변수
매개변수 | 유형 | 설명 |
---|---|---|
from | String | 검색 기간 시작일 (YYYY-MM-DD) |
to | String | 검색 기간 종료일 (YYYY-MM-DD) |
job_name | String | 검색할 작업명 |
region | String | 검색할 리전 코드 |
page_unit | Number | 검색 결과 수 지정. 기본값: 25, 최대: 1000. |
page_index | Number | 검색 결과 페이지 번호. 기본값: 1 |
job_id | Number | 검색할 작업 ID |
job_id_operator | String | 검색할 작업 ID 조건 표현식 (eq, gt, goe, lt, loe) |
content_id | String | 검색할 콘텐츠 ID |
streaming_format | Array | 검색할 스트리밍 포맷 : dash / hls / cmaf / dash,hls |
job_status | Array | 검색할 작업 상태 |
job_type | Array | 검색할 보안 유형: drm / forensic_watermark / drm,forensic_watermark |
codec | Array | 검색할 트랜스코딩용 output video codec: h264 / h265 / h264,h265 |
time_zone | String | 검색에 사용될 시간대 설정. (+HH:mm) 기본값: +00:00 |
요청 예제
GET /api/job/DEMO?from=2022-05-01&to=2022-05-13&job_name=test-job®ion=RG011&page_unit=20&page_index=1&job_id=123&content_id=test-content-id&security=forensic_watermark&streaming_format=dash&time_zone=%2B00%3A00 HTTP/1.1
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Host: tnp.pallycon.com
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
time_zone | String | 시간대 |
total_count | Number | 전체 검색 결과 수 |
data | Array | 작업 목록 |
data.[].job_id | Number | 작업 ID |
data.[].job_name | String | 작업 명 |
data.[].content_id | String | 콘텐츠 ID |
data.[].job_status | String | 작업 상태 코드 |
data.[].drm | Boolean | DRM 적용 여부 |
data.[].forensic_watermark | Boolean | 포렌식 워터마킹 적용 여부 |
data.[].dash | Boolean | DASH 패키징 여부 |
data.[].hls | Boolean | HLS 패키징 여부 |
data.[].cmaf | Boolean | CMAF 패키징 여부 |
data.[].codec | Boolean | 트랜스코딩 비디오 코덱 |
data.[].region | String | 작업 생성 리전 |
data.[].reg_time | String | 작업 생성 시간 |
data.[].start_time | String | 작업 시작 시간 |
data.[].update_time | String | 작업 최종 업데이트 시간 |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 933
{
"error_code" : "0000",
"error_message" : "Success.",
"time_zone" : "+00:00",
"total_count" : 3,
"data" : [ {
"job_id" : 1,
"job_name" : "test job 1",
"content_id" : "test cid 1",
"job_status" : "TP100200",
"drm" : true,
"forensic_watermark" : true,
"dash" : true,
"hls" : true,
"cmaf": false,
"codec": "h264"
"region" : "RG011",
"reg_time" : "2022-05-20T00:00:00"
}, {
"job_id" : 2,
"job_name" : "test job 2",
"content_id" : "test cid 2",
"job_status" : "TP500",
"drm" : true,
"forensic_watermark" : false,
"dash" : true,
"hls" : false,
"cmaf": false,
"codec": "h265"
"region" : "RG011",
"reg_time" : "2022-05-20T00:00:00"
}, {
"job_id" : 3,
"job_name" : "test job 3",
"content_id" : "test cid 3",
"job_status" : "TP700200",
"drm" : true,
"forensic_watermark" : true,
"dash" : true,
"hls" : true,
"cmaf": false,
"codec": "h264"
"region" : "RG011",
"reg_time" : "2022-05-20T00:00:00"
} ]
}
작업 상세 조회
패키징 작업의 상세 정보를 조회하는 API입니다.
- URL: https://tnp.pallycon.com/api/job/{siteId}/{jobId}
- Method: GET
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | 콘솔에 표시되는 PallyCon 사이트 ID |
jobId | 작업 ID |
요청 매개변수
매개변수 | 필수 여부 | 설명 |
---|---|---|
time_zone | Yes | 검색할 시간대. (+HH:mm) 기본값: +00:00 |
요청 예제
GET /api/job/DEMO/1?time_zone=%2B00%3A00 HTTP/1.1
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Host: tnp.pallycon.com
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
time_zone | String | 시간대 |
data | Object | 작업 정보 |
data.job_id | Number | 작업 ID |
data.job_name | String | 작업 명 |
data.job_status | String | 작업 상태 코드 |
data.region | String | 리전 코드 |
data.content_id | String | 콘텐츠 ID |
data.input | Object | 입력 콘텐츠 정보 |
data.input.storage_id | String | 입력 스토리지 ID |
data.input.files | Array | 입력 파일 정보 |
data.input.files.[].file_type | String | 파일 유형 : multi, video, audio - multi : 입력 파일의 비디오와 오디오 트랙 이용. 오디오 트랙 정보가 포함된 파일이어야 합니다. - video : 입력파일의 비디오 트랙을 이용. 오디오 트랙 정보는 사용되지 않음. multi 와 video 유형은 하나의 작업에 함께 사용될 수 없습니다. - audio : 입력 파일의 오디오 트랙을 이용. 오디오 트랙 정보가 포함된 파일이어야 합니다. |
data.input.files.[].file_path | String | 입력 파일 경로 |
data.input.files.[].audios | Array | 오디오 정보 |
data.input.files.[].audios.[].in.track | Number | 입력 오디오 트랙 인덱스 |
data.input.files.[].audios.[].remap.track | Number | 매핑된 오디오 트랙 인덱스 |
data.input.subtitles | Array | 자막 정보 |
data.input.subtitles.[].file_path | String | 자막 파일 경로 |
data.input.subtitles.[].language | String | 자막 언어 |
data.output | Object | 출력 태스크 정보 |
data.output.storage_id | String | 출력 스토리지 ID |
data.output.path | String | 출력 폴더 경로 |
data.output.default_language | String | 오디오 트랙 기본 언어 코드 |
data.output.transcodings | Array | 트랜스코딩 정보 |
data.output.transcodings.[].track_id | String | 트랙 ID |
data.output.transcodings.[].track_type | String | 트랙 유형 : video, audio |
data.output.transcodings.[].track_name | String | 트랙 명 : audio |
data.output.transcodings.[].codec | String | 비디오/오디오 코덱 이름 (video: h264, h265. audio: aac, aac_lc,ac3,eac3 & heaac_v2) |
data.output.transcodings.[].height | Number | 영상 높이 |
data.output.transcodings.[].width | Number | 영상 너비 |
data.output.transcodings.[].bitrate_mode | String | 비트레이트 모드 (cbr, vbr) |
data.output.transcodings.[].bitrate | Number | 비트레이트 (bps). |
data.output.transcodings.[].min_bitrate | Number | 최소 비트레이트 (bps). VBR용. |
data.output.transcodings.[].max_bitrate | Number | 최대 비트레이트 (bps). VBR용. |
data.output.transcodings.[].crf | Number | 품질 기준으로 비트레이트 설정합니다. vbr 인 경우만 사용 가능합니다. 범위 : 0~69 |
data.output.transcodings.[].frame_rate | Number | 영상 프레임레이트 |
data.output.transcodings.[].bandwidth | Number | 영상 대역폭 |
data.output.transcodings.[].sample_rate | Number | 오디오 샘플링레이트 |
data.output.transcodings.[].language | String | 오디오 트랙 언어 코드 (ISO 639-1, 두자리 영문 소문자) |
data.output.transcodings.[].sources | Array | 오디오 트랙 리매핑 목록 |
data.output.transcodings.[].sources.[].track | Number | 매핑된 오디오 트랙 인덱스 |
data.output.packaging | Object | 패키징 정보 |
data.output.packaging.dash | Boolean | DASH 패키징 출력 여부. dash, hls, cmaf 중에 한가지 타입은 필수 입니다. 설정 시 cmaf 은 false 가 되어야 합니다. |
data.output.packaging.hls | Boolean | HLS 패키징 출력 여부. dash, hls, cmaf 중에 한가지 타입은 필수 입니다. 설정 시 cmaf 은 false 가 되어야 합니다. |
data.output.packaging.cmaf | Boolean | CMAF 패키징 출력 여부. 설정 시 dash, hls 는 false 가 되어야 합니다. |
data.output.packaging.option | Object | 패키징 옵션 |
data.output.packaging.option.min_buffer_time | Number | MPD Representation data rate의 정의에 사용되는 공통 기간을 초 단위로 지정합니다. |
data.output.packaging.option.enable_average_bandwidth_mpd | Boolean | MPD의 각 트랙에 대해 평균 대역폭을 사용합니다. |
Boolean | Deprecated 이 매개변수를 사용하여 출력 자막 형식을 Embedded MP4로 설정할 수 있습니다. 파라미터를 생략하면 기본적으로 Text VTT 형식의 자막이 생성됩니다. (기본값: false) |
|
output.packaging.option.subtitle_format.dash | String | 출력 자막 형식(text_vtt, mp4_ttml, mp4_vtt)을 설정할 수 있습니다. 작업 생성시 DASH 패키징 출력을 요청한다면 넣을 수 있는 옵션 값입니다. (기본값: text_vtt) |
output.packaging.option.subtitle_format.hls | String | 출력 자막 형식(text_vtt, mp4_ttml, mp4_vtt)을 설정할 수 있습니다. 작업 생성시 HLS 패키징 출력을 요청한다면 넣을 수 있는 옵션 값입니다. (기본값: text_vtt) |
output.packaging.option.subtitle_format.cmaf | String | 출력 자막 형식(text_vtt, mp4_ttml)을 설정할 수 있습니다. 작업 생성시 CMAF 패키징 출력을 요청한다면 넣을 수 있는 옵션 값입니다. (기본값: text_vtt) |
data.output.drm | Object | DRM 정보 |
data.output.drm.enabled | Boolean | DRM 암호화 적용 여부 |
data.output.drm.option | Object | DRM 옵션 |
data.output.drm.option.multi_key | Boolean | 멀티키 패키징 적용 여부 |
data.output.drm.option.max_sd_height | Number | SD 트랙으로 패키징될 최대 해상도 |
data.output.drm.option.max_hd_height | Number | HD 트랙으로 패키징될 최대 해상도 |
data.output.drm.option.max_uhd1_height | Number | UHD 트랙으로 패키징될 최대 해상도 |
data.output.drm.option.skip_audio_encryption | Boolean | 오디오 트랙 암호화 제외 여부 |
data.output.drm.option.clear_lead | Number | 영상 초반 암호화 비활성화 구간 (초 단위) |
data.output.drm.option.generate_tracktype_manifests | Boolean | 멀티키 패키징 시 트랙별 매니페스트(플레이리스트) 파일 생성. SD부터 UHD 트랙까지 포함된 어댑티브 스트림의 경우, SD_ONLY, SD_HD, SD_UHD 세 가지 매니페스트가 생성됨. |
data.output.forensic_watermarking | Object | 포렌식 워터마킹 정보 |
data.output.forensic_watermarking.enabled | Boolean | 포렌식 워터마킹 적용 여부 |
data.output.job_noti_id | String | 작업 알림 ID 설정 |
data.reg_time | String | 작업 등록 시간 |
data.start_time | String | 작업 시작 시간 |
data.update_time | String | 작업 최종 업데이트 시간 |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1542
{
"error_code" : "0000",
"error_message" : "Success.",
"time_zone" : "+00:00",
"data" : {
"job_name" : "jobName",
"content_id" : "test-cid",
"input" : {
"storage_id" : "12312312312312312312312312312312",
"files" : [ {
"file_type" : "multi",
"file_path" : "del-short-hevc.mp4",
"audios" : [ {
"in" : {
"track" : 0
},
"remap" : {
"track" : 0
}
} ]
} ]
},
"output" : {
"storage_id" : "32132132132132132132131231232132",
"path" : "saas-pack",
"transcodings" : [ {
"track_id" : "video1",
"track_type" : "video",
"codec" : "H265",
"height" : 1080,
"width" : 1920,
"bitrate" : 2500,
"frame_rate" : 23.98
}, {
"track_id" : "video2",
"track_type" : "video",
"codec" : "H264",
"height" : 720,
"width" : 1080,
"bitrate" : 1500,
"frame_rate" : 23.98
}, {
"track_id" : "audio1",
"track_type" : "audio",
"codec" : "aac",
"sources" : [ {
"track" : 0
} ]
} ],
"packaging" : {
"dash" : true,
"hls" : true,
"cmaf" : false
},
"drm" : {
"enabled" : true
},
"forensic_watermarking" : {
"enabled" : true
}
"job_noti_id":1
},
"job_id" : 1,
"region" : "RG011",
"job_status" : "TP100100",
"start_time" : "2022-05-20T17:03:41",
"reg_time" : "2022-05-20T17:02:17"
}
}
작업 중지
패키징 작업을 중지할 때 사용하는 API입니다.
- URL: https://tnp.pallycon.com/api/job/{siteId}/{jobId}/stop
- Method: PUT
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | 콘솔에 표시되는 PallyCon 사이트 ID |
jobId | 작업 ID |
요청 예제
PUT /api/job/DEMO/1/stop HTTP/1.1
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Host: tnp.pallycon.com
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
data | Object | 작업 정보 |
data.job_id | Number | 작업 ID |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 94
{
"error_code" : "0000",
"error_message" : "Success.",
"data" : {
"job_id" : 1
}
}
작업 재시작
중지된 작업을 재시작하는 API입니다.
- URL: https://tnp.pallycon.com/api/job/{siteId}/{jobId}/restart
- Method: PUT
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | 콘솔에 표시되는 PallyCon 사이트 ID |
jobId | 작업 ID |
요청 예제
PUT /api/job/DEMO/1/restart HTTP/1.1
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Host: tnp.pallycon.com
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
data | Object | 작업 정보 |
data.job_id | Number | 작업 ID |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 94
{
"error_code" : "0000",
"error_message" : "Success.",
"data" : {
"job_id" : 1
}
}
스토리지 API
스토리지 ID 생성
패키징 작업에 사용할 스토리지를 등록하고 ID를 생성하는 API입니다.
- URL: https://tnp.pallycon.com/api/storage/{siteId}
- Method: POST
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | 콘솔에 표시되는 PallyCon 사이트 ID |
요청 데이터 필드
필드 | 유형 | 필수 여부 | 설명 |
---|---|---|---|
storage_name | String | Yes | 스토리지 명 |
aws_bucket | String | Yes | S3 버킷 명 |
io_type | String | Yes | 입력/출력 유형 (input, output) |
access_key_id | String | Yes | S3 액세스 키 ID |
secret_key | String | Yes | S3 비밀 키 |
region | String | Yes | 리전 코드 |
description | String | 스토리지 설명 |
요청 예제
POST /api/storage/DEMO HTTP/1.1
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Content-Length: 295
Host: tnp.pallycon.com
{
"storage_name" : "test-input-storage",
"aws_bucket" : "watermark-input-seoul",
"io_type" : "input",
"access_key_id" : "valid-test-storage-access-key-id",
"secret_key" : "valid-in-test-storage-secret-key",
"region" : "RG011",
"description" : "This storage is test input bucket."
}
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
data.storage_id | String | 생성된 스토리지 ID |
응답 예제
| HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 115
{
"error_code" : "0000",
"error_message" : "Success.",
"data" : {
"storage_id" : "input-storage-id"
}
}
스토리지 목록 검색
등록된 스토리지 목록을 검색할 수 있는 API입니다.
- URL: https://tnp.pallycon.com/api/storage/{siteId}
- Method: GET
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | 콘솔에 표시되는 PallyCon 사이트 ID |
요청 매개변수
매개변수 | 설명 |
---|---|
from | 검색 기간 시작일 (YYYY-MM-DD) |
to | 검색 기간 종료일 (YYYY-MM-DD) |
storage_name | 검색할 스토리지 명 |
region | 검색할 스토리지 리전 코드 |
page_unit | 검색 결과 수 지정. 기본값: 25, 최대: 1000. |
page_index | 검색 결과 페이지 번호. 기본값: 1 |
time_zone | 검색할 시간대 (+HH:mm) 기본값: +00:00 |
요청 예제
GET /api/storage/DEMO?from=2022-05-01&to=2022-05-13&storage_name=test-storage®ion=RG011&page_unit=20&page_index=1&time_zone=%2B00%3A00 HTTP/1.1
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Host: tnp.pallycon.com
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
time_zone | String | 시간대 |
data | Array | 스토리지 목록 |
data.[].storage_id | String | 스토리지 ID |
data.[].storage_name | String | 스토리지 명 |
data.[].aws_bucket | String | 버킷 명 |
data.[].io_type | String | 입출력 유형 (input / output) |
data.[].region | String | 스토리지 리전 |
data.[].reg_time | String | 스토리지 등록 일시 YYYY-MM-DD’T’hh-mm-ss |
data.[].update_time | String | 최종 업데이트 일시 YYYY-MM-DD’T’hh-mm-ss |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 775
{
"error_code" : "0000",
"error_message" : "Success.",
"time_zone" : "+00:00",
"data" : [ {
"storage_id" : "e42e5fc74bee455db0fc2d79038dbabb",
"storage_name" : "test storage 1",
"aws_bucket" : "test bucket 1",
"io_type" : "input",
"region" : "RG011",
"reg_time" : "2022-05-20T00:00:00"
}, {
"storage_id" : "50273cb8e91242f3ad6b9dd49faf8f03",
"storage_name" : "test storage 2",
"aws_bucket" : "test bucket 2",
"io_type" : "input",
"region" : "RG011",
"reg_time" : "2022-05-20T00:00:00"
}, {
"storage_id" : "69798b703f3c46b996a1335a54c3fa0e",
"storage_name" : "test storage 3",
"aws_bucket" : "test bucket 3",
"io_type" : "input",
"region" : "RG011",
"reg_time" : "2022-05-20T00:00:00"
} ]
}
스토리지 상세 조회
등록된 스토리지에 대한 상세 정보를 조회하는 API입니다.
- URL: https://tnp.pallycon.com/api/storage/{siteId}/{storageId}
- Method: GET
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | 콘솔에 표시되는 PallyCon 사이트 ID |
storageId | 스토리지 ID |
요청 매개변수
매개변수 | 설명 |
---|---|
time_zone | 검색 시간대 (+HH:mm) 기본값: +00:00 |
요청 예제
GET /api/storage/DEMO/12312312312312312312312312312312?time_zone=%2B00%3A00 HTTP/1.1
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Host: tnp.pallycon.com
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
time_zone | String | 시간대 |
data | Object | 스토리지 정보 |
data.storage_id | String | 스토리지 ID |
data.storage_name | String | 스토리지 명 |
data.io_type | String | 스토리지 입출력 유형 (input, output) |
data.aws_bucket | String | 버킷 명 |
data.region | String | 리전 코드 |
data.access_key_id | String | 스토리지 액세스 키 ID |
data.secret_key | String | 스토리지 비밀 키 |
data.description | String | 스토리지 설명 |
data.reg_time | String | 스토리지 등록 일시 (YYYY-MM-DD’T’hh-mm-ss) |
data.update_time | String | 최종 업데이트 일시 |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 547
{
"error_code" : "0000",
"error_message" : "Success.",
"time_zone" : "+00:00",
"data" : {
"storage_id" : "12312312312312312312312312312312",
"storage_name" : "test-input-storage",
"io_type" : "input",
"aws_bucket" : "watermark-input-seoul",
"region" : "RG011",
"access_key_id" : "valid-test-storage-access-key-id",
"secret_key" : "valid-in-test-storage-secret-key",
"description" : "This storage is test input bucket.",
"update_time" : "2022-05-26T05:43:01",
"reg_time" : "2022-05-25T05:43:01"
}
}
스토리지 수정
등록된 스토리지의 정보를 수정하는 API입니다.
- URL: https://tnp.pallycon.com/api/storage/{siteId}/{storageId}
- Method: PUT
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | 콘솔에 표시되는 PallyCon 사이트 ID |
storageId | 스토리지 ID |
요청 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
storage_name | String | 스토리지 명 |
access_key_id | String | 액세스 키 ID |
secret_key | String | 비밀 키 |
aws_bucket | String | 버킷 명 |
io_type | String | 입출력 유형 (input / output) |
description | String | 스토리지 설명 |
요청 예제
PUT /api/storage/DEMO/12312312312312312312312312312312 HTTP/1.1
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Content-Length: 217
Host: tnp.pallycon.com
{
"storage_name" : "test-input-storage",
"aws_bucket" : "watermark-input-seoul",
"io_type" : "input",
"access_key_id" : "valid-test-storage-access-key-id",
"secret_key" : "valid-in-test-storage-secret-key"
}
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
data | Object | 스토리지 정보 |
data.storage_id | String | 스토리지 ID |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 131
{
"error_code" : "0000",
"error_message" : "Success.",
"data" : {
"storage_id" : "12312312312312312312312312312312"
}
}
스토리지 삭제
등록된 스토리지 정보를 삭제하는 API입니다.
- URL: https://tnp.pallycon.com/api/storage/{siteId}/{storageId}
- Method: DELETE
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | 콘솔에 표시되는 PallyCon 사이트 ID |
storageId | 스토리지 ID |
요청 예제
DELETE /api/storage/DEMO/12312312312312312312312312312312 HTTP/1.1
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Host: tnp.pallycon.com
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
data | Object | 스토리지 정보 |
data.storage_id | String | 스토리지 ID |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 131
{
"error_code" : "0000",
"error_message" : "Success.",
"data" : {
"storage_id" : "12312312312312312312312312312312"
}
}
여러 스토리지 삭제
여러 개의 등록된 스토리지 정보를 한 번에 삭제하는 API 입니다.
- URL: https://tnp.pallycon.com/api/storage/{siteId}
- Method: DELETE
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | 콘솔에 표시되는 PallyCon 사이트 ID |
storage_ids | Array |
요청 예제
DELETE /api/storage/DEMO HTTP/1.1
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Content-Length: 118
Host: tnp.pallycon.com
{
"site_id" : "DEMO",
"storage_ids" : [ "12312312312312312312312312312312", "12312312312312312312312312312313" ]
}
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
data | Object | 스토리지 정보 |
data.site_id | String | 사이트 ID |
data.storage_ids | Array | 스토리지 ID 목록 |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 196
{
"error_code" : "0000",
"error_message" : "Success.",
"data" : {
"site_id" : "DEMO",
"storage_ids" : [ "12312312312312312312312312312312", "12312312312312312312312312312313" ]
}
}
작업 알림 API
작업 상태를 알림으로 설정하고 알림을 받을수 있는 API 입니다. 현재 알림으로 받을수 있는 타입은 AWS SNS(Simple Notification Service) 만 지원합니다. 작업 알림 API는 다음의 네가지 기능을 제공합니다.
- 알림 생성
- 알림 업데이트
- 알림 검색
- 알림 삭제
알림 생성
작업 알림을 생성하는 API 입니다
- URL: https://tnp.pallycon.com/api/noti/job/{SiteID}
- Method: POST
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | PallyCon 사이트 ID |
요청 데이터 필드
필드 | 유형 | 필수여부 | 설명 |
---|---|---|---|
noti_name | String | Yes | 알림 이름 (최대 50자 영문 대/소문자, 숫자, 특수 문자(-)(_)(.)) |
noti_type | String | Yes | 연동하는 알림 유형 (현재 AWS SNS만 지원) |
url_end_point | String | Yes | 알림 받을 URL 주소 (현재 AWS ARN 타입의 주소만 가능) |
aws_access.access_key | String | Yes | AWS SNS에 접근하는 AWS access key |
aws_access.secret_key | String | Yes | AWS SNS에 접근하는 AWS secret key |
alarm_status | Object | Yes | 알림 받을 작업 상태값 관련 객체 |
alarm_status.queued | Boolean | queued 상태값 알림 여부 (기본값: false) | |
alarm_status.progressing | Boolean | processing 상태값 알림 여부 (기본값: false) | |
alarm_status.complete | Boolean | complted 상태값 알림 여부 (기본값: false) | |
alarm_status.error | Boolean | error 상태값 알림 여부 (기본값: false) | |
alarm_status.stopped | Boolean | stopped 상태값 알림 여부 (기본값: false) |
요청 예제
POST https://tnp.pallycon.com/api/noti/job/{SiteID}
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Host: tnp.pallycon.com
{
"noti_name" :"noti_test",
"noti_type" : "SNS",
"url_end_point" : "arn:aws:sns:us-west-2:73041xxxxx:PallyCon_TNP_SNS",
"aws_access" :
{
"access_key" : "AK1252GDTP5xxxxx",
"secret_key" : "WwMma1EVkcMBhlCmXxxxxxxx1"
},
"alarm_status" :
{
"queued" : false,
"progressing" : false,
"stopped" : true,
"error" : true,
"complete" : true
}
}
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
data | Object | 작업 알림 정보 |
data.noti_id | Number | 작업 알림 ID |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
"error_code": "0000",
"error_message": "Success.",
"data": {
"noti_id": 1
}
}
알림 업데이트
생성된 알림을 수정하거나 업데이트 하는 API 입니다.
- URL: https://tnp.pallycon.com/api/noti/job/{{SitID}}/{{notiid}}
- Method: PUT
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | PallyCon 사이트 ID |
notiid | 업데이트 할 작업 알림 ID |
요청 데이터 필드
필드 | 유형 | 필수여부 | 설명 |
---|---|---|---|
noti_name | String | 알림 이름 (최대 50자 영문 대/소문자, 숫자, 특수 문자(-)(_)(.)) | |
noti_type | String | 연동하는 알림 유형 (현재 AWS SNS만 지원) | |
url_end_point | String | 알림 받을 URL 주소 (현재 AWS ARN 타입의 주소만 가능) | |
aws_access.access_key | String | AWS SNS에 접근하는 AWS access key | |
aws_access.secret_key | String | AWS SNS에 접근하는 AWS secret key | |
alarm_status | Object | 알림 받을 작업 상태값 관련 객체 | |
alarm_status.queued | Boolean | Yes | queued 상태값 알림 여부 (기본값: false) |
alarm_status.progressing | Boolean | Yes | processing 상태값 알림 여부 (기본값: false) |
alarm_status.complete | Boolean | Yes | complted 상태값 알림 여부 (기본값: false) |
alarm_status.error | Boolean | Yes | error 상태값 알림 여부 (기본값: false) |
alarm_status.stopped | Boolean | Yes | stopped 상태값 알림 여부 (기본값: false) |
요청 예제
PUT https://tnp.pallycon.com/api/noti/job/{{SitID}}/{{notiid}}
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Host: tnp.pallycon.com
{
"noti_name" :"noti_test",
"noti_type" : "SNS",
"url_end_point" : "arn:aws:sns:us-west-2:73041xxx:PallyCon_TNP_SNS",
"aws_access" :
{
"access_key" : "AK1252GDTP5xxxxx",
"secret_key" : "WwMma1EVkcMBhlCmXxxxxxxx1"
},
"alarm_status" :
{
"queued" : false,
"progressing" : false,
"stopped" : true,
"error" : true,
"complete" : true
}
}
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
data | Object | 작업 알림 정보 |
data.noti_id | Number | 작업 알림 ID |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
"error_code": "0000",
"error_message": "Success.",
"data": {
"noti_id": 1
}
}
알림 목록 조회
등록된 작업 알림 목록을 조회하는 API 입니다.
- URL: https://tnp.pallycon.com/api/noti/job/{SiteID}
- Method: GET
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | PallyCon 사이트 ID |
요청 예제
GET https://tnp.pallycon.com/api/noti/job/{SiteID}
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Host: tnp.pallycon.com
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러 코드 |
error_message | String | 에러 메시지 |
time_zone | String | 타임존 (+/-hh:mm) |
total_count | Number | 등록된 알림의 총 개수 |
data | Array | 작업 알림 목록 |
data Arry의 내부 배열은 다음과 같습니다
필드 | 유형 | 설명 |
---|---|---|
noti_id | Number | 작업 알림 ID |
site_id | String | PallyCon 사이트 ID |
noti_name | String | 알림 이름 |
noti_type | String | AWS SNS만 지원 |
url_end_point | String | 알림을 받을 URL 주소 |
alarm_status | Object | 알림 받는 작업 상태값 관련 객체 |
alarm_status.queued | Boolean | queued 상태값 알림 여부 |
alarm_status.progressing | Boolean | progressing 상태값 알림 여부 |
alarm_status.complete | Boolean | complted 상태값 알림 여부 |
alarm_status.error | Boolean | error 상태값 알림 여부 |
alarm_status.stopped | Boolean | stopped 상태값 알림 여부 |
reg_time | String | 작업 알림이 생성된 날짜와 시간 |
update_time | String | 작업 알림이 업데이트된 날짜와 시간 |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
"error_code": "0000",
"error_message": "Success.",
"time_zone": "+00:00",
"total_count": 1,
"data": [
{
"noti_id": 1,
"site_id": "YOUR_SITE_ID",
"noti_name": "noti_test",
"noti_type": "SNS",
"url_end_point": "arn:aws:sns:us-west-2:73041xxx:PallyCon_TNP_SNS",
"access_key": "AK1252GDTP5xxxxx",
"alarm_status": {
"queued": true,
"progressing": true,
"complete": true,
"error": true,
"stopped": true
},
"update_time": "2024-08-05T11:02:05",
"reg_time": "2024-08-05T10:18:58"
}
]
}
알림 삭제
작업 알림을 삭제하는 API 입니다
- URL: https://tnp.pallycon.com/api/noti/job/{SiteID}/{notiId}
- Method: DELETE
경로 매개변수
매개변수 | 설명 |
---|---|
siteId | PallyCon 사이트 ID |
notiId | 삭제할 작업 알림 ID |
요청 예제
DELETE https://tnp.pallycon.com/api/noti/job/{SiteID}/{notiId}
Authorization: Bearer valid_token
Content-Type: application/json;charset=UTF-8
Host: tnp.pallycon.com
응답 데이터 필드
필드 | 유형 | 설명 |
---|---|---|
error_code | String | 에러코드 |
error_message | String | 에러 메시지 |
data | Object | 작업 알림 정보 |
data.noti_id | Number | 작업 알림 ID |
응답 예제
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
"error_code": "0000",
"error_message": "Success.",
"data": {
"noti_id": 1
}
}