https://quickdl.appBuduj pobrania z QuickDL
Serwis QuickDL pozwala programistom sprawdzić zwięzły model żądania przed jego aktywacją. Obsługa musi zweryfikować produkt, zanim będzie można użyć klucza prywatnego i limitu.
Szybki start
W QuickDL wyjaśnianie hosta API zaczyna się od poświadczeń aktywowanych przez obsługę. Następnie podawany jest przypisany punkt końcowy tenanta, a całość kończy informacja, że wywołanie odbywa się wyłącznie po stronie serwera.
X-API-Key: pending_activation_…QuickDlJobsv1# Available only after support activation
export QUICKDL_JOB_KEY="issued-after-review"
curl -X POST https://quickdl.app/v1/resolve \
-H "X-API-Key: $QUICKDL_JOB_KEY" \
-H "Content-Type: application/json" \
-d '{"public_link":"https://www.youtube.com/watch?v=VIDEO_ID"}'QuickDL chroni dane uwierzytelniające, przechowując sekrety po stronie serwera, a nie w pakiecie klienta. Dzienniki i repozytoria nie są publiczne.
Rozwiązywanie linku
Wyjaśnienie działania Resolve w QuickDL zaczyna się od wykrycia źródła. Następnie narzędzie pokazuje formaty dla jednego podanego adresu URL i nie dodaje fikcyjnych wyników.
/v1/resolveZakres: rozwiązać| Field | Typ | Wymagane | Opis |
|---|---|---|---|
public_link | Adres HTTPS | Tak | Strona publiczna lub autoryzowane media do analizy. |
tenant | ciąg znaków | Nie | Przypisana domena dzierżawy. Zazwyczaj pomijany. |
{
"success": true,
"platform": "youtube",
"title": "Example video",
"formats": [
{"id":"18","type":"video","quality":"360p","container":"mp4"}
],
"cached": false
}W przypadku identyfikatora formatu QuickDL najpierw pokazuje zwróconą wartość bez zmian. Następnie podaje dostępność dla danego linku i nie wyświetla zgadywanej etykiety jakości.
Tworzenie i śledzenie zadania pobierania
Narzędzie QuickDL sprawdza asynchroniczne przygotowanie przy tworzeniu zadania. Wykonuje krótkie żądanie HTTP, nie blokując pracy ograniczonej liczby workerów.
/v1/jobsZakres: oferty pracy| Field | Typ | Wymagane | Opis |
|---|---|---|---|
public_link | Adres HTTPS | Tak | To samo znormalizowane źródło złożone do rozwiązania. |
download_option | ciąg znaków | Tak | Dokładny identyfikator z odpowiedzi na żądanie rozpoznania. |
tenant | ciąg znaków | Nie | Przypisana domena dzierżawy. Zazwyczaj pomijany. |
curl -X POST https://quickdl.app/v1/jobs \
-H "X-API-Key: $QUICKDL_JOB_KEY" \
-H "Content-Type: application/json" \
-d '{"public_link":"https://www.youtube.com/watch?v=VIDEO_ID","download_option":"18"}'quick_job.GET /v1/jobs/{quick_job} tym samym kluczem.| Status | Znaczenie | Akcja klienta |
|---|---|---|
queued | Przyjęty do ograniczonej kolejki. | Ankieta ponownie z backoff. |
extracting | Odświeżanie metadanych źródłowych lub trasy. | Kontynuuj ankietowanie. |
processing | Pobieranie, remiksowanie lub łączenie. | Wyświetlanie postępu serwera. |
ready | Podpisane pobieranie jest dostępne. | Wyślij adres URL do użytkownika. |
failed | Błąd struktury terminala. | Read error_code. Powtórz próbę tylko wtedy, gdy jest to zalecane. |
expired | Tymczasowe wyjście zostało usunięte. | Utwórz nowe zadanie. |
curl https://quickdl.app/v1/jobs/QUICK_JOB \
-H "X-API-Key: $QUICKDL_JOB_KEY"W QuickDL sprawdzanie stanu zadania opiera się na trzech zasadach: początkowe oczekiwanie trwa jedną sekundę, kolejne próby wykorzystują ograniczone narastające opóźnienie, a rezultat jest dostarczany tymczasowym podpisanym linkiem.
Błędy przewidywalne
Kontrakt obsługi błędów w serwisie QuickDL przewiduje odpowiedź z kodem innym niż 2xx oraz identyfikator zgłoszenia do pomocy. Kompaktowe narzędzie jasno opisuje przewidywalny sposób obsługi takiej odpowiedzi przez 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": "…"
}| HTTP | Typowe znaczenie | Akcja |
|---|---|---|
| 400 | Nieprawidłowy adres URL, treść lub niedostępny format. | Popraw żądanie. Rozwiąż ponownie dla formatów. |
| 401 | Brakujący, nieprawidłowy, wygasły lub o niewłaściwym zakresie klucz. | Sprawdź poświadczenia po stronie serwera. |
| 403 | Polityka najemcy lub źródła odrzuciła żądanie. | Nie omijać zasad. Skontaktuj się z pomocą techniczną. |
| 404 | Nieznane lub wygasłe zadanie. | Utwórz nowe zadanie, jeśli to konieczne. |
| 429 | Osiągnięto limit żądań lub aktywnych zadań. | Honor retry_after_seconds. |
| 503 | Kolejka/pojemność lub źródło tymczasowo niedostępne. | Powtórz próbę z wykładniczym cofaniem i drganiami. |
Kontrakt operacyjny
Serwis QuickDL przydziela ograniczony limit dla konkretnego klienta. Pozwala on korzystać z integracji bez nadmiernego obciążania usług źródłowych.
- Używaj logiki aplikacji idempotent i nigdy nie uruchamiaj zduplikowanych zadań dla tego samego kliknięcia użytkownika.
- Pamięć podręczna rozwiązuje metadane krótko, ale zawsze traktuje podpisane adresy URL pobierania jako wygasające.
- Użyj ograniczonego wykładniczego opóźnienia z jitterem dla
429,503i błędów do ponownego próbowania. - Przetwarzaj tylko publiczne media lub media, do których masz uprawnienia dostępu. DRM i kontrole dostępu nie są omijające.
- Przechowuj identyfikatory żądań i identyfikatory zadań w prywatnych dziennikach operacyjnych. Nie rejestruj niepotrzebnie przesłanych adresów URL.
Dostęp do schematu w QuickDL wymaga aktywacji przed rozpoczęciem korzystania. Narzędzie używa przypisanego uwierzytelniania i udokumentowanych formatów żądań.
Aktywacja poprzez wsparcie
Podaj QuickDL nazwę integracji, przewidywaną liczbę żądań miesięcznie i wymagane źródła. Opisz operacje, które będzie wykonywać serwer, aby zatwierdzony klucz był jednorazowy i miał ściśle ograniczony zakres.
Prośba o aktywację Klucze są ograniczone do dzierżawcy, odwołalne i wydawane za pośrednictwem formularza Kontakt. Anonimowe skrypty nie mogą wykonywać pracy pobierania.