https://dwtt.appBuat unduhan dengan DWTT
DWTT menerbitkan garis besar integrasi ini untuk perencanaan, bukan pelaksanaan anonim. Dukungan harus menyetujui alur kerja klip sebelum mengeluarkan kunci terbatas dan kuota lalu lintasnya.
Awal yang cepat
DWTT memudahkan pemindaian host API. Halaman dimulai dengan kredensial yang diaktifkan dukungan, berlanjut ke endpoint penyewa yang ditugaskan, dan dengan jelas menyatakan jalur panggilan hanya server.
X-API-Key: pending_activation_…DwttToolkitv1# Available only after support activation
export DWTT_TOOL_TOKEN="issued-after-review"
curl -X POST https://dwtt.app/v1/resolve \
-H "X-API-Key: $DWTT_TOOL_TOKEN" \
-H "Content-Type: application/json" \
-d '{"source_link":"https://www.youtube.com/watch?v=VIDEO_ID"}'DWTT mendekati keamanan Kredensial melalui penyimpanan rahasia sisi server, kemudian tidak ada penyisipan bundel klien. Alur kerja yang disederhanakan tidak menyimpan log publik atau repositori secara eksplisit.
Menyelesaikan sebuah tautan
DWTT membuat operasi Resolve mudah dipindai. Halaman dimulai dengan deteksi sumber, berlanjut ke format dari satu URL yang diajukan, dan dengan jelas menyatakan tidak ada keluaran yang dibuat-buat.
/v1/resolveScope: menyelesaikan| Medan | Jenis | Diperlukan | Deskripsi |
|---|---|---|---|
source_link | 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
}DWTT mendekati pengenal Format melalui nilai yang dikembalikan tanpa perubahan, kemudian ketersediaan per tautan. Alur kerja yang disederhanakan ini tidak menampilkan label kualitas yang ditebak secara eksplisit.
Buat dan ikuti pekerjaan unduhan
Di DWTT, persiapan asinkron datang pertama saat menjelaskan pembuatan Pekerjaan. Alur kerja yang disederhanakan itu diikuti dengan permintaan HTTP singkat dan ditutup pada eksekusi pekerja terbatas.
/v1/jobsLingkup: pekerjaan| Medan | Jenis | Diperlukan | Deskripsi |
|---|---|---|---|
source_link | URL HTTPS | Ya | Sumber yang dinormalisasi sama diajukan untuk diselesaikan. |
format_ref | string | Ya | ID tepat dari respons penyelesaian. |
tenant | string | Tidak. | Domain penyewa yang ditetapkan. Biasanya dihilangkan. |
curl -X POST https://dwtt.app/v1/jobs \
-H "X-API-Key: $DWTT_TOOL_TOKEN" \
-H "Content-Type: application/json" \
-d '{"source_link":"https://www.youtube.com/watch?v=VIDEO_ID","format_ref":"18"}'task_ref.GET /v1/jobs/{task_ref} 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://dwtt.app/v1/jobs/TASK_REF \
-H "X-API-Key: $DWTT_TOOL_TOKEN"Untuk menjelaskan polling Pekerjaan, DWTT memisahkan tunggu awal satu detik dari backoff yang dibatasi. Alur kerja yang disederhanakan memberikan pengiriman bertanda sementara tempat tersendiri.
Kesalahan yang dapat diprediksi
Satu amplop non-2xx adalah titik awal untuk kontrak Kesalahan di DWTT. Alur kerja yang disederhanakan kemudian menyajikan ID permintaan dukungan dan menjelaskan 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
DWTT menetapkan batas lalu lintas saat aktivasi agar integrasi klip dan jaringan sumber tidak kelebihan beban.
- 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.
DWTT memudahkan akses Skema untuk dipindai. Halaman dimulai dengan aktivasi sebelum eksplorasi, berlanjut ke otentikasi yang ditugaskan, dan dengan jelas menyatakan bentuk permintaan yang terdokumentasi.
Aktifkan melalui dukungan
Kirimkan DWTT integrasi yang dimaksud, kemungkinan volume permintaan dan jaringan target. Sebutkan apakah klien membutuhkan resolusi, pembuatan pekerjaan, atau keduanya agar kunci yang dibatasi dapat disetujui dan ditampilkan sekali.
Minta aktivasi Kunci adalah tenant-scoped, dapat dicabut dan dikeluarkan melalui formulir Kontak. Skrip anonim tidak dapat menjalankan pekerjaan pengunduh.