https://dwyt.appИзграждане на изтегляния с DWYT
Примерите за код DWYT документират бъдещата последователност на заявките.Продуктовите обаждания остават затворени, докато видеоклиентът не бъде прегледан и не се активират идентификационните данни, зададени от оператора.
Бърз старт
Картата на формата на DWYT преглежда активираните от поддръжката идентификационни данни за хоста на API.Тя показва присвоена крайна точка на наемателя следваща и не затъмнява пътя на повикване само на сървъра.
X-API-Key: pending_activation_…DwytFlowv1# Available only after support activation
export DWYT_FLOW_SECRET="issued-after-review"
curl -X POST https://dwyt.app/v1/resolve \
-H "X-API-Key: $DWYT_FLOW_SECRET" \
-H "Content-Type: application/json" \
-d '{"public_media":"https://www.youtube.com/watch?v=VIDEO_ID"}'За безопасност на данните за самоличност, DWYT започва с тайно съхранение от страна на сървъра.Неговата карта на формата сдвоява това без вграждане на клиентски пакети и завършва без публични дневници или хранилища.
Разрешаване на връзка
Картата на формата на DWYT преглежда откриването на източника за операцията Той показва формати от един подаден URL адрес следващ и не затъмнява никакви измислени изходи.
/v1/resolveОбхват: решаване| Поле | Тип | Задължително | Описание на продукта |
|---|---|---|---|
public_media | HTTPS адрес | Да | Публична или упълномощена медийна страница, която да анализира. |
tenant | низ | Не. | Присвоен домейн на наемателя. Обикновено се пропуска. |
{
"success": true,
"platform": "youtube",
"title": "Example video",
"formats": [
{"id":"18","type":"video","quality":"360p","container":"mp4"}
],
"cached": false
}За идентификатора на формата, DWYT започва с върнатата стойност непроменена.Неговата карта на формата сдвоява това с наличността на връзката и завършва без етикет за качество на предположението.
Създаване и проследяване на задача за изтегляне
За създаване на работа, DWYT проверява асинхронната подготовка преди кратка заявка Тази карта на формата също така прави ясно изпълнението на ограничени работници.
/v1/jobsОбхват: работни места| Поле | Тип | Задължително | Описание на продукта |
|---|---|---|---|
public_media | HTTPS адрес | Да | Същият нормализиран източник, подаден за разрешаване. |
rendition_key | низ | Да | Точен идентификатор от отговора за разрешаване. |
tenant | низ | Не. | Присвоен домейн на наемателя. Обикновено се пропуска. |
curl -X POST https://dwyt.app/v1/jobs \
-H "X-API-Key: $DWYT_FLOW_SECRET" \
-H "Content-Type: application/json" \
-d '{"public_media":"https://www.youtube.com/watch?v=VIDEO_ID","rendition_key":"18"}'flow_id.GET /v1/jobs/{flow_id} със същия ключ.| Състояние | Значение | Действие на клиента |
|---|---|---|
queued | Допуснат до ограничената опашка. | Анкета отново с отстъпление. |
extracting | Обновяване на изходните метаданни или маршрут. | Продължете да гласувате. |
processing | Изтегляне, ремиксиране или сливане. | Показване на напредъка на сървъра. |
ready | Подписано изтегляне е налично. | Изпратете адреса на потребителя. |
failed | Терминална структурирана грешка. | Прочетете error_codeПовторете опита само когато ви бъде препоръчано. |
expired | Временният изход беше премахнат. | Създаване на нова работа. |
curl https://dwyt.app/v1/jobs/FLOW_ID \
-H "X-API-Key: $DWYT_FLOW_SECRET"Изборът на работа започва с едносекундно първоначално изчакване наDWYTТази карта на формата след това представя ограничен отстъп. Крайният факт е временно подписана доставка.
Предсказуеми грешки
DWYT обработва договора за грешка, като първо идентифицира един плик, който не е 2xx. Той следва с идентификатор на заявка за поддръжка и поддържа предвидима обработка на клиента.
{
"success": false,
"error": {
"code": "RATE_LIMITED",
"category": "rate_limited",
"message": "Too many requests. Please try again shortly.",
"retryable": true,
"details": {"retry_after_seconds": 20}
},
"request_id": "…"
}| HTTP | Типично значение | Действие |
|---|---|---|
| 400 | Невалиден адрес, тяло или недостъпен формат. | Коригирайте заявката. Решете отново за формати. |
| 401 | Липсва, невалиден, изтекъл или с грешен обхват ключ. | Проверете идентификационните данни от страна на сървъра. |
| 403 | Наемател или източник политика отхвърли искането. | Не заобикаляйте правилата. Свържете се с поддръжката. |
| 404 | Неизвестна или изтекла работа. | Създайте нова работа, ако е подходящо. |
| 429 | Достигане на ограничението за заявки или активни задачи. | Чест. retry_after_seconds. |
| 503 | Опашка/капацитет или нагоре по веригата временно недостъпни. | Опитайте отново с експоненциално отстъпление и трептене. |
Договор за експлоатация
DWYT преглежда интеграцията, преди да избере квоти, които защитават както видеоклиента, така и услугите нагоре по веригата.
- Използвайте idempotent логика на приложението и никога не започват дублирани работни места за един и същ потребител клик.
- Кешът разрешава метаданните за кратко, но винаги третира подписаните адреси за изтегляне като изтичащи.
- Използвайте ограничен експоненциален отстъп с трептене за
429,503и повторяеми грешки. - Обработвайте само публични медии или медии, до които имате разрешение за достъп. DRM и контролите за достъп не се заобикалят.
- Съхранявайте идентификационните номера на заявките и идентификационните номера на задачите в частни оперативни регистрационни файлове.
Картата на формата на DWYT преглежда активирането преди проучване за достъп до Тя показва присвоено удостоверяване следващо и не затъмнява документираните форми на заявки.
Активиране чрез поддръжка
Обяснете приложението зад заявката, неговата месечна оценка на трафика и видео услугите, които ще използва.DWYTпреглежда тези подробности, присвоява необходимите API разрешения и не запазва възстановима ключова стойност.
Заявка за активиране Ключовете са с обхват на наемателя, отменяеми и издадени чрез формата за връзка.Анонимните скриптове не могат да изпълняват работа за изтегляне.