https://ytsave.appCostruî scaricaments cun YTSave
Risolv un URL public di media, selezionâ un format precis, creâ un lavôr asincron e dâ il risultât firmât al to utent. La stesse pipeline di produzion vincolade al alimenta il sit web YTSave.
Inizi svelte
YTSave al gestîs il host API prin di dut identificant i credenzials ativâts dal suport. Dopo al seguite cun un endpoint assignât al tenant e al tien in viste un percors di clam dome par il server.
X-API-Key: ys_live_…YTSaveClientv1# Available only after support activation
export YTSAVE_API_KEY="issued-after-review"
curl -X POST https://ytsave.app/v1/resolve \
-H "X-API-Key: $YTSAVE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://www.youtube.com/watch?v=VIDEO_ID"}'Par spiegâ la sigurece dai Credenzials, YTSave al separa la memorizzazion segrete dal server dal no incjodiment di pacjêt client. Un registr di prove nol dâs gnûf un loc propit par logs o repositoris publics.
Risolv un link
YTSave gestìs l'operazion Resolve identificant prime la rilevazion de sorgjente. Dopo al segûts dai formats di une URL inviade e nol tegn nissun output inventât in viste.
/v1/resolveAmbit: risolvi| Camp | Tipo | Necessari | Descrizion |
|---|---|---|---|
url | URL HTTPS | Sì | Pagjine media publiche o autorizzade par analisi. |
tenant | string | No | Dominio dal tenant assignât. Di solit a ven omis. |
{
"success": true,
"platform": "youtube",
"title": "Example video",
"formats": [
{"id":"18","type":"video","quality":"360p","container":"mp4"}
],
"cached": false
}Par spiegâ il identificadôr dal Format, YTSave al separa il valor tornât intat dal disponibilitât par colegament. Un registr di prove nol dâs gnûf un loc propit par une etichete di qualitât stimade.
Crijâ e seguî un lavôr di scaricament
Par la creazion di Lavor, YTSave tacje cun une preparazion asincrone. Il so registru di prove al met in coppie cheste cun une domande HTTP curte e al finîs cun une esecuzion delimitade dal lavoradôr.
/v1/jobsAmbit: lavors| Camp | Tipo | Necessari | Descrizion |
|---|---|---|---|
url | URL HTTPS | Sì | La stesse sorgjente normalizade inviade par risolvi. |
format_id | string | Sì | Un ID esat dal rispueste di risoluzion. |
tenant | string | No | Dominio dal tenant assignât. Di solit a ven omis. |
curl -X POST https://ytsave.app/v1/jobs \
-H "X-API-Key: $YTSAVE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://www.youtube.com/watch?v=VIDEO_ID","format_id":"18"}'job_id.GET /v1/jobs/{job_id} cun la stesse ciave.| Stât | Significât | Azion dal client |
|---|---|---|
queued | Amess al code bounded. | Fâ un vot di gnûf cun ritard. |
extracting | A je in cors la rinfrescade dai metadâts o dal percors. | Continua a interrogar. |
processing | Scaricant, remuxant o unî. | Mostre il progres dal server. |
ready | Il scaricamento firmât al è disponibil. | Mandi il URL al utent. |
failed | Erôr strutturât dal terminal. | Leç error_code. Provâ dome cuant che al è cunsigliât. |
expired | Il risultât temporar al è stât cjatât via. | Crea un gnûf lavôr. |
curl https://ytsave.app/v1/jobs/JOB_ID \
-H "X-API-Key: $YTSAVE_API_KEY"YTSave al rend il sondâ dai Lavoris facil di scjari. La pagjine e cumence cun un spiet inizial di un second, al va a un ritorn limitât, e al dichiara clar la consegne temporarie firmade.
Erôrs prevedibii
Par contrat di erôr, YTSave al control un invielop no 2xx prime di un ID di domande di suport. Chest registr di prove al rend ancje clar il manegjament prevedibil dal client.
{
"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 | Significât tipic | Azion |
|---|---|---|
| 400 | URL no valide, contenût o format no disponibil. | Corregi la domande. Torne a provâ par i formâts. |
| 401 | Clâf mancant, invalide, scadût o cun scope sbagliât. | Verifiche la credenziali dal server. |
| 403 | La politiche dal tenant o de sorgjente e je stade rifiutate la domande. | No saltâ la politiche. Contate il suport. |
| 404 | Lavor sconossût o scadût. | Crea un lavôr gnûf se al è adeguât. |
| 429 | Limite di domande o di lavôr ativ rivât. | Onôr retry_after_seconds. |
| 503 | Coda/capacitât o mont in su temporariman no disponibil. | Riprove cun ritard esponenzial e jitter. |
Contrât operativ
YTSave rilasce une quote operativie cun ogni aprovazion par protegî il consumadôr API e i servizis media a monte.
- Dûs logjiche di aplicazion idempotente e no tacâ mai lavôrs duplicâts par il stes clic utent.
- Meti in cache la resoluzion di metadâts par un moment, ma tratâ simpri i URL di download firmâts come che a scadin.
- Dopre un ritorn esponencial limitât cun jitter par
429,503e erôrs che si puedin provâ di gnûf. - Processâ dome media publiche o media che tu âs autorizazion di access. DRM e controllis di access no a son saltâts.
- Tien i ID di domande e i ID di lavôr te logs operativis privâts. No registrâ URL inviâts inutilmentri.
YTSave al gestisce l'accesso a Schema prin di dut identificant l'ativazion prime di esplorazion. Dopo al seguite cun autentificazion assignade e al tien in viste i forms di domande documentadis. Referenze OpenAPI
Domande il to cjave API
Documentâ il consumadôr API, la stime mensile di domandis e i requisits di piattaforme suportadis. YTSave al rivuarde se risolviment, sottomission di lavôr o ducj doi a son giustificâts prime di emetti un cjave visibil une volte dome.
Domande di access API I cjaves a son limitadis a un tenant, revocabils e rilasadis tramite il form di contat. I script anonims no puedin esegui il lavor di scaricament.