도브러너 서비스 API 가이드
도브러너 서비스 고객은 도브러너 웹 콘솔에서 콘텐츠 패키징, 라이선스 발급 등 다양한 데이터를 확인할 수 있습니다. API 기반의 데이터 접근이 필요한 경우, 고객은 도브러너 서비스 API를 이용해 도브러너 서버 측 데이터를 자사 시스템과 통합할 수 있습니다.
이 문서는 2021년 12월에 출시된 PallCon 서비스 API V2를 기준으로 작성되었습니다.
API 기본 정보
Section titled “API 기본 정보”도브러너 서비스 API는 정보의 안전한 전송을 위해 JSON Web Token(JWT)을 사용합니다.
온라인 JWT 도구 또는 서버 측 프로그래밍 언어를 사용하여 JWT 토큰을 생성하고 테스트할 수 있습니다.

토큰은 HMAC SHA256(HS256) 알고리듬과 함께 계정별 비밀 키를 사용하여 서명해야 합니다. 토큰 페이로드에 사용되는 서비스 API 키와 계정 seq 값은 헬프데스크 티켓을 통해 요청할 수 있습니다.
JWT 구조
Section titled “JWT 구조”위 캡쳐 이미지에서 확인할 수 있듯이, 인코딩된 JWT 토큰의 형식은 다음과 같습니다.
base64UrlEncode(header) + "." + base64UrlEncode(payload) + "." + HS256 signature value페이로드 규격
Section titled “페이로드 규격”토큰은 아래 예시와 같은 JSON 페이로드 데이터를 사용합니다.
{ "sub" : "PallyConAPI", "aud" : "INKA", "iss" : "PallyCon", "account_id" : "Your DoveRunner account ID", "account_seq": "Your DoveRunner account SEQ", "exp": 1583191411}| 키 | 필수 여부 | 값 |
|---|---|---|
| sub | Y | PallyConAPI (고정 값) |
| aud | Y | INKA (고정 값) |
| iss | Y | PallyCon (고정 값) |
| account_id | Y | 도브러너 서비스 계정 ID |
| account_seq | Y | 도브러너 서비스 계정의 SEQ (헬프데스크 티켓을 통해 요청 가능) |
| exp | N | 토큰 만료 일자 (형식: date number) |
SEQ는 도브러너 서비스 API에서 주요 데이터를 인덱싱하는데 사용되는 키값입니다.
기본 응답 규격
Section titled “기본 응답 규격”도브러너 서비스 API를 호출하면 아래와 같은 HTTP 상태 코드 중 하나를 받게 됩니다.
| HTTP 상태 코드 | 설명 |
|---|---|
| 401 | JWT 토큰 사양이 잘못되었거나 사용자 정보를 찾을 수 없음 |
| 403 | 호출된 API에 대한 권한이 없음 |
| 200 | HTTP 통신 성공 |
HTTP 상태 코드가 200(HTTP 통신 성공)인 경우 JSON 형식으로 아래 응답 데이터를 받게 됩니다.
| 키 | 유형 | 값 |
|---|---|---|
| error_code | String | 0000: 성공 / 기타 숫자: 실패 |
| error_message | String | 실패한 요청에 대한 오류 메시지 표시 |
| data | JSON | API 요청 결과 (성공 시) |
계정 관리 API
Section titled “계정 관리 API”도브러너 서비스 계정 및 사이트 관리를 위한 API입니다.
사이트 목록 조회
Section titled “사이트 목록 조회”이 API는 도브러너 계정의 사이트 목록을 검색합니다.
- URL: https://service.pallycon.com/api/v2/account/siteId
- Method: GET
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 인코딩된 JWT 데이터 |
| api_code | String | Y | API 코드 UC011004100 |
Response.data
Section titled “Response.data”| 키 | 유형 | 설명 |
|---|---|---|
| site_id | String | 사이트 ID (네자리 영숫자, 도브러너 콘솔에서 조회 가능) |
| service_name | String | 서비스 사이트 이름 |
| product_list | Array | 제품 리스트 |
| product_list.[].service_code | String | 제품 코드 ( PD001 : DRM, PD002 : FWM ) |
| product_list.[].status_code | String | 서비스 상태 (SE000 : 서비스중, SE001 : 서비스 중지 ) |
서비스 사이트 추가 요청
Section titled “서비스 사이트 추가 요청”이 API는 도브러너 계정에 대한 추가 서비스 사이트를 요청합니다. (한 계정에서 여러 개의 서비스 사이트를 운영하는 경우)
- URL: https://service.pallycon.com/api/v2/account/siteId/approve
- Method: POST
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 인코딩된 JWT 데이터 |
| api_code | String | Y | API 코드 UA010310200 |
| service_name | String | Y | 추가될 서비스 사이트 명 |
Response.data
Section titled “Response.data”| 키 | 유형 | 설명 |
|---|---|---|
| seq | Int | 해당 요청에 대한 SEQ (시퀀스 번호) |
사이트 추가 상태 조회
Section titled “사이트 추가 상태 조회”이 API는 서비스 사이트 추가 요청에 대한 상태를 반환합니다.
- URL: https://service.pallycon.com/api/v2/account/siteId/approve
- Method: GET
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 인코딩된 JWT 데이터 |
| api_code | String | Y | API 코드 UA010310100 |
| from | String | N | 검색 기간 시작일 (YYYY-MM-DD) |
| to | String | N | 검색 기간 종료일 (YYYY-MM-DD) |
| req_status | String | N | 사이트 추가 진행 상태 |
| search_type | String | N | 검색 유형 (account_id, site_id) |
| search_keyword | String | N | 검색 키워드 (검색 유형이 설정된 경우) |
| page_unit | Int | N | 검색 결과 수 지정 (기본 값:25, 최대: 1000) |
| page_index | Int | N | 검색 결과 페이지 번호 (결과 수가 page_unit 보다 클 경우) |
Response.data
Section titled “Response.data”| 키 | 유형 | 설명 |
|---|---|---|
| seq | Int | 사이트 추가 요청에 대한 SEQ 번호 |
| account_id | String | 도브러너 서비스 계정 ID |
| site_id | String | 사이트 ID (네자리 영숫자) |
| service_name | String | 서비스 사이트 명 |
| status | String | 사이트 추가 진행 상태 |
| update_time | String | 상태 업데이트 시간 |
| reg_time | String | 요청 등록 시간 |
하위 사용자 목록 조회
Section titled “하위 사용자 목록 조회”이 API는 계정의 하위 구성원 목록을 조회합니다.
- URL: https://service.pallycon.com/api/v2/account/member
- Method: GET
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 인코딩된 JWT 데이터 |
| api_code | String | Y | API 코드 UA010700200 |
| page_unit | Int | N | 검색 결과 수 지정 (기본 값:25, 최대: 1000) |
| page_index | Int | N | 검색 결과 페이지 번호 (결과 수가 page_unit 보다 클 경우) |
Response.data
Section titled “Response.data”| 키 | 유형 | 설명 |
|---|---|---|
| group_name | String | 하위 사용자가 소속된 권한 그룹 명 |
| group_seq | Int | 권한 그룹의 SEQ 번호 (아래 테이블 참조) |
| member_seq | Int | 해당 하위 사용자의 SEQ 번호 |
| member_email | String | 하위 사용자의 이메일 주소 |
| status_code | String | 하위 사용자 상태 코드 (MT001: 활성, MT002: 비활성) |
| reg_date | String | 하위 사용자 등록 날짜 (YYYY-MM-DD) |
- 그룹 SEQ 목록 | SEQ 번호 | 설명 | | :----- | :------- | | 1000 | BIZ 그룹. 서비스 사용 이력 및 연동 정보와 결제 관련 정보에 접근 가능 | | 1001 | TS 그룹. 서비스 사용 이력 및 연동 정보와 SDK 다운로드 페이지 접근 가능 | | 1014 | Clients 그룹. 서비스 사용 이력 페이지만 접근 가능 |
하위 사용자 생성
Section titled “하위 사용자 생성”이 API는 계정에 하위 구성원을 만듭니다.
- URL: https://service.pallycon.com/api/v2/account/member
- Method: POST
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 인코딩된 JWT 데이터 |
| api_code | String | Y | API 코드 UA010700200 |
| member_email | String | Y | 하위 사용자 이메일 주소 |
| group_seq | Int | N | 해당 하위 사용자가 소속될 권한 그룹의 SEQ |
Response.data
Section titled “Response.data”| 키 | 유형 | 설명 |
|---|---|---|
| member_seq | Int | 생성된 하위 사용자의 SEQ 번호 |
하위 사용자 암호 재설정
Section titled “하위 사용자 암호 재설정”이 API는 하위 사용자의 비밀번호를 재설정합니다.
- URL: https://service.pallycon.com/api/v2/account/member/repw
- Method: PUT
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 인코딩된 JWT 데이터 |
| api_code | String | Y | API 코드 UA010700200 |
| member_seq | Int | Y | 하위 사용자의 SEQ 번호 |
Response
Section titled “Response”이 API는 기본 응답 데이터를 응답합니다.
하위 사용자 정보 수정
Section titled “하위 사용자 정보 수정”이 API는 그룹 및 상태와 같은 하위 사용자의 정보를 업데이트합니다.
- URL: https://service.pallycon.com/api/v2/account/member
- Method: PUT
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 인코딩된 JWT 데이터 |
| api_code | String | Y | API 코드 UA010700200 |
| member_seq | Int | Y | 하위 사용자의 SEQ 번호 |
| member_status | String | N | 적용할 사용자 상태 코드 (MT001: 활성, MT002: 비활성) |
| group_seq | Int | N | 적용할 권한 그룹의 SEQ |
Response
Section titled “Response”이 API는 기본 응답 데이터를 응답합니다.
도브러너 서비스 공통 API
Section titled “도브러너 서비스 공통 API”도브러너의 여러 제품에서 공통으로 사용되는 서비스 API를 설명합니다.
서비스 상태 변경 요청 현황 조회
Section titled “서비스 상태 변경 요청 현황 조회”이 API는 도브러너 제품 별로 서비스 상태 변경 요청에 대한 현황을 조회합니다.
- URL: https://service.pallycon.com/api/v2/plan/request/status/{site_id}
- Method: GET
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 회원 정보가 있는 암호화된 jwt |
| api_code | String | Y | api 코드 (UA010301100) |
| site_id | PathVariable | Y | SITE ID |
| service_code | String | Y | 제품코드 (PD001:DRM, PD002:FWM) |
Response
Section titled “Response”| 키 | 유형 | 설명 |
|---|---|---|
| site_id | String | 사이트 ID |
| req_group_id | String | 요청 ID (PK) |
| reg_type | String | 요청타입 코드 |
| reg_message | String | 요청 내용 |
| reg_status | String | 요청 상태 (ST001: 신청, ST002: 반려 또는 취소, ST003:승인) |
| reg_id | String | 요청 ID |
| reg_dt | String | 저장일 (UTC +00:00 기준) |
| update_dt | String | 요청 내역 수정일 (UTC +00:00 기준) |
서비스 상태 변경 요청
Section titled “서비스 상태 변경 요청”이 API는 도브러너 제품 별로 서비스 상태를 변경하기 위한 요청을 등록합니다.
- URL: https://service.pallycon.com/api/v2/plan/request/status/{site_id}
- Method: POST
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 회원 정보가 있는 암호화된 jwt |
| api_code | String | Y | api 코드 (UC011004100) |
| site_id | PathVariable | Y | SITE ID |
| service_code | String | Y | 제품코드 (PD001:DRM, PD002:FWM) |
| request_type | String | Y | 요청타입 코드 (SM001:서비스 재개 요청, SM002:서비스 중지 요청, SM003:트라이얼 기간 연장 요청) |
| request_message | String | N | 요청 내용 |
Response.data
Section titled “Response.data”| 키 | 유형 | 설명 |
|---|---|---|
| site_id | String | 사이트 ID |
| req_group_id | String | 요청 ID (PK) |
| reg_type | String | 요청타입 코드 |
| reg_message | String | 요청 내용 |
| reg_id | String | 요청 ID |
| reg_dt | String | 저장일 (UTC +00:00 기준) |
서비스 상태 변경 요청 취소
Section titled “서비스 상태 변경 요청 취소”이 API는 도브러너 제품 별 서비스 상태 변경 요청을 취소합니다.
- URL: https://service.pallycon.com/api/v2/plan/request/status/{site_id}
- Method: PUT
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 회원 정보가 있는 암호화된 jwt |
| api_code | String | Y | api 코드 (UC011004100) |
| site_id | PathVariable | Y | SITE ID |
| service_code | String | Y | 제품코드 (PD001:DRM, PD002:FWM) |
| request_type | String | Y | 요청타입 코드 (SM004:서비스 변경 요청 취소) |
| request_group_id | String | Y | 요청 ID (PK) |
Response.data
Section titled “Response.data”| 키 | 유형 | 설명 |
|---|---|---|
| site_id | String | 사이트 ID |
| req_group_id | String | 요청 ID (PK) |
| reg_type | String | 기존 요청타입 코드 |
| reg_status | String | 요청 상태 (ST001: 신청, ST002: 반려 또는 취소, ST003:승인) |
| reg_message | String | 요청 내용 |
| reg_id | String | 요청 ID |
| reg_dt | String | 저장일 (UTC +00:00 기준) |
| update_dt | String | 요청 내역 수정일 (UTC +00:00 기준) |
DRM 서비스 API
Section titled “DRM 서비스 API”도브러너 멀티 DRM 서비스와 관련된 API를 설명합니다.
DRM 라이선스 발급 조회
Section titled “DRM 라이선스 발급 조회”이 API는 특정 기간에 발급된 DRM 라이선스의 목록을 검색합니다.
- URL: https://service.pallycon.com/api/v2/drm/license
- Method: GET
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 인코딩된 JWT 데이터 |
| api_code | String | Y | API 코드 (UA003001100) |
| site_id | String | Y | 사이트 ID (네자리 영숫자) |
| from | String | N | 검색 기간 시작일 (YYYY-MM-DD) |
| to | String | N | 검색 기간 종료일 (YYYY-MM-DD) |
| search_status | String | N | 라이선스 발급 상태로 검색 (success or fail) |
| search_condition | String | N | 키워드 검색 카테고리 (cid, drm_type, user_id, device_id, device_model) |
| search_keyword | String | N | 카테고리 검색에 사용될 키워드 (search_condition 설정 시) |
| page_unit | Int | N | 검색 결과 수 지정 (기본 값:25, 최대: 1000) |
| page_index | Int | N | 검색 결과 페이지 번호 (결과 수가 page_unit 보다 클 경우) |
- 요청 예제
curl -H 'authorization:Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJQYWxseUNvbkFQSSIsImF1ZCI6IklOS0EiLCJpc3MiOiJQYWxseUNvbiIsImFkbWluIjp0cnVlLCJ1c2VySWQiOiJ0ZXN0dXNlciJ9.p7VJmRryoaSVU2qn9PDuoDRIFxphw0N2786bR6zhELQ' 'https://service.pallycon.com/api/v2/drm/license?api_code=UA003001100&site_id=DEMO&from=2020-03-01&to=2020-03-02&search_status=success&search_condition=cid&search_keyword=test'Response.data (Array)
Section titled “Response.data (Array)”| 키 | 유형 | 설명 |
|---|---|---|
| cid | String | 콘텐츠의 고유 ID |
| status | String | 라이선스 발급 상태 (success, fail) |
| error_code | String | 에러 코드 (성공: 0000, 실패 시 해당 에러 코드) |
| drm_type | String | DRM 유형 (PlayReady, Widevine, FairPlay, NCG) |
| user_id | String | 최종 사용자의 고유 ID |
| device_id | String | 클라이언트 기기의 고유 ID |
| device_model | String | 클라이언트 기기 모델명 |
| license_type | String | DRM 라이선스 연동 방식 (token, gateway) |
| platform_name | String | 클라이언트 플랫폼 정보 |
| reg_time | String | 라이선스 요청 등록 시간 |
- 응답 예제
{ "_links":{ "self":{ "href":"http://service.pallycon.com/api/v2/drm/license" } }, "error_code":"0000", "data":[{ "cid":"configtest", "status":"success", "error_code":"0000", "drm_type":"FairPlay", "user_id":"uuu", "device_id":"13406080a61bef63aaa1d99a32f51e31c804e659", "device_model":"iOS-device", "license_type":"gateway", "platform_name":"iOS", "reg_time":"20200302235959" }, { "cid":"configtest", "status":"success", "error_code":"0000", "drm_type":"FairPlay", "user_id":"uuu", "device_id":"13406080a61bef63aaa1d99a32f51e31c804e659", "device_model":"iOS-device", "license_type":"gateway", "platform_name":"iOS", "reg_time":"20200302235956" }], "count":2 }}DRM 사용자 조회
Section titled “DRM 사용자 조회”이 API는 특정 기간에 라이선스를 획득한 최종 사용자 ID의 목록을 검색합니다.
- URL: https://service.pallycon.com/api/v2/drm/user
- Method: GET
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 인코딩된 JWT 데이터 |
| api_code | String | Y | API 코드 값 (UA003001100) |
| site_id | String | Y | 사이트 ID (네자리 영숫자) |
| from | String | N | 검색 기간 시작일 (YYYY-MM-DD) |
| to | String | N | 검색 기간 종료일 (YYYY-MM-DD) |
| search_keyword | String | N | 검색할 사용자 ID |
| page_unit | Int | N | 검색 결과 수 지정 (기본 값:25, 최대: 1000) |
| page_index | Int | N | 검색 결과 페이지 번호 (결과 수가 page_unit 보다 클 경우) |
- 요청 예제
curl -H 'authorization:Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJQYWxseUNvbkFQSSIsImF1ZCI6IklOS0EiLCJpc3MiOiJQYWxseUNvbiIsImFkbWluIjp0cnVlLCJ1c2VySWQiOiJ0ZXN0dXNlciJ9.p7VJmRryoaSVU2qn9PDuoDRIFxphw0N2786bR6zhELQ' 'https://service.pallycon.com/api/v2/drm/user?api_code=UA003001100&site_id=DEMO&from=2020-03-01&to=2020-03-02Response.data (Array)
Section titled “Response.data (Array)”| 키 | 유형 | 설명 |
|---|---|---|
| user_id | String | 최종 사용자의 고유 ID |
| license_cnt | Int | 해당 사용자가 요청한 DRM 라이선스 수 |
| device_cnt | Int | 해당 사용자가 이용한 클라이언트 기기 수 |
| success | Int | 성공한 라이선스 요청 수 |
| fail | Int | 실패한 라이선스 요청 수 |
- 응답 예제
{ "_links":{ "self":{ "href":"http://service.pallycon.com/api/v2/drm/user" } }, "error_code":"0000", "data":[{ "user_id":"ta5uwrsw", "license_cnt":1, "device_cnt":1, "success":1, "fail":0 }, { "user_id":"uuu", "license_cnt":1729, "device_cnt":1, "success":1729, "fail":0 }, { "user_id":"5xhsdd36", "license_cnt":1, "device_cnt":1, "success":1, "fail":0 }], "count":3 }}DRM 클라이언트 기기 조회
Section titled “DRM 클라이언트 기기 조회”이 API는 특정 기간에 DRM 라이선스를 획득한 클라이언트 기기 목록을 검색합니다.
- URL: https://service.pallycon.com/api/v2/drm/device
- Method: GET
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 인코딩된 JWT 데이터 |
| api_code | String | Y | API 코드 값 (UA003001100) |
| site_id | String | Y | 사이트 ID (네자리 영숫자) |
| from | String | N | 검색 기간 시작일 (YYYY-MM-DD) |
| to | String | N | 검색 기간 종료일 (YYYY-MM-DD) |
| search_keyword | String | N | 검색할 클라이언트 기기 ID |
| page_unit | Int | N | 검색 결과 수 지정 (기본 값:25, 최대: 1000) |
| page_index | Int | N | 검색 결과 페이지 번호 (결과 수가 page_unit 보다 클 경우) |
- 요청 예제
curl -H 'authorization:Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJQYWxseUNvbkFQSSIsImF1ZCI6IklOS0EiLCJpc3MiOiJQYWxseUNvbiIsImFkbWluIjp0cnVlLCJ1c2VySWQiOiJ0ZXN0dXNlciJ9.p7VJmRryoaSVU2qn9PDuoDRIFxphw0N2786bR6zhELQ' 'https://service.pallycon.com/api/v2/drm/device?api_code=UA003001100&site_id=DEMO&from=2020-03-01&to=2020-03-02Response.data (Array)
Section titled “Response.data (Array)”| 키 | 유형 | 설명 |
|---|---|---|
| device_id | String | 클라이언트 기기의 고유 ID |
| device_model | String | 클라이언트 기기 모델명 |
| license_cnt | Int | 해당 기기에서 요청된 DRM 라이선스 수 |
| success | Int | 성공한 라이선스 요청 수 |
| fail | Int | 실패한 라이선스 요청 수 |
- 응답 예제
{ "_links":{ "self":{ "href":"http://service.pallycon.com/api/v2/drm/device" } }, "error_code":"0000", "data":[{ "device_id":"ea2e698d95b28441422f4997d6ffd5450a", "device_model":"ChromeCDM-Windows-2", "license_cnt":1732, "success":1732, "fail":0 }, { "device_id":"13406080a61bef63aaa1d99a32f51e31c804e659", "device_model":"iOS-device", "license_cnt":1729, "success":1729, "fail":0 }, { "device_id":"ab3dd736cd46607abbd81ec942e07a620a", "device_model":"ChromeCDM-Mac-2", "license_cnt":1, "success":1, "fail":0 }, { "device_id":"d838f619-69e0-4e3a-9b48-5a1b52ce287a", "device_model":"playready-device", "license_cnt":1728, "success":1728, "fail":0 }], "count":4}CID 별 DRM 라이선스 조회
Section titled “CID 별 DRM 라이선스 조회”이 API는 특정 기간 동안 각 CID(콘텐츠 ID)에 대해 발급된 라이선스 수를 검색합니다.
- URL: https://service.pallycon.com/api/v2/drm/cid-License
- Method: GET
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 인코딩된 JWT 데이터 |
| api_code | String | Y | API 코드 값 (UA003001100) |
| site_id | String | Y | 사이트 ID (네자리 영숫자) |
| from | String | N | 검색 기간 시작일 (YYYY-MM-DD) |
| to | String | N | 검색 기간 종료일 (YYYY-MM-DD) |
| search_status | String | N | 라이선스 발급 상태로 조회 (success or fail) |
| page_unit | Int | N | 검색 결과 수 지정 (기본 값:25, 최대: 1000) |
| page_index | Int | N | 검색 결과 페이지 번호 (결과 수가 page_unit 보다 클 경우) |
- 요청 예제
curl -H 'authorization:Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJQYWxseUNvbkFQSSIsImF1ZCI6IklOS0EiLCJpc3MiOiJQYWxseUNvbiIsImFkbWluIjp0cnVlLCJ1c2VySWQiOiJ0ZXN0dXNlciJ9.p7VJmRryoaSVU2qn9PDuoDRIFxphw0N2786bR6zhELQ' 'https://service.pallycon.com/api/v2/drm/cid-drmLicense?api_code=UA003001100&site_id=DEMO&from=2020-03-01&to=2020-03-02Response.data (Array)
Section titled “Response.data (Array)”| 키 | 유형 | 설명 |
|---|---|---|
| cid | String | 콘텐츠의 고유 ID |
| license_cnt | Int | 해당 콘텐츠에 발급된 DRM 라이선스 수 |
- 응답 예제
{ "_links":{ "self":{ "href":"http://service.pallycon.com/api/v2/drm/cid-drmLicense" } }, "error_code":"0000", "data":[ { "cid":"bigbuckbunny", "license_cnt":1733 }, { "cid":"configtest", "license_cnt":1729 }], "count":2}DRM 패키징 이력 조회
Section titled “DRM 패키징 이력 조회”이 API는 특정 기간의 DRM 패키징 이력을 검색합니다.
- URL: https://service.pallycon.com/api/v2/drm/pack
- Method: GET
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 인코딩된 JWT 데이터 |
| api_code | String | Y | API 코드 값 (UA003001100) |
| site_id | String | Y | 사이트 ID (네자리 영숫자) |
| from | String | N | 검색 기간 시작일 (YYYY-MM-DD) |
| to | String | N | 검색 기간 종료일 (YYYY-MM-DD) |
| search_condition | String | N | 검색 카테고리 (cid, drm_type, user_id, device_id, device_model) |
| search_keyword | String | N | 카테고리 별 검색 키워드 (valid when search_condition is set) |
| last_created_time_cid | String | N | 조회 리스트 중 마지막 CID 값 (페이지 처리 용) |
| last_update_time | String | N | 조회 리스트 중 마지막 update_time (페이지 처리 용) |
last_created_time_cid및last_update_time이 설정되면 응답에는 설정된 값 이후의 데이터만 포함됩니다.
Response.data (Array)
Section titled “Response.data (Array)”| 키 | 유형 | 설명 |
|---|---|---|
| site_id | String | 사이트 ID (네자리 영숫자) |
| cid | String | 콘텐츠의 고유 ID |
| track | String | 콘텐츠 트랙 정보 (기본값: HD) |
| created_time | String | 최초 패키징 시간 (YYYYMMDDhhmmss) |
| update_time | String | 마지막 재패키징 시간 (YYYYMMDDhhmmss) |
DRM 연동 정보 조회
Section titled “DRM 연동 정보 조회”이 API는 DRM 연동과 관련된 정보를 조회합니다.
- URL: https://service.pallycon.com/api/v2/drm/setting/{site_id}
- Method: GET
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 인코딩된 JWT 데이터 |
| site_id | Path Variable | Y | 사이트 ID (네자리 영숫자) |
| api_code | String | Y | API 코드 값 (UA003004100) |
Response.data
Section titled “Response.data”| 키 | 유형 | 설명 |
|---|---|---|
| site_id | String | 사이트 ID (네자리 영숫자) |
| site_key | String | 서비스 사이트 연동에 필요한 암호화 키 (Base64 인코딩된 32바이트 문자열) |
| access_key | String | 추가적인 연동에 사용되는 암호화 키 |
| license_callback_url | String | 콜백 방식 라이선스 연동에 사용되는 웹 페이지 URL (지원 중단) |
| package_callback_url | String | 콜백 방식 패키져 연동에 사용되는 웹 페이지 URL (지원 중단) |
| kms_token | String | CPIX, SPEKE API 등 KMS 연동에 사용되는 토큰 |
| token_duration | Int | 라이선스 토큰 유효 기간 (초 단위) |
| iv | String | 사이트 별로 지정되는 고유 IV(Initial Vector) 값. DRM 패키징에 사용 |
DRM 연동 정보 변경
Section titled “DRM 연동 정보 변경”이 API는 DRM과 관련한 정보를 업데이트합니다.
- URL: https://service.pallycon.com/api/v2/drm/setting/{site_id}
- Method: PUT
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 인코딩된 JWT 데이터 |
| site_id | Path Variable | Y | 사이트 ID (네자리 영숫자) |
| api_code | String | Y | API 코드 값 (UA003004100) |
| license_callback_url | String | N | 콜백 방식 라이선스 연동에 사용되는 웹 페이지 URL (지원 중단됨) |
| package_callback_url | String | N | 콜백 방식 패키져 연동에 사용되는 웹 페이지 URL (지원 중단됨) |
| token_duration | Int | N | 라이선스 토큰 유효 기간 (초 단위) |
Response
Section titled “Response”이 API는 기본 응답 데이터를 응답합니다.
FairPlay 인증서 등록
Section titled “FairPlay 인증서 등록”이 API는 애플로부터 발급받은 FPS 인증서를 도브러너 서비스에 등록합니다.
- URL: https://service.pallycon.com/api/v2/drm/setting/fpscert/{site_id}
- Method: POST
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 인코딩된 JWT 데이터 |
| site_id | Path Variable | Y | 사이트 ID (네자리 영숫자) |
| api_code | String | Y | API 코드 값 (UA003004200) |
| ask | String | Y | Application secret key (ASK) 문자열 |
| key_pw | String | Y | 개인 키 암호 (최대 32 바이트) |
| fps_cert | blob | Y | FPS 인증서 파일 (.der 또는 .cer) |
| private_key | blob | Y | 개인 키 파일 (.pem) |
Response
Section titled “Response”이 API는 기본 응답 데이터를 응답합니다.
MAL, MAU, MAD 수치 조회
Section titled “MAL, MAU, MAD 수치 조회”이 API는 특정 날짜에 발생한 MAL(월간 라이선스 발급 수), MAU(월간 활성 사용자 수) 및 MAD(월간 활성 기기 대수) 수치를 조회합니다.
- URL: https://service.pallycon.com/api/v2/drm/statistics/targetDate
- Method: GET
Request
Section titled “Request”| 파라미터 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
| Authorization | Header | Y | 회원 정보가 있는 암호화된 jwt |
| api_code | String | Y | api 코드 : UA003003100 |
| site_id | String | Y | 사이트 아이디 |
| target_date | String | Y | 조회 대상 날짜 (YYYY-MM-DD) |
Response.data (Object)
Section titled “Response.data (Object)”| 키 | 유형 | 설명 |
|---|---|---|
| license_cnt | Integer | MAL (Monthly Active Licenses) |
| user_acc_cnt | Integer | MAU (Monthly Active Users) |
| device_acc_cnt | Integer | MAD (Monthly Active Devices) |
| target_date | Integer | 조회 대상 날짜 |