PRODUKCJA REST API · v1

Zbuduj pobieranie z YTSave

Rozwiąż publiczny URL mediów, wybierz dokładny format, utwórz asynchroniczne zadanie i przekaż podpisany wynik swojemu użytkownikowi. Ta sama powiązana linia produkcyjna zasila stronę YTSave.

YTSaveClientJSON przez HTTPSZadania asynchronicznePoświadczenia zakresowe
01

Szybki start

YTSave obsługuje hosta API, najpierw identyfikując poświadczenia aktywowane przez wsparcie. Następnie przypisuje punkt końcowy najemcy i utrzymuje ścieżkę wywołania tylko po stronie serwera.

URL dzierżawcyhttps://ytsave.app
UwierzytelnianieX-API-Key: ys_live_…
Profil klientaYTSaveClient
Wersja APIv1
# 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"}'

Aby wyjaśnić bezpieczeństwo Credential, YTSave oddziela serwerowe przechowywanie sekretów od braku osadzania w pakiecie klienta. Rekord dowodowy nie nadaje publicznym logom ani repozytoriom własnego miejsca.

02

Rozwiązywanie linku

YTSave obsługuje operację Resolve, najpierw identyfikując wykrycie źródła. Następnie przetwarza formaty z jednego przesłanego URL i nie utrzymuje w widoku żadnych wymyślonych wyników.

POST/v1/resolveZakres: rozwiązać
FieldTypWymaganeOpis
urlAdres HTTPSTakStrona publiczna lub autoryzowane media do analizy.
tenantciąg znakówNiePrzypisana domena dzierżawy. Zazwyczaj pomijany.
{
  "success": true,
  "platform": "youtube",
  "title": "Example video",
  "formats": [
    {"id":"18","type":"video","quality":"360p","container":"mp4"}
  ],
  "cached": false
}

Aby wyjaśnić identyfikator formatu, YTSave oddziela zwróconą wartość bez zmian od dostępności dla poszczególnych linków. Zapis dowodowy nie nadaje własnego miejsca żadnej domyślnie zgadywanej etykiecie jakości.

03

Tworzenie i śledzenie zadania pobierania

W przypadku tworzenia zadania YTSave rozpoczyna się od asynchronicznego przygotowania, którego rekord dowodu łączy się z krótkim żądaniem HTTP i kończy się wykonaniem ograniczonego zadania roboczego.

POST/v1/jobsZakres: oferty pracy
FieldTypWymaganeOpis
urlAdres HTTPSTakTo samo znormalizowane źródło złożone do rozwiązania.
format_idciąg znakówTakDokładny identyfikator z odpowiedzi na żądanie rozpoznania.
tenantciąg znakówNiePrzypisana domena dzierżawy. Zazwyczaj pomijany.
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"}'
1202 ZaakceptowanoSave job_id.
2Status ankietyGET /v1/jobs/{job_id} tym samym kluczem.
3GotowiOtwórz podpisany adres URL pobierania.
StatusZnaczenieAkcja klienta
queuedPrzyjęty do ograniczonej kolejki.Ankieta ponownie z backoff.
extractingOdświeżanie metadanych źródłowych lub trasy.Kontynuuj ankietowanie.
processingPobieranie, remiksowanie lub łączenie.Wyświetlanie postępu serwera.
readyPodpisane pobieranie jest dostępne.Wyślij adres URL do użytkownika.
failedBłąd struktury terminala.Read error_code. Powtórz próbę tylko wtedy, gdy jest do zalecane.
expiredTymczasowe wyjście zostało usunięte.Utwórz nowe zadanie.
curl https://ytsave.app/v1/jobs/JOB_ID \
  -H "X-API-Key: $YTSAVE_API_KEY"

YTSave ułatwia skanowanie sondowania zadań. Strona zaczyna się od jednosekundowego początkowego oczekiwania, przechodzi do ograniczonego cofania i wyraźnie informuje o tymczasowej podpisanej dostawie.

04

Błędy przewidywalne

Dla błędu kontraktu YTSave sprawdza jedną kopertę nie-2xx przed identyfikatorem zgłoszenia wsparcia. Ten zapis dowodowy również jasno określa przewidywalne obsługiwanie 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": "…"
}
HTTPTypowe znaczenieAkcja
400Nieprawidłowy adres URL, treść lub niedostępny format.Popraw żądanie. Rozwiąż ponownie dla formatów.
401Brakujący, nieprawidłowy, wygasły lub o niewłaściwym zakresie klucz.Sprawdź poświadczenia po stronie serwera.
403Polityka najemcy lub źródła odrzuciła żądanie.Nie omijać zasad. Skontaktuj się z pomocą techniczną.
404Nieznane lub wygasłe zadanie.Utwórz nowe zadanie, jeśli do konieczne.
429Osiągnięto limit żądań lub aktywnych zadań.Honor retry_after_seconds.
503Kolejka/pojemność lub źródło tymczasowo niedostępne.Powtórz próbę z wykładniczym cofaniem i drganiami.
05

Kontrakt operacyjny

YTSave wydaje limit operacyjny przy każdym zatwierdzeniu, aby zabezpieczyć usługi API konsumenta i mediów wyższego rzędu.

YTSave obsługuje dostęp do Schema, najpierw identyfikując aktywację przed eksploracją. Następnie przechodzi do przypisanego uwierzytelnienia i utrzymuje w polu widzenia udokumentowane kształty żądań. OpenAPI

DOSTOSOWANY DO OPERATORA DOSTĘP

Poproś o klucz API

Udokumentuj konsumenta API, jego miesięczne szacowane zapotrzebowanie na żądania oraz obsługiwane wymagania platformowe. YTSave sprawdza, czy uzasadnione jest rozwiązywanie, przesyłanie zadań lub jedno i drugie, zanim wyda jednorazowo widoczny klucz.

Poproś o dostęp do API Klucze są ograniczone do dzierżawcy, odwołalne i wydawane za pośrednictwem formularza Kontakt. Anonimowe skrypty nie mogą wykonywać pracy pobierania.