https://dwyt.appSestavte stahování s DWYT
The DWYT Ukázky kódu dokumentují budoucí posloupnost požadavků. Produkční volání zůstávají uzavřená, dokud není videoklient zkontrolován a nejsou povoleny přihlašovací údaje přiřazené operátorem.
Rychlý start
Mapa formátů DWYT kontroluje pověření aktivovaná podporou pro hostitele API. Zobrazuje přiřazený koncový bod tenanta jako další a nezakrývá cestu volání pouze pro server.
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"}'Pro zabezpečení pověření začíná DWYT s tajným úložištěm na straně serveru, jeho mapa formátu je spárována s žádným vkládáním klientských svazků a končí bez veřejných protokolů nebo úložišť.
Vyřešit odkaz
Mapa formátů DWYT hodnotí detekci zdroje pro operaci Resolve. Zobrazuje formáty z jednoho odeslaného URL následně a nezakrývá žádné vymyšlené výstupy.
/v1/resolveRozsah: vyřešit| Pole | Typ | Povinné | Popis |
|---|---|---|---|
public_media | HTTPS | Ano | Veřejná nebo autorizovaná mediální stránka k analýze. |
tenant | řetězec | Ne. | Přiřazená doména klienta. Obvykle se vynechává. |
{
"success": true,
"platform": "youtube",
"title": "Example video",
"formats": [
{"id":"18","type":"video","quality":"360p","container":"mp4"}
],
"cached": false
}Pro identifikátor formátu DWYT začíná s vrácenou hodnotou beze změny. Jeho mapa formátu to spojuje s dostupností pro jednotlivé odkazy a končí bez odhadovaného štítku kvality.
Vytvoření a sledování úlohy stahování
Pro vytvoření úlohy DWYT kontroluje asynchronní přípravu před krátkým HTTP požadavkem. Tato mapa formátu také jasně ukazuje omezené provádění pracovníka.
/v1/jobsRozsah: pracovní místa| Pole | Typ | Povinné | Popis |
|---|---|---|---|
public_media | HTTPS | Ano | Stejný normalizovaný zdroj předložený k vyřešení. |
rendition_key | řetězec | Ano | Přesné ID z odpovědi na překlad. |
tenant | řetězec | Ne. | Přiřazená doména klienta. Obvykle se vynechává. |
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} se stejným klíčem.| Stav | Význam | Akce klienta |
|---|---|---|
queued | Připuštěn do ohraničené fronty. | Anketa znovu s backoff. |
extracting | Obnovování zdrojových metadat nebo trasy. | Pokračujte v hlasování. |
processing | Stahování, remixování nebo slučování. | Zobrazit průběh serveru. |
ready | Podepsané stažení je k dispozici. | Odešlete uživateli adresu URL. |
failed | Chyba struktury terminálu. | Přečtěte si error_codeZkuste to znovu pouze v případě, že je to doporučeno. |
expired | Dočasný výstup byl odstraněn. | Vytvořte novou úlohu. |
curl https://dwyt.app/v1/jobs/FLOW_ID \
-H "X-API-Key: $DWYT_FLOW_SECRET"Dotazování úloh začíná jednosekundovým počátečním čekáním na DWYT. Tento formát mapy pak představuje omezený zpětný odskok. Konečný fakt je dočasné podepsané doručení.
Předvídatelné chyby
DWYT zpracovává smlouvu Error tím, že nejprve identifikuje jednu obálku mimo 2xx. Následuje ID požadavku podpory a má na paměti předvídatelné zpracování na straně klienta.
{
"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": "…"
}| Hypertext Transfer Protocol | Typický význam | Akce |
|---|---|---|
| 400 | Neplatná adresa URL, tělo nebo nedostupný formát. | Opravte požadavek. Znovu vyřešte formáty. |
| 401 | Chybějící, neplatný, vypršený nebo nesprávný rozsah klíče. | Zkontrolujte pověření na straně serveru. |
| 403 | Klient nebo zdrojové zásady požadavek zamítly. | Nepřekračujte pravidla. Kontaktujte podporu. |
| 404 | Neznámá nebo vypršela pracovní pozice. | V případě potřeby vytvořte novou úlohu. |
| 429 | Dosáhli jste limitu požadavků nebo aktivních úloh. | Honor retry_after_seconds. |
| 503 | Fronta/kapacita nebo upstream dočasně nedostupné. | Zkuste to znovu s exponenciálním zpětným odstupem a jitterem. |
Provozní smlouva
DWYT zkontroluje integraci před výběrem kvót, které chrání klienta videa i služby na vyšší úrovni.
- Používejte idempotentní aplikační logiku a nikdy nespouštějte duplicitní úlohy pro stejné uživatelské kliknutí.
- Cache krátce vyřeší metadata, ale vždy považuje podepsané adresy URL ke stažení za vypršení platnosti.
- Použijte ohraničený exponenciální backoff s jitter pro
429,503a opakovatelné chyby. - Zpracovávejte pouze veřejná média nebo média, ke kterým máte oprávnění. DRM a přístupová omezení nejsou obcházena.
- ID požadavků a ID úloh uchovávejte v soukromých provozních protokolech. Nezapisujte do protokolů odeslané adresy URL zbytečně.
Mapa formátů DWYT před průzkumem kontroluje aktivaci pro přístup ke schématu. Zobrazuje přiřazené ověření následně a nezakrývá zdokumentované tvary požadavků.
Aktivace prostřednictvím podpory
Vysvětlete aplikaci za tímto požadavkem, její odhad měsíční návštěvnosti a video služby, které bude používat. DWYT tyto podrobnosti zkontroluje, přiřadí potřebná oprávnění API a neuchovává žádnou obnovitelnou hodnotu klíče.
Požádat o aktivaci Klíče jsou omezeny na klienta, lze je odvolat a vydávají se prostřednictvím kontaktního formuláře.