Media Authentication Management
Notice
This document is a machine-translated draft and is currently undergoing review. Some content may be inaccurate or differ from the original Korean version. For the most precise information, refer to the Korean documentation.
Feature scope by version
- Not supported in v2: The media authentication feature is not supported in v2.
- Common authentication: All API versions use a common authentication method via a query string parameter (
?access_token=). For the common specification on error determination criteria, refer to the Core changes section of the API v3 Migration Guide.
Kollus encryption
- Existing (v1):
POST/media_auth/media_token/get_kollus_encrypt - Existing (v2): Not supported
- Changed (v3):
POST/media/kollus-encrypt
Changes
- Request structure maintained: The specification requiring the
source_stringfield (the string to be encrypted) as a mandatory parameter in the request body remains the same as in v1. - Response data format changed: In v1, the encryption result was returned with a '
|V1.0' suffix appended (result|V1.0), but in v3, only the pure encrypted string data with the suffix removed is returned in theencodedfield.
Request body and response structure details
Create user key
- Existing (v1):
POST/media_auth/user_key/create - Existing (v2): Not supported
- Changed (v3):
POST/media/user-key
Changes
- Unified authentication: The
content_provider_keyfield, which was used to identify the service account, has been removed. From v3 onward, service account permissions are identified viaaccess_token. - Required parameters: The
remote_addranduser_agentfields have become required parameters from v3 onward. - Custom expiration time: In v1, the validity period after issuance was fixed at 6 hours, but in v3, the expiration time can be directly specified via the
user_key_timeout(sec) field.
Request body and response structure details
Request body
| Field | Data Type | Required in v1 | Required in v3 | Description |
|---|---|---|---|---|
client_user_id | String / Integer | Required (Integer) | Required (String) | Customer user ID |
content_provider_key | String | Required | - | Service account key (replaced by access_token) |
remote_addr | String | Optional | Required | IP address of the connecting client |
user_agent | String | Optional | Required | Browser environment of the connecting client |
user_key_timeout | Integer | - | Optional | Key validity duration (sec) |
Response structure comparison
- v1
{
"error": 0,
"message": "success",
"result": "key"
}
- v3
{
"data": {
"user_key": "string"
},
"status": "ok"
}
Reissue user key
- Existing (v1):
POST/media_auth/user_key/update(extend expiration and replace key) - Existing (v2): Not supported
- Changed (v3):
PUT/media/user-key/{user_key}(reissue)
Business logic change
In v3, the existing user key is immediately invalidated and a new key is reissued.
Therefore, if client logic assumes the user_key remains the same, it must be updated to handle replacement with the new key when transitioning to v3.
Response structure details
Response structure comparison
- v1
{
"error": 0,
"message": "success",
"result": "string"
}
- v3
{
"data": {
"user_key": "string"
},
"status": "ok"
}
Delete user key
- Existing (v1):
POST/media_auth/user_key/delete(sent in request body) - Existing (v2): Not supported
- Changed (v3):
DELETE/media/user-key/{user_key}(sent as path parameter)
Changes
- Method and delivery method changed: The HTTP method has changed from
POSTtoDELETE. Theuser_keyto be deleted must now be passed as a path parameter rather than in the request body. - Authentication parameter removed: The
content_provider_keyfield has been removed (replaced byaccess_token).
Retrieve watermarking identification code
- Existing (v1/v2): Not supported
- Changed (v3):
GET/media/watermarking-code