https://ffast.appBangun unduhan dengan FFast
FFast mengungkapkan bentuk API yang dimaksud tanpa menghidupkan panggilan publik. Seorang operator mengaktifkan kredensial dan kuota yang diukur setelah memeriksa integrasi yang diusulkan.
Awal yang cepat
FFast mendekati host API melalui kredensial yang diaktifkan dukungan, kemudian titik akhir tenant yang ditugaskan. Tinjauan cepat menjaga jalur panggilan hanya server secara eksplisit.
X-API-Key: pending_activation_…FfastPipelinev1# Available only after support activation
export FFAST_PIPELINE_KEY="issued-after-review"
curl -X POST https://ffast.app/v1/resolve \
-H "X-API-Key: $FFAST_PIPELINE_KEY" \
-H "Content-Type: application/json" \
-d '{"fast_source":"https://www.youtube.com/watch?v=VIDEO_ID"}'Untuk keamanan Credential, FFast memeriksa penyimpanan rahasia sisi server sebelum tidak ada pengecatan bundle klien. Tinjauan cepat ini juga membuat tidak ada log publik atau repositori yang jelas.
Menyelesaikan sebuah tautan
FFast mendekati operasi Resolve melalui deteksi sumber, kemudian format dari satu URL yang diajukan. Tinjauan cepat menjaga tidak ada keluaran yang diciptakan secara eksplisit.
/v1/resolveScope: menyelesaikan| Medan | Jenis | Diperlukan | Deskripsi |
|---|---|---|---|
fast_source | URL HTTPS | Ya | Halaman media publik atau resmi untuk dianalisis. |
tenant | string | Tidak. | Domain penyewa yang ditetapkan. Biasanya dihilangkan. |
{
"success": true,
"platform": "youtube",
"title": "Example video",
"formats": [
{"id":"18","type":"video","quality":"360p","container":"mp4"}
],
"cached": false
}Untuk Format identifier, FFast memeriksa nilai yang dikembalikan tidak berubah sebelum ketersediaan per-link. Tinjauan cepat ini juga membuat tidak ada label kualitas yang ditebak jelas.
Buat dan ikuti pekerjaan unduhan
FFast menangani pembuatan Job dengan pertama-tama mengidentifikasi persiapan asinkron. Ia mengikuti dengan permintaan HTTP singkat dan menjaga eksekusi pekerja terbatas dalam pandangan.
/v1/jobsLingkup: pekerjaan| Medan | Jenis | Diperlukan | Deskripsi |
|---|---|---|---|
fast_source | URL HTTPS | Ya | Sumber yang dinormalisasi sama diajukan untuk diselesaikan. |
output_code | string | Ya | ID tepat dari respons penyelesaian. |
tenant | string | Tidak. | Domain penyewa yang ditetapkan. Biasanya dihilangkan. |
curl -X POST https://ffast.app/v1/jobs \
-H "X-API-Key: $FFAST_PIPELINE_KEY" \
-H "Content-Type: application/json" \
-d '{"fast_source":"https://www.youtube.com/watch?v=VIDEO_ID","output_code":"18"}'pipeline_run.GET /v1/jobs/{pipeline_run} dengan kunci yang sama.| Status | Artinya | Tindakan klien |
|---|---|---|
queued | Diterima ke antrian terbatas. | Poll lagi dengan backoff. |
extracting | Menyegarkan metadata sumber atau rute. | Lanjutkan polling. |
processing | Mengunduh, meremux, atau menggabungkan. | Tunjukkan kemajuan server. |
ready | Unduh yang ditandatangani tersedia. | Kirim URL ke pengguna. |
failed | Kesalahan struktur terminal. | Baca error_code. Coba ulang hanya ketika dianjurkan. |
expired | Keluaran sementara dihapus. | Buat pekerjaan baru. |
curl https://ffast.app/v1/jobs/PIPELINE_RUN \
-H "X-API-Key: $FFAST_PIPELINE_KEY"Polling pekerjaan dimulai dengan menunggu awal satu detik pada FFast. Tampilan berikutnya mencakup backoff yang dicap. Halaman menyimpan pengiriman yang ditandatangani sementara yang terlihat.
Kesalahan yang dapat diprediksi
Ulasan cepat FFast meninjau satu amplop non-2xx untuk kontrak Error. Ini menunjukkan ID permintaan dukungan berikutnya dan tidak menutupi penanganan klien yang dapat diprediksi.
{
"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 | Arti yang khas | Action |
|---|---|---|
| 400 | URL tidak valid, isi atau format tidak tersedia. | Perbaiki permintaan. Selesaikan lagi untuk format. |
| 401 | Kunci hilang, tidak valid, kedaluwarsa, atau cakupan salah. | Periksa kredensial sisi server. |
| 403 | Kebijakan penyewa atau sumber menolak permintaan. | Jangan melewati kebijakan. Hubungi dukungan. |
| 404 | Pekerjaan yang tidak diketahui atau kadaluarsa. | Buat pekerjaan baru jika sesuai. |
| 429 | Batas permintaan atau pekerjaan aktif telah tercapai. | Kehormatan retry_after_seconds. |
| 503 | Antrian/kapasitas atau hulu sementara tidak tersedia. | Coba lagi dengan penundaan eksponensial dan jitter. |
Kontrak operasional
FFast mengaktifkan kuota terukur yang menjaga penyerahan tetap responsif tanpa memberikan beban yang tidak aman pada platform hulu.
- Gunakan logika aplikasi idempotent dan jangan pernah memulai pekerjaan duplikat untuk klik pengguna yang sama.
- Cache menyelesaikan metadata secara singkat, tetapi selalu memperlakukan URL unduhan yang ditandatangani sebagai berakhir.
- Gunakan bounded exponential backoff dengan jitter untuk
429,503dan kesalahan yang dapat dicoba kembali. - Proses hanya media publik atau media yang Anda diizinkan untuk mengakses. DRM dan kontrol akses tidak dihindari.
- Simpan ID permintaan dan ID pekerjaan dalam log operasional pribadi. Jangan log URL yang diajukan tanpa perlu.
FFast mendekati akses Schema melalui aktivasi sebelum eksplorasi, kemudian ditugaskan otentikasi. Tinjauan cepat menjaga bentuk permintaan yang terdokumentasi secara eksplisit.
Aktifkan melalui dukungan
Berikan FFast ringkasan produk yang ringkas, proyeksi lalu lintas dan daftar platform. Sebutkan apakah pengecekan metadata, pekerjaan yang disiapkan atau keduanya diperlukan sehingga kunci yang dikeluarkan sesuai dengan alur kerja yang sebenarnya.
Minta aktivasi Kunci adalah tenant-scoped, dapat dicabut dan dikeluarkan melalui formulir Kontak. Skrip anonim tidak dapat menjalankan pekerjaan pengunduh.