RTMP/RTSP-publish
Получить все ресурсы
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: GET
- Заголовки: CDN-AUTH-TOKEN
- Тип данных ответа: JSON Array или JSON Object в случае ошибки
Доступные параметры query string (* - обязательный параметр):
Название | Описание | Допустимые значения | Значение по умолчанию |
---|
active | Фильтр по активным/деактивированным ресурсам | true / false | true |
Возможные коды ответа:
Код ответа | Данные ответа | Формат ответа | Описание |
---|
200 | Все LIVE-ресурсы для аккаунта или описание ошибки | JSON | Получен список ресурсов или ошибка |
403 | None | None | Запрещено |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
curl -H "CDN-AUTH-TOKEN: $TOKEN" https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
[
{
"name": "test_resource",
"settings": {
"RTMP-publish": {
"domain": "p0q2zwj4yih.a.trbcdn.net",
"pub_protocol": "rtmp",
"master_stream": "jws2w_test_resource.smil",
"primary": "a.r.rcloud.ru",
"application": "livemaster",
"dist_protocol": "https",
"backup": "b.r.rcloud.ru"
}
},
"streams": {
"someid1": {
"stream_name": "someid1_stream01",
"password": "RtdHESB7aA7rdKDCuVYn5W9Zp",
"resolution": "720p",
"name": "stream01",
"smil": {
"BANDWIDTH": "5000000",
"RESOLUTION": "1280x720"
}
},
"someid2": {
"stream_name": "someid2_stream02",
"password": "dRKLVu6v90P5PhSAMIGSIgKuh",
"resolution": "1080p",
"name": "stream02",
"smil": {
"BANDWIDTH": "10000000",
"RESOLUTION": "1920x1080"
}
}
},
"active": true,
"creation_ts": 1542872090,
"type": "RTMP-publish",
"id": "1163546047721937079_p0q2zwj4yih",
"resources": {
"http": "test"
},
"cdn_domain": "test.a.trbcdn.net",
"description": ""
}
] |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
Для получения неактивных ресурсов используйте query-параметр "active" с значением "false" |
Получить конкретный ресурс
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<resource_id>
- Тип запроса: GET
- Заголовки: CDN-AUTH-TOKEN
- Тип данных ответа: JSON Object
Доступные параметры query string (* - обязательный параметр):
Название | Описание | Допустимые значения | Значение по умолчанию |
---|
active | Фильтр по активным/деактивированным ресурсам | true / false | true |
Возможные коды ответа:
Код ответа | Данные ответа | Формат ответа | Описание |
---|
200 | Конкретный LIVE-ресурс для аккаунта или описание ошибки | JSON | Получен ресурс или ошибка |
403 | None | None | Запрещено |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
curl -H "CDN-AUTH-TOKEN: $TOKEN" https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/1163546047721937079_p0q2zwj4yih |
{
"name": "test_resource",
"settings": {
"RTMP-publish": {
"domain": "p0q2zwj4yih.a.trbcdn.net",
"pub_protocol": "rtmp",
"master_stream": "jws2w_test_resource.smil",
"primary": "a.r.rcloud.ru",
"application": "livemaster",
"dist_protocol": "https",
"backup": "b.r.rcloud.ru"
}
},
"streams": {
"someid1": {
"stream_name": "someid1_stream01",
"password": "RtdHESB7aA7rdKDCuVYn5W9Zp",
"resolution": "720p",
"name": "stream01",
"smil": {
"BANDWIDTH": "5000000",
"RESOLUTION": "1280x720"
}
},
"someid2": {
"stream_name": "someid2_stream02",
"password": "dRKLVu6v90P5PhSAMIGSIgKuh",
"resolution": "1080p",
"name": "stream02",
"smil": {
"BANDWIDTH": "10000000",
"RESOLUTION": "1920x1080"
}
}
},
"active": true,
"creation_ts": 1542872090,
"type": "RTMP-publish",
"id": "1163546047721937079_p0q2zwj4yih",
"resources": {
"http": "test"
},
"cdn_domain": "test.a.trbcdn.net",
"description": ""
} |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
Для получения неактивного ресурса используйте query-параметр "active" с значением "false" |
Получить статус конкретного ресурса
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/status/live/<resource_id>
- Тип запроса: GET
- Заголовки: CDN-AUTH-TOKEN
- Тип данных ответа: JSON Object
Код ответа | Данные ответа | Формат ответа | Описание |
---|
200 | Статус Live-ресурса или описание ошибки | JSON | Получен статус ресурса или ошибка |
403 | None | None | Запрещено |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
Формат данных ответа:
Параметр | Описание | Возможные значения |
---|
resource | ID ресурса | ID ресурса из URL запроса |
status | Статус ресурса | "Completed" / "Processing" / "Error" |
message | Описание статуса | "" / "dns processing" / "configuration processing" |
curl -H "CDN-AUTH-TOKEN: $TOKEN" https://apicdn.rcloud.ru/cdn/api/v1/testaccount/status/live/3087695896608003328_cybku4cl0av |
{"resource": "3087695896608003328_cybku4cl0av", "status": "Completed", "message": ""} |
|
{"status": "error", "message": "Invalid Token", "description": "Invalid or expired token"} |
|
|
Создать ресурс
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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 '{"name": "test_resource", "type": "RTMP-publish", "streams": {"someid1": {"name": "stream01", "resolution": "720p"}, "someid2": {"name": "stream02", "resolution": "1080p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
{
"status": "accept",
"task_id": "20181122103450831469",
"resource_id": "1163546047721937079_p0q2zwj4yih"
} |
|
{"status": "error", "message": "Json invalid", "description": "required key name isn't provided"} |
|
|
Изменить ресурс
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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 '{"name": "test_resource", "type": "RTMP-publish", "streams": {"someid1": {"name": "stream01", "resolution": "360p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/1163546047721937079_p0q2zwj4yih |
{
"status": "accept",
"task_id": "20181122103856008585"
} |
|
{"status": "error", "message": "Json invalid", "description": "stream key length should be between 5 and 10. Not 17"} |
|
|
Деактивировать ресурс
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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 '{"name": "test_resource", "active": false, "type": "RTMP-publish", "streams": {"someid1": {"name": "stream01", "resolution": "360p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/1163546047721937079_p0q2zwj4yih |
{
"status": "accept",
"task_id": "20181122103856008586"
} |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
Активировать ресурс
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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 '{"name": "test_resource", "active": true, "type": "RTMP-publish", "streams": {"someid1": {"name": "stream01", "resolution": "360p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/1163546047721937079_p0q2zwj4yih |
{
"status": "accept",
"task_id": "20181122103856008586"
} |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
Локальная авторизация $
Создание ресурса с локальной авторизацией
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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}}, "name": "test_resource", "type": "RTMP-publish", "streams": {"someid1": {"name": "stream01", "resolution": "720p"}, "someid2": {"name": "stream02", "resolution": "1080p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
{
"status": "accept",
"task_id": "20181122103450831469",
"resource_id": "1163546047721937079_p0q2zwj4yih"
} |
|
{"status": "error", "message": "Json invalid", "description": "required key name isn't provided"} |
|
|
Изменение локальной авторизации ресурса
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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}}, "name": "test_resource", "type": "RTMP-publish", "streams": {"someid1": {"name": "stream01", "resolution": "360p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/1163546047721937079_p0q2zwj4yih |
{
"status": "accept",
"task_id": "20181122103856008585"
} |
|
{"status": "error", "message": "Json invalid", "description": "stream key length should be between 5 and 10. Not 17"} |
|
|
Внешняя авторизация $
Создание ресурса с внешней авторизацией
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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"}, "name": "test_resource", "type": "RTMP-publish", "streams": {"someid1": {"name": "stream01", "resolution": "720p"}, "someid2": {"name": "stream02", "resolution": "1080p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
{
"status": "accept",
"task_id": "20181122103450831469",
"resource_id": "1163546047721937079_p0q2zwj4yih"
} |
|
{"status": "error", "message": "Json invalid", "description": "required key name isn't provided"} |
|
|
Изменение внешней авторизации ресурса
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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"}, "name": "test_resource", "type": "RTMP-publish", "streams": {"someid1": {"name": "stream01", "resolution": "360p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/1163546047721937079_p0q2zwj4yih |
{
"status": "accept",
"task_id": "20181122103856008585"
} |
|
{"status": "error", "message": "Json invalid", "description": "stream key length should be between 5 and 10. Not 17"} |
|
|
Ограничения раздачи $
Создание ресурса с ограничением раздачи по странам, IP адресам, referer или User-Agent
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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 '{"name": "test_resource", "type": "RTMP-publish", "streams": {"someid1": {"name": "stream01", "resolution": "720p"}}, "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://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
{
"status": "accept",
"task_id": "20180402162358692413",
"resource_id": "1163546047721937079_p0q2zwj4yih"
} |
|
{
"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://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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 '{"name": "test_resource", "type": "RTMP-publish", "streams": {"someid1": {"name": "stream01", "resolution": "720p"}}, "limitations": { "ip": [{"default_action": "deny", "exclude": [{"ip":"192.168.0.1/24"}], "times": []}]}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/1163546047721937079_p0q2zwj4yih |
{"status": "accept", "task_id": "20180402162358692413"} |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
Получение ссылок для публикации и раздачи
Для того, чтобы получить полные ссылки для публикации и раздачи потоков, необходимо соединить параметры live-ресурса, полученные при GET-запросе.
Ссылка для публикации потока
<pub_protocol>://<primary|backup>/<application>/<stream_name>?auth=<password> |
Пример итоговой ссылки для публикации:
rtmp://a.r.rcloud.ru/livemaster/someid1_stream01?auth=MkE5MGtjbPljT52t491y6z14C |
Ссылка для раздачи потока
<dist_protocol>://<domain>/<application>/<master_stream>/playlist.m3u8 |
Пример итоговой ссылки для раздачи:
https://p0q2zwj4yih.a.trbcdn.net/livemaster/jws2w_test_resource.smil/playlist.m3u8 |
Транскодирование $
Вы можете заказать услугу транскодирования входного потока в несколько качеств. Это позволит избежать дополнительных затрат на оборудование или программное обеспечение.
Важно
Данная услуга оплачивается согласно тарифам, указанным в личном кабинете.
Профили транскодирования
На данный момент мы предлагаем следующие профили транскодирования:
ID профиля | Качества | Кодек для видео | Кодек для аудио | Объединение качеств в один поток |
---|
360_480_720 | 360p, 480p, 720p | h.264 | AAC/mp3 | + |
480_720_1080 | 480p, 720p, 1080p | h.264 | AAC/mp3 | + |
360_480_720_1080 | 360p, 480p, 720p, 1080p | h.264 | AAC/mp3 | + |
Заказать услугу
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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 '{"name": "test_resource", "transcode_profile": "360_480_720", "type": "RTMP-publish", "streams": {"someid1": {"name": "stream01", "resolution": "720p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
{
"status": "accept",
"task_id": "20181122103450831469",
"resource_id": "1163546047721937079_p0q2zwj4yih"
} |
|
{"status": "error", "message": "Json invalid", "description": "transcode_profile should be one of ['480_720_1080', '360_480_720', '360_480_720_1080']. Not 360_480"} |
|
|
Если Вы заказываете услугу транскодирования, то для ресурса указывается ТОЛЬКО ОДИН входной поток. |
Изменить услугу
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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 '{"name": "test_resource", "transcode_profile": "360_480_720_1080", "type": "RTMP-publish", "streams": {"someid1": {"name": "stream01", "resolution": "720p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/1163546047721937079_p0q2zwj4yih |
{
"status": "accept",
"task_id": "20181122103450831471"
} |
|
{"status": "error", "message": "Json invalid", "description": "there must be only one stream to be transcoded. Not 0"} |
|
|
Если Вы изменяете услугу транскодирования, то для ресурса указывается ТОЛЬКО ОДИН входной поток. |
Отключить услугу
Обратите внимание
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса.
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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 '{"name": "test_resource", "transcode_profile": "", "type": "RTMP-publish", "streams": {"someid1": {"name": "stream01", "resolution": "720p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/1163546047721937079_p0q2zwj4yih |
{
"status": "accept",
"task_id": "20181122103450831472"
} |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
SRT-publish
Получить все ресурсы
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: GET
- Заголовки: CDN-AUTH-TOKEN
- Тип данных ответа: JSON Array или JSON Object в случае ошибки
Доступные параметры query string (* - обязательный параметр):
Название | Описание | Допустимые значения | Значение по умолчанию |
---|
active | Фильтр по активным/деактивированным ресурсам | true / false | true |
Возможные коды ответа:
Код ответа | Данные ответа | Формат ответа | Описание |
---|
200 | Все LIVE-ресурсы для аккаунта или описание ошибки | JSON | Получен список ресурсов или ошибка |
403 | None | None | Запрещено |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
curl -H "CDN-AUTH-TOKEN: $TOKEN" https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
[
{
"id": "3087695896608003328_cybku4cl0av",
"name": "test_resource",
"type": "SRT-publish",
"active": true,
"streams": {
"someid1": {
"name": "stream01",
"smil": {
"BANDWIDTH": "5000000",
"RESOLUTION": "1280x720"
},
"password": "IEVM5Vyew2nEjPcYZmaskikMN",
"resolution": "720p",
"stream_name": "someid1_stream01"
},
"someid2": {
"name": "stream02",
"smil": {
"BANDWIDTH": "10000000",
"RESOLUTION": "1920x1080"
},
"password": "SA4fxfaJGK6jLcaADwYZZhe2S",
"resolution": "1080p",
"stream_name": "someid2_stream02"
}
},
"settings": {
"SRT-publish": {
"backup": "b.r.rcloud.ru",
"domain": "test.a.trbcdn.net",
"primary": "a.r.rcloud.ru",
"application": "livemastersrt",
"pub_protocol": "srt",
"dist_protocol": "https",
"master_stream": "kqa3m_test_resource.smil",
"transcode_profile": ""
}
},
"resources": {
"http": "test"
},
"creation_ts": 1686209143,
"description": "",
"locations": {
"/": {
"cache": {
"live": true,
"valid": {
"2xx": "300s",
"3xx": "1s",
"4xx": "1s",
"5xx": "1s"
}
}
}
},
"cache": {
"live": true,
"consider_args": false
},
"cdn_domain": "test.a.trbcdn.net"
}
] |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
Обратите внимание
Для получения неактивных ресурсов используйте query-параметр "active" с значением "false"
Получить конкретный ресурс
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<resource_id>
- Тип запроса: GET
- Заголовки: CDN-AUTH-TOKEN
- Тип данных ответа: JSON Object
Доступные параметры query string (* - обязательный параметр):
Название | Описание | Допустимые значения | Значение по умолчанию |
---|
active | Фильтр по активным/деактивированным ресурсам | true / false | true |
Возможные коды ответа:
Код ответа | Данные ответа | Формат ответа | Описание |
---|
200 | Конкретный LIVE-ресурс для аккаунта или описание ошибки | JSON | Получен ресурс или ошибка |
403 | None | None | Запрещено |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
curl -H "CDN-AUTH-TOKEN: $TOKEN" https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/3087695896608003328_cybku4cl0av |
{
"id": "3087695896608003328_cybku4cl0av",
"name": "test_resource",
"type": "SRT-publish",
"active": true,
"streams": {
"someid1": {
"name": "stream01",
"smil": {
"BANDWIDTH": "5000000",
"RESOLUTION": "1280x720"
},
"password": "IEVM5Vyew2nEjPcYZmaskikMN",
"resolution": "720p",
"stream_name": "someid1_stream01"
},
"someid2": {
"name": "stream02",
"smil": {
"BANDWIDTH": "10000000",
"RESOLUTION": "1920x1080"
},
"password": "SA4fxfaJGK6jLcaADwYZZhe2S",
"resolution": "1080p",
"stream_name": "someid2_stream02"
}
},
"settings": {
"SRT-publish": {
"backup": "b.r.rcloud.ru",
"domain": "test.a.trbcdn.net",
"primary": "a.r.rcloud.ru",
"application": "livemastersrt",
"pub_protocol": "srt",
"dist_protocol": "https",
"master_stream": "kqa3m_test_resource.smil",
"transcode_profile": ""
}
},
"resources": {
"http": "test"
},
"creation_ts": 1686209143,
"description": "",
"locations": {
"/": {
"cache": {
"live": true,
"valid": {
"2xx": "300s",
"3xx": "1s",
"4xx": "1s",
"5xx": "1s"
}
}
}
},
"cache": {
"live": true,
"consider_args": false
},
"cdn_domain": "test.a.trbcdn.net"
} |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
Обратите внимание
Для получения неактивного ресурса используйте query-параметр "active" с значением "false"
Получить статус конкретного ресурса
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/status/live/<resource_id>
- Тип запроса: GET
- Заголовки: CDN-AUTH-TOKEN
- Тип данных ответа: JSON Object
Код ответа | Данные ответа | Формат ответа | Описание |
---|
200 | Статус Live-ресурса или описание ошибки | JSON | Получен статус ресурса или ошибка |
403 | None | None | Запрещено |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
Формат данных ответа:
Параметр | Описание | Возможные значения |
---|
resource | ID ресурса | ID ресурса из URL запроса |
status | Статус ресурса | "Completed" / "Processing" / "Error" |
message | Описание статуса | "" / "dns processing" / "configuration processing" |
curl -H "CDN-AUTH-TOKEN: $TOKEN" https://apicdn.rcloud.ru/cdn/api/v1/testaccount/status/live/3087695896608003328_cybku4cl0av |
{"resource": "3087695896608003328_cybku4cl0av", "status": "Completed", "message": ""} |
|
{"status": "error", "message": "Invalid Token", "description": "Invalid or expired token"} |
|
|
Создать ресурс
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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 '{"name": "test_resource", "type": "SRT-publish", "streams": {"someid1": {"name": "stream01", "resolution": "720p"}, "someid2": {"name": "stream02", "resolution": "1080p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
{
"status": "accept",
"task_id": "20181122103450831469",
"resource_id": "3087695896608003328_cybku4cl0av"
} |
|
{"status": "error", "message": "Json invalid", "description": "required key name isn't provided"} |
|
|
Изменить ресурс
Обратите внимание
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса.
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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 '{"name": "test_resource", "type": "SRT-publish", "streams": {"someid1": {"name": "stream01", "resolution": "360p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/3087695896608003328_cybku4cl0av |
{
"status": "accept",
"task_id": "20181122103856008585"
} |
|
{"status": "error", "message": "Json invalid", "description": "stream key length should be between 5 and 10. Not 17"} |
|
|
Деактивировать ресурс
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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, "name": "test_resource", "type": "SRT-publish", "streams": {"someid1": {"name": "stream01", "resolution": "360p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/3087695896608003328_cybku4cl0av |
{
"status": "accept",
"task_id": "20181122103856008586"
} |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
Активировать ресурс
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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, "name": "test_resource", "type": "SRT-publish", "streams": {"someid1": {"name": "stream01", "resolution": "360p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/3087695896608003328_cybku4cl0av |
{
"status": "accept",
"task_id": "20181122103856008586"
} |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
Локальная авторизация $
Создание ресурса с локальной авторизацией
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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}}, "name": "test_resource", "type": "SRT-publish", "streams": {"someid1": {"name": "stream01", "resolution": "720p"}, "someid2": {"name": "stream02", "resolution": "1080p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
{
"status": "accept",
"task_id": "20181122103450831469",
"resource_id": "3087695896608003328_cybku4cl0av"
} |
|
{"status": "error", "message": "Json invalid", "description": "required key name isn't provided"} |
|
|
Изменение локальной авторизации ресурса
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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}}, "name": "test_resource", "type": "SRT-publish", "streams": {"someid1": {"name": "stream01", "resolution": "360p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/3087695896608003328_cybku4cl0av |
{
"status": "accept",
"task_id": "20181122103856008585"
} |
|
{"status": "error", "message": "Json invalid", "description": "stream key length should be between 5 and 10. Not 17"} |
|
|
Внешняя авторизация $
Создание ресурса с внешней авторизацией
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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"}, "name": "test_resource", "type": "SRT-publish", "streams": {"someid1": {"name": "stream01", "resolution": "720p"}, "someid2": {"name": "stream02", "resolution": "1080p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
{
"status": "accept",
"task_id": "20181122103450831469",
"resource_id": "3087695896608003328_cybku4cl0av"
} |
|
{"status": "error", "message": "Json invalid", "description": "required key name isn't provided"} |
|
|
Изменение внешней авторизации ресурса
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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"}, "name": "test_resource", "type": "SRT-publish", "streams": {"someid1": {"name": "stream01", "resolution": "360p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/3087695896608003328_cybku4cl0av |
{
"status": "accept",
"task_id": "20181122103856008585"
} |
|
{"status": "error", "message": "Json invalid", "description": "stream key length should be between 5 and 10. Not 17"} |
|
|
Ограничения раздачи $
Создание ресурса с ограничением раздачи по странам, IP адресам, referer или User-Agent
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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 '{"name": "test_resource", "type": "SRT-publish", "streams": {"someid1": {"name": "stream01", "resolution": "720p"}}, "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://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
{
"status": "accept",
"task_id": "20180402162358692400",
"resource_id": "3087695896608003328_cybku4cl0av"
} |
|
{
"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://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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 '{"name": "test_resource", "type": "SRT-publish", "streams": {"someid1": {"name": "stream01", "resolution": "720p"}}, "limitations": { "ip": [{"default_action": "deny", "exclude": [{"ip":"192.168.0.1/24"}], "times": []}]}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/3087695896608003328_cybku4cl0av |
{"status": "accept", "task_id": "20180402162358692401"} |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
Получение ссылок для публикации и раздачи
Для того, чтобы получить полные ссылки для публикации и раздачи потоков, необходимо соединить параметры live-ресурса, полученные при GET-запросе.
Ссылка для публикации потока
<pub_protocol>://<primary|backup>:19998/?streamid=#!::r=<application>/<stream_name>,auth=<password> |
Пример итоговой ссылки для публикации:
srt://a.r.rcloud.ru:19998/?streamid=#!::r=livemastersrt/someid1_stream01,auth=IEVM5Vyew2nEjPcYZmaskikMN |
Ссылка для раздачи потока
<dist_protocol>://<domain>/<application>/<master_stream>/playlist.m3u8 |
Пример итоговой ссылки для раздачи:
https://test.a.trbcdn.net/livemastersrt/kqa3m_test_resource.smil/playlist.m3u8 |
Транскодирование $
Вы можете заказать услугу транскодирования входного потока в несколько качеств. Это позволит избежать дополнительных затрат на оборудование или программное обеспечение.
Данная услуга оплачивается согласно тарифам, указанным в личном кабинете. |
Профили транскодирования
На данный момент мы предлагаем следующие профили транскодирования:
ID профиля | Качества | Кодек для видео | Кодек для аудио | Объединение качеств в один поток |
---|
360_480_720 | 360p, 480p, 720p | h.264 | AAC/mp3 | + |
480_720_1080 | 480p, 720p, 1080p | h.264 | AAC/mp3 | + |
360_480_720_1080 | 360p, 480p, 720p, 1080p | h.264 | AAC/mp3 | + |
Заказать услугу
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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 '{"name": "test_resource", "transcode_profile": "360_480_720", "type": "SRT-publish", "streams": {"someid1": {"name": "stream01", "resolution": "720p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
{
"status": "accept",
"task_id": "20181122103450831469",
"resource_id": "3087695896608003328_cybku4cl0av"
} |
|
{"status": "error", "message": "Json invalid", "description": "transcode_profile should be one of ['480_720_1080', '360_480_720', '360_480_720_1080']. Not 360_480"} |
|
|
Если Вы заказываете услугу транскодирования, то для ресурса указывается ТОЛЬКО ОДИН входной поток. |
Изменить услугу
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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 '{"name": "test_resource", "transcode_profile": "360_480_720_1080", "type": "SRT-publish", "streams": {"someid1": {"name": "stream01", "resolution": "720p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/3087695896608003328_cybku4cl0av |
{
"status": "accept",
"task_id": "20181122103450831471"
} |
|
{"status": "error", "message": "Json invalid", "description": "there must be only one stream to be transcoded. Not 0"} |
|
|
Если Вы изменяете услугу транскодирования, то для ресурса указывается ТОЛЬКО ОДИН входной поток. |
Отключить услугу
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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 '{"name": "test_resource", "transcode_profile": "", "type": "SRT-publish", "streams": {"someid1": {"name": "stream01", "resolution": "720p"}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/3087695896608003328_cybku4cl0av |
{
"status": "accept",
"task_id": "20181122103450831472"
} |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
HLS-cache
Получить все ресурсы
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: GET
- Заголовки: CDN-AUTH-TOKEN
- Тип данных ответа: JSON Array или JSON Object в случае ошибки
Доступные параметры query string (* - обязательный параметр):
Название | Описание | Допустимые значения | Значение по умолчанию |
---|
active | Фильтр по активным/деактивированным ресурсам | true / false | true |
Возможные коды ответа:
Код ответа | Данные ответа | Формат ответа | Описание |
---|
200 | Все LIVE-ресурсы для аккаунта или описание ошибки | JSON | Получен список ресурсов или ошибка |
403 | None | None | Запрещено |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
curl -H "CDN-AUTH-TOKEN: $TOKEN" https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
[
{
"origin": {
"https": true,
"servers": {
"yourdomain.com": {
"backup": false,
"port": 80,
"weight": 1
}
}
},
"cdn_domain": "wtx3l7rtrl6.a.trbcdn.net",
"name": "live-qxthy19jjz",
"streams": {
"2it9dwypm4": {
"id": "/stream/playlist.m3u8"
}
},
"names": ["test.cname.com"],
"active": true,
"creation_ts": 1551853456,
"type": "HLS-cache",
"id": "8053158264585032642_wtx3l7rtrl6",
"resources": {
"http": "wtx3l7rtrl6"
},
"description": ""
}
] |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
Для получения неактивных ресурсов используйте query-параметр "active" с значением "false" |
Обратите внимание
Получить конкретный ресурс
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<resource_id>
- Тип запроса: GET
- Заголовки: CDN-AUTH-TOKEN
- Тип данных ответа: JSON Object
Доступные параметры query string (* - обязательный параметр):
Название | Описание | Допустимые значения | Значение по умолчанию |
---|
active | Фильтр по активным/деактивированным ресурсам | true / false | true |
Возможные коды ответа:
Код ответа | Данные ответа | Формат ответа | Описание |
---|
200 | Конкретный LIVE-ресурс для аккаунта или описание ошибки | JSON | Получен ресурс или ошибка |
403 | None | None | Запрещено |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
curl -H "CDN-AUTH-TOKEN: $TOKEN" https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/8053158264585032642_wtx3l7rtrl6 |
{
"origin": {
"https": true,
"servers": {
"yourdomain.com": {
"backup": false,
"port": 80,
"weight": 1
}
}
},
"cdn_domain": "wtx3l7rtrl6.a.trbcdn.net",
"name": "live-qxthy19jjz",
"streams": {
"2it9dwypm4": {
"id": "/stream/playlist.m3u8"
}
},
"names": ["test.cname.com"],
"active": true,
"creation_ts": 1551853456,
"type": "HLS-cache",
"id": "8053158264585032642_wtx3l7rtrl6",
"resources": {
"http": "wtx3l7rtrl6"
},
"description": ""
} |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
Обратите внимание
Для получения неактивного ресурса используйте query-параметр "active" с значением "false"
Получить статус конкретного ресурса
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/status/live/<resource_id>
- Тип запроса: GET
- Заголовки: CDN-AUTH-TOKEN
- Тип данных ответа: JSON Object
Код ответа | Данные ответа | Формат ответа | Описание |
---|
200 | Статус Live-ресурса или описание ошибки | JSON | Получен статус ресурса или ошибка |
403 | None | None | Запрещено |
404 | None | None | Не найдено |
500 | None | None | Внутренняя ошибка сервера |
503 | None | None | Сервис недоступен |
Формат данных ответа:
Параметр | Описание | Возможные значения |
---|
resource | ID ресурса | ID ресурса из URL запроса |
status | Статус ресурса | "Completed" / "Processing" / "Error" |
message | Описание статуса | "" / "dns processing" / "configuration processing" |
curl -H "CDN-AUTH-TOKEN: $TOKEN" https://apicdn.rcloud.ru/cdn/api/v1/testaccount/status/live/3087695896608003328_cybku4cl0av |
{"resource": "3087695896608003328_cybku4cl0av", "status": "Completed", "message": ""} |
|
{"status": "error", "message": "Invalid Token", "description": "Invalid or expired token"} |
|
|
Создать ресурс
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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 '{"name": "live-qxthy20jjz", "type": "HLS-cache", "streams": {"3it9dwypm4": {"id": "/stream/playlist.m3u8"}}, "origin": {"https": false, "read_timeout": "10s", "connect_timeout": "10s", "send_timeout": "10s", "servers": {"yourdomain.com": {"port": 80, "weight": 1, "backup": false}}}, "names": ["test-cname.com"]}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
{
"status": "accept",
"task_id": "20190305103450831469",
"resource_id": "9282601590143242685_pqy19d9z3pm"
} |
|
{"status": "error", "message": "Json invalid", "description": "required key name isn't provided"} |
|
|
Изменить ресурс
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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 '{"name": "live-qxthy20jjz-2", "type": "HLS-cache", "streams": {"4it9dwypm4": {"id": "/stream/playlist-2.m3u8"}}, "origin": {"https": false, "servers": {"yourdomain.com": {"port": 80, "weight": 1, "backup": false}}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/9282601590143242685_pqy19d9z3pm |
{
"status": "accept",
"task_id": "20190305103450831470"
} |
|
{"status": "error", "message": "Json invalid", "description": "stream key length should be between 5 and 10. Not 17"} |
|
|
Деактивировать ресурс
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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, "name": "live-qxthy20jjz-2", "type": "HLS-cache", "streams": {"4it9dwypm4": {"id": "/stream/playlist-2.m3u8"}}, "origin": {"https": false, "servers": {"yourdomain.com": {"port": 80, "weight": 1, "backup": false}}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/9282601590143242685_pqy19d9z3pm |
{
"status": "accept",
"task_id": "20190305103450831479"
} |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
Активировать ресурс
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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, "name": "live-qxthy20jjz-2", "type": "HLS-cache", "streams": {"4it9dwypm4": {"id": "/stream/playlist-2.m3u8"}}, "origin": {"https": false, "servers": {"yourdomain.com": {"port": 80, "weight": 1, "backup": false}}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/9282601590143242685_pqy19d9z3pm |
{
"status": "accept",
"task_id": "20190305103450831479"
} |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
Локальная авторизация $
Локальная авторизация может быть настроена только для какого-либо location. Включить ее для всего HLS-cache ресурса невозможно. |
Если локальная авторизация включается для location-ов, затрагивающих плейлисты (m3u8, mpd), то для корректной работы необходимо отключить кэширование для этих location-ов. |
Создание ресурса с локальной авторизацией
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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 '{"locations": {"~* \\.m3u8$": {"auth": {"md5": {"secret": "123", "forever": true, "anywhere": true}}}}, "name": "live-qxthy20jjz", "type": "HLS-cache", "streams": {"3it9dwypm4": {"id": "/stream/playlist.m3u8"}}, "origin": {"https": false, "servers": {"yourdomain.com": {"port": 80, "weight": 1, "backup": false}}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
{
"status": "accept",
"task_id": "20190305103450831469",
"resource_id": "9282601590143242685_pqy19d9z3pm"
} |
|
{"status": "error", "message": "Json invalid", "description": "required key name isn't provided"} |
|
|
Изменение локальной авторизации ресурса
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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 '{"locations": {"~* \\.m3u8$": {"auth": {"md5": {"secret": "234", "forever": true, "anywhere": true}}, "cache": {"valid": {"2xx": "1s", "3xx": "1s"}}}, "/": {"cache": {"valid": {"2xx": "300s", "3xx": "1s", "4xx": "1s", "5xx": "1s"}}}}, "name": "live-qxthy20jjz", "type": "HLS-cache", "streams": {"3it9dwypm4": {"id": "/stream/playlist.m3u8"}}, "origin": {"https": false, "servers": {"yourdomain.com": {"port": 80, "weight": 1, "backup": false}}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/9282601590143242685_pqy19d9z3pm |
{
"status": "accept",
"task_id": "20190305103450831470"
} |
|
{"status": "error", "message": "Json invalid", "description": "stream key length should be between 5 and 10. Not 17"} |
|
|
Внешняя авторизация $
Внешняя авторизация может быть настроена только для какого-либо location. Включить ее для всего HLS-cache ресурса невозможно. |
Создание ресурса с внешней авторизацией
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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 '{"locations": {"~* \\.m3u8$": {"auth": {"url": "https://test.com/yourscript"}}}, "name": "live-qxthy20jjz", "type": "HLS-cache", "streams": {"3it9dwypm4": {"id": "/stream/playlist.m3u8"}}, "origin": {"https": false, "servers": {"yourdomain.com": {"port": 80, "weight": 1, "backup": false}}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
{
"status": "accept",
"task_id": "20190305103450831469",
"resource_id": "9282601590143242685_pqy19d9z3pm"
} |
|
{"status": "error", "message": "Json invalid", "description": "required key name isn't provided"} |
|
|
Изменение внешней авторизации ресурса
Данный запрос полностью заменяет конфигурацию ресурса на данные, передаваемые в теле PUT запроса. |
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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 '{"locations": {"~* \\.m3u8$": {"auth": {"url": "https://test.com/yourscript_new"}, "cache": {"valid": {"2xx": "1s", "3xx": "1s"}}}, "/": {"cache": {"valid": {"2xx": "300s", "3xx": "1s", "4xx": "1s", "5xx": "1s"}}}}, "name": "live-qxthy20jjz", "type": "HLS-cache", "streams": {"3it9dwypm4": {"id": "/stream/playlist.m3u8"}}, "origin": {"https": false, "servers": {"yourdomain.com": {"port": 80, "weight": 1, "backup": false}}}}' \
https://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/9282601590143242685_pqy19d9z3pm |
{
"status": "accept",
"task_id": "20190305103450831470"
} |
|
{"status": "error", "message": "Json invalid", "description": "stream key length should be between 5 and 10. Not 17"} |
|
|
Ограничения раздачи $
Создание ресурса с ограничением раздачи по странам, IP адресам, referer или User-Agent
URL: https://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/
- Тип запроса: 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 '{"name": "test_resource", "type": "HLS-cache", "streams": {"someid1": {"id": "/stream/playlist.m3u8"}}, "origin": {"https": false, "servers": {"yourdomain.com": {"port": 80, "weight": 1, "backup": false}}}, "names": ["test-cname.com"], "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://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/ |
{
"status": "accept",
"task_id": "20180402162358692413",
"resource_id": "1163546047721937079_p0q2zwj4yih"
} |
|
{
"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://apicdn.rcloud.ru/cdn/api/v1/<your_account_name>/resource/live/<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 '{"name": "test_resource", "type": "HLS-cache", "streams": {"someid1": {"id": "/stream/playlist-2.m3u8"}}, "origin": {"https": false, "servers": {"yourdomain.com": {"port": 80, "weight": 1, "backup": false}}}, "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://apicdn.rcloud.ru/cdn/api/v1/testaccount/resource/live/1163546047721937079_p0q2zwj4yih |
{
"status": "accept",
"task_id": "20180402162358692413"
} |
|
{"status": "error", "message": "Not allowed method", "description": "Request is forbidden"} |
|
|
Получение ссылок для раздачи
Для того, чтобы получить полные ссылки раздачи потоков, необходимо соединить параметры live-ресурса, полученные при GET-запросе.
<pub_protocol>://<cdn_domain>/<stream_id> |
<pub_protocol>://<names>/<stream_id> |
Пример итоговых CDN-ссылок на плейлист:
https://wtx3l7rtrl6.a.trbcdn.net/stream/playlist.m3u8 |
https://test.cname.com/stream/playlist.m3u8 |