ODK API Portal
한국어
  • Overview
  • MediaIO
  • Continue Watching
  • Player Event
  • Deprecated
  • Recent changes
Information
carousel-group
Carousel
category-channels
category-navigation
category
channels
consent
    Get current consent for this devicegetSave consent snapshot for this devicepost
content
Continue Watching
cover
deletion-request
device-data
Favorites
multichannel
Onboarding
parental-control
Amasian Parental PIN
playback
policy
recommendation
search
season
series
service-config
Schemas
powered by Zudoku
ODX API v4
ODX API v4

consent


Get current consent for this device

GET
https://odkmedia.io
/odx/api/v4/consent/

Returns the stored consent snapshot for the requesting device (did header) and service (Service-Name header).

status semantics:

  • none: no consent stored → the client should show the consent screen
  • outdated: stored consent exists but its policy_version differs from the policy_version query param → the client should re-prompt
  • valid: consent stored (and matches policy_version if provided)

Get current consent for this device › query Parameters

policy_version
​string

Current consent-document version bundled in the client. If provided and different from the stored version, status becomes outdated.

Get current consent for this device › Headers

did
​string · required

Device identifier (required)

Example: 00000000-0000-4000-8000-000000000000
Service-Name
​string

Service name (e.g. amasian, lg-channel-vietnam). Defaults to amasian.

Example: amasian

Get current consent for this device › Responses

200
ConsentResponse
consents
​readOnly

Per-purpose consent flags, e.g. {"advertising": true, "analytics": false}.

device_id
​string · readOnly
policy_version
​string · readOnly

Version of the consent document the user agreed to.

policy_version_id
​integer · readOnly

Reference to amasian_policy AmasianPolicyVersion.id (the bundle the user consented to). Stored by value across the bounded-context boundary (no DB FK). Nullable for services without a managed policy.

service_name
​string · readOnly

서비스 구분자 (예: amasian, lg-channel-vietnam)

Default: amasian
updated_at
​string · date-time · readOnly
version
​integer · readOnly

Increments on each real change (no-op re-saves do not bump).

GET/odx/api/v4/consent/
curl https://odkmedia.io/odx/api/v4/consent \ --header 'did: 00000000-0000-4000-8000-000000000000'
Example Responses
{ "consents": {}, "device_id": "device_id", "policy_version": "policy_version", "policy_version_id": 0, "service_name": "amasian", "updated_at": "2024-08-25T15:00:00Z", "version": 0 }
json
application/json

Save consent snapshot for this device

POST
https://odkmedia.io
/odx/api/v4/consent/

Saves the full per-purpose consent snapshot for the requesting device.

Response status semantics:

  • new: first consent for this device+service (HTTP 201)
  • changed: values differ from the stored snapshot (HTTP 200)
  • unchanged: identical to the stored snapshot — nothing written (HTTP 200)

Save consent snapshot for this device › Headers

did
​string · required

Device identifier (required)

Example: 00000000-0000-4000-8000-000000000000
Service-Name
​string

Service name (e.g. amasian, lg-channel-vietnam). Defaults to amasian.

Example: amasian

Save consent snapshot for this device › Request Body

POST body 검증. 닫힌 목적 키 셋을 강제한다: - 알 수 없는 목적 키 → 400 - 누락된 목적 키 → 400 (전체 스냅샷 저장이 감사에 안전)
ConsentSaveRequest
​object · required
policy_version
​string · minLength: 1 · maxLength: 50 · required
policy_version_id
​integer | null

amasian_policy AmasianPolicyVersion.id (from the policy read API).

Save consent snapshot for this device › Responses

ConsentResponse
consents
​readOnly

Per-purpose consent flags, e.g. {"advertising": true, "analytics": false}.

device_id
​string · readOnly
policy_version
​string · readOnly

Version of the consent document the user agreed to.

policy_version_id
​integer · readOnly

Reference to amasian_policy AmasianPolicyVersion.id (the bundle the user consented to). Stored by value across the bounded-context boundary (no DB FK). Nullable for services without a managed policy.

service_name
​string · readOnly

서비스 구분자 (예: amasian, lg-channel-vietnam)

Default: amasian
updated_at
​string · date-time · readOnly
version
​integer · readOnly

Increments on each real change (no-op re-saves do not bump).

POST/odx/api/v4/consent/
curl https://odkmedia.io/odx/api/v4/consent \ --request POST \ --header 'Content-Type: application/json' \ --header 'did: 00000000-0000-4000-8000-000000000000' \ --data '{ "consents": { "key": true }, "policy_version": "policy_version", "policy_version_id": 0 }'
Example Request Body
{ "consents": { "key": true }, "policy_version": "policy_version", "policy_version_id": 0 }
json
Example Responses
{ "consents": {}, "device_id": "device_id", "policy_version": "policy_version", "policy_version_id": 0, "service_name": "amasian", "updated_at": "2024-08-25T15:00:00Z", "version": 0 }
json
application/json

channelscontent