API для HTTP-ресурса
Описание
В этом разделе описаны методы API для создания, удаления и изменения конфигурации ваших ресурсов. Также здесь Вы найдёте информацию по управлению кэшом и получению статистической информации.
Все ответы (включая ошибки) возвращаются в формате JSON.
Внимание!
- Установлено ограничение на количество обращений к API:
- не больше 20 обращений в минуту для запросов конфигурирования HTTP-ресурсов (POST, PUT);
- не больше 125 обращений в минуту для запросов управления кэшем.
- В системе существует ограничение на ресурсы - до 100 шт. Если вам нужно больше ресурсов, то обратитесь к вашему персональному менеджеру или в саппорт.
Ниже приведены примеры для управления и конфигурации сервисов, связанных с услугой HTTP-кэширование.
Общий конфиг
Ниже приведён пример общего конфига, а в последующих разделах раскрываются примеры конфигурации каждого из разделов.
Значком 💲 обозначены платные услуги. Стоимость можно уточнить у менеджера.
http resource json object (HRJO) - data from request/response HRJO structure and keys: { id <string> - uid of resource (used in api url) name <string> - identificator for web UI (required) origin <json> - section for traffic origin description (required) certificate <integer> - id of created certificate names <json> - section for names description robots <json> - section for robots file description headers <json> - section for specific headers description cache <json> - section for cache options description client_cache <json> - section for extra cache options description auth <json> - 💲 section for auth options description cors <json> - section for cors description limitations <json> - 💲 section for geo, ip, referer or useragent limitations modern_tls_only <boolean> - use only modern versions of TLS strong_ssl_ciphers <boolean> - use strong SSL ciphers (required modern_tls_only) locations <json> - section for locations description compress <json> - 💲 section for compress options description ioss <boolean> - 💲 section for ioss options description packaging <json> - section for packaging options description tuning <string> - distribution optimization type (one of "default", "large" (for large files > 20 Mbytes), "live" (for HTTP LIVE streams)) slice_size_megabytes <integer> - size of slice in MB (only for tuning="large") }
origin section
{ https <boolean> - use or not https during requests to origin ssl_verify <boolean> - check or not certificate during requests to origin (required https) s3_bucket <string> - permitted bucket, set when specifying S3-domain aws <json> - use aws authorization during requests to origin hostname <string> - set host header during requests to origin servers <json> - client nodes description read_timeout <string> - time in seconds, e.g. "10s" send_timeout <string> - time in seconds, e.g. "10s" connect_timeout <string> - time in seconds, e.g. "10s" }
aws section
{
auth <json> - authorization keys
}
aws auth section
{ access_key <string> - access key secret_key <string> - secret key }
servers section
{ <client_domain/ip_address>: client node address <json> }
client node address section
{ port <integer> - client node port (default 80 and 443) weight <integer> - load balancing parameters max_fails <integer> - load balancing parameters backup <boolean> - use node only in backup mode }
names section
list of string cnames, f.e. ["alias1.client.cdn.ru"]
robots section
{ type <string> - "deny", "custom" or "cached" robotsContent <string> - client’s robots.txt text (only for "custom" type) }
headers section
{ request <json> - headers for requests to origin response <json> - header for customer responses }
request headers section
{ <header_name>: <header_value> }
response headers section
{ <header_name>: <header_value> }
cache section
{ disable <boolean> - do not cache content consider_args <boolean> - use querystring while cache process valid <json> - time of caching }
valid section
{ 2xx <string> - cache ttl for 2xx response codes 3xx <string> - cache ttl for 3xx response codes 4xx <string> - cache ttl for 4xx response codes 5xx <string> - cache ttl for 5xx response codes force <boolean> - force cache update on clientside }
client cache section
{
expires <integer> - expire cache time
}
cors section
{ disable <boolean> - disable cors (default: false) domains <list of strings> - list of allowed domains headers <list of strings> - list of secure request headers (Accept, Accept-Language, Content-Type, Content-Language are allowed by default) expose <list of strings> - list of upper level API accessible headers (Cache-Control, Content-Language, Content-Type, Expires, Last-Modified, Pragma are allowed by default) methods <list of strings> - list of safe methods (GET, HEAD, POST are allowed by default) max_age <integer> - preflight request response lifetime credentials <boolean> - set an Access-Control-Allow-Credentials header }
compress section $
{
brotli <boolean> - use data compression format Brotli
}
limitations section $
{ geo <list> - list of rules for limitation by countries and regions ip <list> - list of rules for limitation by ip addresses referer <list> - list of rules for limitation by referer useragent <list> - list of rules for limitation by useragent }
limitations rules section
[{ default_action <string> - "allow" or "deny" exclude <list> - list of exclusions times <list> - list of time intervals }]
limitations rules times section
[{ start <string> - start of time interval in ISO 8601-1:2019 extended format or null end <string> - end of time interval in ISO 8601-1:2019 extended format or null }]
limitations geo exclude section
[{ country <string> - country code in ISO 3166-1 alpha-2 region <string> - region code in ISO 3166-2 or null action <string> - "deny" or "allow" }]
limitations referer exclude section
[{
referer <string> - domain name or regular expression
}]
limitations ip exclude section
[{
ip <string> - IP address to exclude in CIDR notation
}]
limitations useragent exclude section
[{
useragent <string> - user agent or regular expression
}]
locations section
{ key <string> - path to content: locations params <json> }
locations params section
{ headers <json> - like global section cache <json> - like global section client_cache <json> - like global section auth <json> - 💲 like global section cors <json> - like global section compress <json> - 💲 like global section ioss <boolean> - 💲 like global section limitations <json> - 💲 like global section packaging <json> - like global section }
packaging params section (описание услуги)
{ <format> <json> - options for the video <format> from the list: mp4 }
packaging format params section
{ output_protocols <list of strings> - list of formats in which the video will be distributed (HLS, MPEG-DASH) }
Минимальная конфигурация
Пример минимального конфига с ориджином example.com
{ "name": "example", "origin": { "servers": { "example.com": {} } }, }
В этом примере сеть CDNvideo закэширует весь статический контент example.com , используя настройки по умолчанию.
Конфигурация для HTTP-ресурса
Получить все ресурсы
URL: https://api.cdnvideo.ru/cdn/api/v1/<your_account_name>/resource/http/
- Тип запроса: GET
- Заголовки: CDN-AUTH-TOKEN
- Тип данных ответа: JSON Array или JSON Object в случае ошибки
Код ответа | Данные ответа | Формат ответа | Описание |
---|---|---|---|
200 | Все HTTP-ресурсы для аккаунта или описание ошибки | JSON | Получен список ресурсов или ошибка |
403 | None | None | Запрещено |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
Пример запроса
curl -H "CDN-AUTH-TOKEN: $TOKEN" https://api.cdnvideo.ru/cdn/api/v1/<account_name>/resource/http/
Пример успешного ответа
[{"origin": {"https": false, "servers": {"test.test.te": {"backup": false, "port": 80, "weight": 1}}}, "cdn_domain": "krvdpfc0t0.a.trbcdn.net", "name": "default2", "active": true, "cache": {"consider_args": false}, "robots": {"type": "deny"}, "names": [], "id": "krvdpfc0t0"}, {"origin": {"https": false, "servers": {"test.test.tet": {"backup": false, "port": 80, "weight": 1}}}, "cdn_domain": "zm4rrn4mkt.a.trbcdn.net", "name": "default", "active": true, "cache": {"consider_args": false}, "robots": {"type": "custom", "robotsContent": "1\n"}, "names": [], "id": "zm4rrn4mkt"}]
Пример неуспешного ответа
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"}
Обратите внимание
Для получения неактивных ресурсов используйте query-параметр "active" с значением "false"
Получить конкретный ресурс
URL: https://api.cdnvideo.ru/cdn/api/v1/<your_account_name>/resource/http/<resource_id>
- Тип запроса: GET
- Заголовки: CDN-AUTH-TOKEN
- Тип данных ответа: JSON Object
Код ответа | Данные ответа | Формат ответа | Описание |
---|---|---|---|
200 | Конкретный HTTP-ресурс для аккаунта или описание ошибки | JSON | Получен ресурс или ошибка |
403 | None | None | Запрещено |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
Пример запроса
curl -H "CDN-AUTH-TOKEN: $TOKEN" https://api.cdnvideo.ru/cdn/api/v1/<account_name>/resource/http/<resource_id>
Пример успешного ответа
{"origin": {"https": false, "servers": {"test.test.te": {"backup": false, "port": 80, "weight": 1}}}, "cdn_domain": "krvdpfc0t0.a.trbcdn.net", "name": "default2", "active": true, "cache": {"consider_args": false}, "robots": {"type": "deny"}, "names": [], "id": "krvdpfc0t0"}
Пример неуспешного ответа
{"status": "error", "message": "Invalid Token", "description": "Invalid or expired token"}
Обратите внимание
Для получения неактивного ресурса используйте query-параметр "active" с значением "false"
Создать ресурс
URL: https://api.cdnvideo.ru/cdn/api/v1/<your_account_name>/resource/http/
- Тип запроса: POST
- Заголовки: CDN-AUTH-TOKEN
- Тело запроса: JSON с данными создаваемого ресурса
- Тип данных ответа: JSON Object
Код ответа | Данные ответа | Формат ответа | Описание |
---|---|---|---|
200 | task_id, resource_id или описание ошибки | JSON | Создан, id задачи в общей очереди задач или ошибка |
400 | None | None | Неверный запрос |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
Пример запроса
curl -H "CDN-AUTH-TOKEN: $TOKEN" \ -X POST \ -d '{"origin": {"servers": {"<origin_host>": {"port": 80}}}, "name": "<resource_name>"}' \ https://api.cdnvideo.ru/cdn/api/v1/<account_name>/resource/http/
Пример успешного ответа
{"status": "accept", “task_id": "20180402162358692400", "resource_id": "v7sdnx3ytm"}
Пример неуспешного ответа
{"status": "error", "message": "value invalid name", "description": "Json invalid name is not uniq in account <account_name>"}
Изменить ресурс
Обратите внимание
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса.
URL: https://api.cdnvideo.ru/cdn/api/v1/<your_account_name>/resource/http/<resource_id>
- Тип запроса: PUT
- Заголовки: CDN-AUTH-TOKEN
- Тело запроса: JSON с новыми данными ресурса
- Тип данных ответа: JSON Object
Код ответа | Данные ответа | Формат ответа | Описание |
---|---|---|---|
200 | task_id или описание ошибки | None | Изменен, id задачи в общей очереди задач или ошибка |
400 | None | None | Неверный запрос |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
Пример запроса
curl -H "CDN-AUTH-TOKEN: $TOKEN" \ -X PUT \ -d '{"origin": {"servers": {"<new_origin_host>": {"port": 80}}}, "name": "<new_resource_name>"}' \ https://api.cdnvideo.ru/cdn/api/v1/<account_name>/resource/http/<resource_id>
Пример успешного ответа
{"status": "accept", “task_id": "20180402162358692401"}
Пример неуспешного ответа
{"status": "error", "message": "Json invalid", "description": "Key incorrect or not found ( origin )"}
Деактивация ресурса
Обратите внимание
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса.
URL: https://api.cdnvideo.ru/cdn/api/v1/<your_account_name>/resource/http/<resource_id>
- Тип запроса: PUT
- Заголовки: CDN-AUTH-TOKEN
- Тип данных ответа: JSON Object
Код ответа | Данные ответа | Формат ответа | Описание |
---|---|---|---|
200 | task_id или описание ошибки | JSON | Деактивирован, id задачи в общей очереди задач или ошибка |
400 | None | None | Неверный запрос |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
Пример запроса
curl -H "CDN-AUTH-TOKEN: $TOKEN" \ -X PUT \ -d '{"active": false, "origin": {"servers": {"<origin_host>": {"port": 80}}}, "name": "<resource_name>"}' \ https://api.cdnvideo.ru/cdn/api/v1/<account_name>/resource/http/<resource_id>
Пример успешного ответа
{"status": "accept", "task_id": "20180402162358692413"}
Пример неуспешного ответа
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"}
Активация ресурса
Обратите внимание
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса.
URL: https://api.cdnvideo.ru/cdn/api/v1/<your_account_name>/resource/http/<resource_id>
- Тип запроса: PUT
- Заголовки: CDN-AUTH-TOKEN
- Тип данных ответа: JSON Object
Код ответа | Данные ответа | Формат ответа | Описание |
---|---|---|---|
200 | task_id или описание ошибки | JSON | Активирован, id задачи в общей очереди задач или ошибка |
400 | None | None | Неверный запрос |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
Пример запроса
curl -H "CDN-AUTH-TOKEN: $TOKEN" \ -X PUT \ -d '{"active": true, "origin": {"servers": {"<origin_host>": {"port": 80}}}, "name": "<resource_name>"}' \ https://api.cdnvideo.ru/cdn/api/v1/<account_name>/resource/http/<resource_id>
Пример успешного ответа
{"status": "accept", "task_id": "20180402162358692413"}
Пример неуспешного ответа
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"}
Локальная авторизация $
Создание ресурса с локальной авторизацией
URL: https://api.cdnvideo.ru/cdn/api/v1/<your_account_name>/resource/http/
- Тип запроса: POST
- Заголовки: CDN-AUTH-TOKEN
- Тело запроса: JSON с данными создаваемого ресурса и параметрами локальной авторизации
- Тип данных ответа: JSON Object
Код ответа | Данные ответа | Формат ответа | Описание |
---|---|---|---|
200 | task_id, resource_id или описание ошибки | JSON | Создан, id задачи в общей очереди задач или ошибка |
400 | None | None | Неверный запрос |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
Пример запроса
curl -H "CDN-AUTH-TOKEN: $TOKEN" \ -X POST \ -d '{"auth": {"md5": {"secret": "123", "forever": true, "anywhere": true}}, "origin": {"servers": {"<origin_host>": {"port": 80}}}, "name": "<resource_name>"}' \ https://api.cdnvideo.ru/cdn/api/v1/<account_name>/resource/http/
Пример успешного ответа
{"status": "accept", “task_id": "20180402162358692400", "resource_id": "v7sdnx3ytm"}
Пример неуспешного ответа
{"status": "error", "message": "value invalid name", "description": "Json invalid name is not uniq in account <account_name>"}
Изменение локальной авторизации ресурса
Обратите внимание
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса.
URL: https://api.cdnvideo.ru/cdn/api/v1/<your_account_name>/resource/http/<resource_id>
- Тип запроса: PUT
- Заголовки: CDN-AUTH-TOKEN
- Тело запроса: JSON с измененными параметрами локальной авторизации
- Тип данных ответа: JSON Object
Код ответа | Данные ответа | Формат ответа | Описание |
---|---|---|---|
200 | task_id или описание ошибки | None | Изменен, id задачи в общей очереди задач или ошибка |
400 | None | None | Неверный запрос |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
Пример запроса
curl -H "CDN-AUTH-TOKEN: $TOKEN" \ -X PUT \ -d '{"auth": {"md5": {"secret": "456", "forever": true}}, "origin": {"servers": {"<origin_host>": {"port": 80}}}, "name": "<resource_name>"}' \ https://api.cdnvideo.ru/cdn/api/v1/<account_name>/resource/http/<resource_id>
Пример успешного ответа
{"status": "accept", "task_id": "20180402162358692413"}
Пример неуспешного ответа
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"}
Внешняя авторизация $
Создание ресурса с внешней авторизацией
URL: https://api.cdnvideo.ru/cdn/api/v1/<your_account_name>/resource/http/
- Тип запроса: POST
- Заголовки: CDN-AUTH-TOKEN
- Тело запроса: JSON с данными создаваемого ресурса и параметрами внешней авторизации
- Тип данных ответа: JSON Object
Код ответа | Данные ответа | Формат ответа | Описание |
---|---|---|---|
200 | task_id, resource_id или описание ошибки | JSON | Создан, id задачи в общей очереди задач или ошибка |
400 | None | None | Неверный запрос |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
Пример запроса
curl -H "CDN-AUTH-TOKEN: $TOKEN" \ -X POST \ -d '{"auth": {"url": "https://test.com/yourscript"}, "origin": {"servers": {"<origin_host>": {"port": 80}}}, "name": "<resource_name>"}' \ https://api.cdnvideo.ru/cdn/api/v1/<account_name>/resource/http/
Пример успешного ответа
{"status": "accept", “task_id": "20180402162358692400", "resource_id": "v7sdnx3ytm"}
Пример неуспешного ответа
{"status": "error", "message": "value invalid name", "description": "Json invalid name is not uniq in account <account_name>"}
Изменение внешней авторизации ресурса
Обратите внимание
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса.
URL: https://api.cdnvideo.ru/cdn/api/v1/<your_account_name>/resource/http/<resource_id>
- Тип запроса: PUT
- Заголовки: CDN-AUTH-TOKEN
- Тело запроса: JSON с измененными параметрами внешней авторизации
- Тип данных ответа: JSON Object
Код ответа | Данные ответа | Формат ответа | Описание |
---|---|---|---|
200 | task_id или описание ошибки | None | Изменен, id задачи в общей очереди задач или ошибка |
400 | None | None | Неверный запрос |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
Пример запроса
curl -H "CDN-AUTH-TOKEN: $TOKEN" \ -X PUT \ -d '{"auth": {"url": "https://test.com/yourscript2"}, "origin": {"servers": {"<origin_host>": {"port": 80}}}, "name": "<resource_name>"}' \ https://api.cdnvideo.ru/cdn/api/v1/<account_name>/resource/http/<resource_id>
Пример успешного ответа
{"status": "accept", "task_id": "20180402162358692413"}
Пример неуспешного ответа
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"}
Ограничения раздачи $
Создание ресурса с ограничением раздачи по странам, IP адресам, referer, или User-Agent
URL: https://api.cdnvideo.ru/cdn/api/v1/<your_account_name>/resource/http/
- Тип запроса: POST
- Заголовки: CDN-AUTH-TOKEN
- Тело запроса: JSON с данными создаваемого ресурса и параметрами ограничений
- Тип данных ответа: JSON Object
Код ответа | Данные ответа | Формат ответа | Описание |
---|---|---|---|
200 | task_id, resource_id или описание ошибки | JSON | Создан, id задачи в общей очереди задач или ошибка |
400 | None | None | Неверный запрос |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
Пример запроса
curl -H "CDN-AUTH-TOKEN: $TOKEN" \ -X POST \ -d '{"origin": {"servers": {"<origin_host>": {"port": 80}}}, "name": "<resource_name>", "limitations": {"geo": [{"default_action": "allow", "exclude": [{"country": "RU", "region": "BEL", "action": "deny"}], "times": [{"start": "2019-07-20T14:17:00Z", "end": "2019-07-20T14:18:00Z"}]}, {"default_action": "allow", "exclude": [{"country": "RU", "region": "CR", "action": "deny"}, {"country": "RU", "region": null, "action": "deny"}], "times": [{"start": "2019-07-20T14:19:00Z", "end": null}]}], "ip": [{"default_action": "deny", "exclude": [{"ip":"192.168.0.1/24"}], "times": [{"start": "2019-07-20T14:17:00Z", "end": "2019-07-20T14:18:00Z"}]}], "referer": [{"default_action": "deny", "exclude": [{"referer":"*.ru"}], "times": [{"start": null, "end": "2019-07-20T14:18:00Z"}]}], "useragent": [{"default_action": "deny", "exclude": [{"useragent": "browser_name"}], "times": [{"start": "2019-07-20T14:17:00Z", "end": "2019-07-20T14:18:00Z"}]}]}}' \ https://api.cdnvideo.ru/cdn/api/v1/<account_name>/resource/http/
Пример успешного ответа
{"status": "accept", “task_id": "20180402162358692400", "resource_id": "v7sdnx3ytm"}
Пример неуспешного ответа
{"status": "error", "message": "json invalid", "description": "limitations : Invalid time interval: start:2021-05-11T19:12:00Z, end:2021-05-09T22:12:00Z"}
Изменение ограничений раздачи ресурса
Обратите внимание
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса.
URL: https://api.cdnvideo.ru/cdn/api/v1/<your_account_name>/resource/http/<resource_id>
- Тип запроса: PUT
- Заголовки: CDN-AUTH-TOKEN
- Тело запроса: JSON с измененными параметрами ограничений
- Тип данных ответа: JSON Object
Код ответа | Данные ответа | Формат ответа | Описание |
---|---|---|---|
200 | task_id или описание ошибки | None | Изменен, id задачи в общей очереди задач или ошибка |
400 | None | None | Неверный запрос |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
Пример запроса
curl -H "CDN-AUTH-TOKEN: $TOKEN" \ -X PUT \ -d '{"origin": {"servers": {"<origin_host>": {"port": 80}}}, "name": "<resource_name>", "limitations": { "ip": [{"default_action": "deny", "exclude": [{"ip":"192.168.0.1/24"}], "times": []}]}}' \ https://api.cdnvideo.ru/cdn/api/v1/<account_name>/resource/http/<resource_id>
Пример успешного ответа
{"status": "accept", "task_id": "20180402162358692413"}
Пример неуспешного ответа
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"}
Расширение зон раздачи $
Подключение дополнительных зон раздачи в зарубежном сегменте сети. С географией покрытия Вы можете ознакомиться на карте сети.
Посмотреть текущую конфигурацию по всем ресурсам
URL: https://api.cdnvideo.ru/cdn/api/v1/<your_account_name>/cncconfiguration/
- Тип запроса: GET
- Заголовки: CDN-AUTH-TOKEN
- Тип данных ответа: JSON Object
Код ответа | Данные ответа | Формат ответа | Описание |
---|---|---|---|
200 | code: тип integer, message: тип string, data: тип list с объектом по каждому конкретному ресурсу: [{areas: тип list, certificate: тип integer или пустая string, или null, cnc_configured: тип bool, is_changes_apply: тип bool, resource_id: тип string}, ] | JSON | OK |
401 | None | None | Не авторизован |
500 | None | None | Внутренняя ошибка сервера |
Возможные значения areas:
Значение | Описание |
---|---|
am | Америка |
apac | Азиатско-Тихоокеанский регион |
emea | Европа, Ближний Восток, Африка |
Пример запроса
curl -H "CDN-AUTH-TOKEN: $TOKEN" \ https://api.cdnvideo.ru/cdn/api/v1/cpfgdakp/cncconfiguration/
Пример успешного ответа
{ "message": "Ok", "code": 200, "data": [ { "is_changes_apply": true, "cnc_configured": true, "certificate": "", "areas": ["apac", "emea"], "resource_id": "lajjncnn6d" }, { "is_changes_apply": true, "cnc_configured": false, "certificate": 1, "areas": ["am"], "resource_id": "ni1zohncn2" } ] }
Посмотреть текущую конфигурацию по конкретному ресурсу
URL: https://api.cdnvideo.ru/cdn/api/v1/<your_account_name>/cncconfiguration/<resource_id>
- Тип запроса: GET
- Заголовки: CDN-AUTH-TOKEN
- Тип данных ответа: JSON Object
Код ответа | Данные ответа | Формат ответа | Описание |
---|---|---|---|
200 | code: тип integer, message: тип string, data: {areas: тип list, certificate: тип integer или пустая string, или null, cnc_configured: тип bool, is_changes_apply: тип bool} | JSON | OK |
401 | None | None | Не авторизован |
500 | None | None | Внутренняя ошибка сервера |
Возможные значения areas:
Значение | Описание |
---|---|
am | Америка |
apac | Азиатско-Тихоокеанский регион |
emea | Европа, Ближний Восток, Африка |
Пример запроса
curl -H "CDN-AUTH-TOKEN: $TOKEN" \ https://api.cdnvideo.ru/cdn/api/v1/cpfgdakp/cncconfiguration/lajjncnn6d
Пример успешного ответа
{ "message": "Ok", "code": 200, "data": { "is_changes_apply": true, "cnc_configured": true, "certificate": "", "areas": ["apac", "emea"] } }
Подключить/Изменить зоны раздачи $
URL: https://api.cdnvideo.ru/cdn/api/v1/<your_account_name>/cncconfiguration/<resource_id>
- Тип запроса: POST
- Заголовки: CDN-AUTH-TOKEN
- Тело запроса: JSON с данными конфигурации
- Тип данных ответа: JSON Object
Описание параметров тела запроса:
Имя параметра | Тип параметра | Обязательный |
---|---|---|
JSON Object | Да | |
areas | Array, одно или несколько значений из ("apac", "am", "emea") | Да |
certificate | String или None | Нет |
Возможные коды ответа:
Код ответа | Данные ответа | Формат ответа | Описание |
---|---|---|---|
200 | message: тип string, code: тип integer | JSON | ОК |
400 | None | None | Неверный запрос |
401 | None | None | Не авторизован |
409 | None | None | Конфликт (предыдущее изменение еще не применилось) |
Пример запроса
curl -X POST -d '{"areas": ["apac", "emea"]}' \ -H "CDN-AUTH-TOKEN: $TOKEN" \ https://api.cdnvideo.ru/cdn/api/v1/cpfgdakp/cncconfiguration/lajjncnn6d
Пример успешного ответа
{ "message": "Ok", "code": 200 }
Отключить дополнительные зоны раздачи
URL: https://api.cdnvideo.ru/cdn/api/v1/<your_account_name>/cncconfiguration/<resource_id>
- Тип запроса: POST
- Заголовки: CDN-AUTH-TOKEN
- Тело запроса: JSON с данными конфигурации
- Тип данных ответа: JSON Object
Описание параметров тела запроса:
Имя параметра | Тип параметра | Обязательный |
---|---|---|
JSON Object | Да | |
areas | Пустой Array [ ] | Да |
certificate | String или None | Нет |
Возможные коды ответа:
Код ответа | Данные ответа | Формат ответа | Описание |
---|---|---|---|
200 | message: тип string, code: тип integer | JSON | ОК |
400 | None | None | Неверный запрос |
401 | None | None | Не авторизован |
409 | None | None | Конфликт (предыдущее изменение еще не применилось) |
Пример запроса
curl -X POST -d '{"areas": []}' \ -H "CDN-AUTH-TOKEN: $TOKEN" \ https://api.cdnvideo.ru/cdn/api/v1/cpfgdakp/cncconfiguration/lajjncnn6d
Пример успешного ответа
{ "message": "Ok", "code": 200 }