https://savetk.appBina muat turun dengan SaveTK
SaveTK memaparkan pelan API untuk integrasi pencipta-alat, tetapi tidak menerima pelaksanaan yang tidak disahkan. Kelulusan membekalkan kedua-dua kunci dan had operasinya.
Mulakan dengan cepat
SaveTK membentangkan tiga perkara praktikal untuk hos API. Pertama adalah kelayakan yang diaktifkan sokongan. Aliran kerja penyimpanan kemudian merangkumi titik akhir penyewa yang ditetapkan. Titik akhirnya adalah laluan panggilan hanya pelayan.
X-API-Key: pending_activation_…SaveTkCreatorv1# Available only after support activation
export SAVETK_CREATOR_KEY="issued-after-review"
curl -X POST https://savetk.app/v1/resolve \
-H "X-API-Key: $SAVETK_CREATOR_KEY" \
-H "Content-Type: application/json" \
-d '{"creator_link":"https://www.youtube.com/watch?v=VIDEO_ID"}'SaveTK menjadikan keselamatan Credential mudah untuk diimbas. Halaman bermula dengan penyimpanan rahsia sisi pelayan, bergerak ke tiada penempatan bundle klien, dan dengan jelas menyatakan tiada log awam atau repositori.
Menyelesaikan pautan
SaveTK membentangkan tiga perkara praktikal untuk operasi Resolve. Pertama adalah pengesanan sumber. Aliran kerja penyimpanan kemudian merangkumi format dari satu URL yang dihantar. Titik akhirnya adalah tiada output yang direka.
/v1/resolveSkop: menyelesaikan| Medan | Jenis | Diperlukan | Huraian |
|---|---|---|---|
creator_link | URL HTTPS | Ya | Halaman media awam atau yang dibenarkan untuk dianalisis. |
tenant | rentetan | Tidak | Domain penyewa yang ditugaskan. Biasanya ditinggalkan. |
{
"success": true,
"platform": "youtube",
"title": "Example video",
"formats": [
{"id":"18","type":"video","quality":"360p","container":"mp4"}
],
"cached": false
}SaveTK menjadikan pengenal Format mudah untuk mengimbas. Halaman bermula dengan nilai yang dikembalikan tidak berubah, bergerak ke ketersediaan per pautan, dan dengan jelas menyatakan tiada label kualiti yang ditebak.
Cipta dan ikuti kerja muat turun
Penciptaan pekerjaan bermula dengan persediaan asynchronous pada SaveTK. Aliran kerja penjimatan ini kemudian membentangkan permintaan HTTP pendek. Fakta akhir adalah pelaksanaan pekerja yang dibatasi.
/v1/jobsSkop: pekerjaan| Medan | Jenis | Diperlukan | Huraian |
|---|---|---|---|
creator_link | URL HTTPS | Ya | Sumber yang sama dinormalisasi dihantar untuk menyelesaikan. |
save_option | rentetan | Ya | ID yang tepat dari respons penyelesaian. |
tenant | rentetan | Tidak | Domain penyewa yang ditugaskan. Biasanya ditinggalkan. |
curl -X POST https://savetk.app/v1/jobs \
-H "X-API-Key: $SAVETK_CREATOR_KEY" \
-H "Content-Type: application/json" \
-d '{"creator_link":"https://www.youtube.com/watch?v=VIDEO_ID","save_option":"18"}'save_task.GET /v1/jobs/{save_task} dengan kunci yang sama.| Status | Makna | Tindakan Pelanggan |
|---|---|---|
queued | Dibenarkan masuk ke barisan yang dibatasi. | Poll lagi dengan backoff. |
extracting | Menyegar semula metadata sumber atau laluan. | Teruskan mengundi. |
processing | Memuat turun, remuxing atau menggabungkan. | Papar kemajuan pelayan. |
ready | Muat turun yang ditandatangani tersedia. | Hantar URL kepada pengguna. |
failed | Ralat berstruktur terminal. | Baca error_code. Cuba semula hanya apabila dinasihatkan. |
expired | Keluaran sementara dikeluarkan. | Cipta pekerjaan baru. |
curl https://savetk.app/v1/jobs/SAVE_TASK \
-H "X-API-Key: $SAVETK_CREATOR_KEY"SaveTK mengendalikan polling Kerja dengan pertama mengenal pasti satu-dua saat menunggu awal. Ia mengikuti dengan backoff capped dan menyimpan penghantaran sementara yang ditandatangani dalam pandangan.
Kesalahan yang boleh diramalkan
Kontrak ralat bermula dengan satu sampul surat bukan 2xx pada SaveTK. Pandangan seterusnya meliputi ID permintaan sokongan. Halaman menyimpan pengendalian pelanggan yang boleh diramalkan kelihatan.
{
"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 | Makna biasa | Tindakan |
|---|---|---|
| 400 | URL tidak sah, badan atau format tidak tersedia. | Betulkan permintaan. Selesaikan lagi untuk format. |
| 401 | Kunci hilang, tidak sah, tamat tempoh atau salah skop. | Semak kelayakan sisi pelayan. |
| 403 | Polisi penyewa atau sumber menolak permintaan. | Jangan mengelirukan dasar Hubungi sokongan. |
| 404 | Kerja yang tidak diketahui atau tamat tempoh. | Buat kerja baru jika sesuai. |
| 429 | Permintaan atau had aktif-kerja telah dicapai. | Kehormatan retry_after_seconds. |
| 503 | Baris gilir/kapasiti atau upstream tidak tersedia buat sementara waktu. | Cuba lagi dengan backoff eksponen dan jitter. |
Kontrak operasi
SaveTK menetapkan elaun pencipta-aliran kerja selepas mengkaji lalu lintas yang dijangkakan dan platform penerbitan dalam skop.
- Gunakan logik aplikasi idempotent dan jangan pernah memulakan kerja berganda untuk klik pengguna yang sama.
- Cache menyelesaikan metadata secara ringkas, tetapi sentiasa merawat URL muat turun yang ditandatangani sebagai tamat tempoh.
- Gunakan backoff eksponen yang dibatasi dengan jitter untuk
429,503dan kesilapan yang boleh dicuba semula. - Proses hanya media awam atau media yang anda dibenarkan untuk mengakses. DRM dan kawalan akses tidak dipintas.
- Simpan ID permintaan dan ID kerja dalam log operasi peribadi. Jangan log URL yang dihantar tanpa perlu.
SaveTK membentangkan tiga titik praktikal untuk akses Skim. Pertama datang pengaktifan sebelum penerokaan. Aliran kerja simpanan kemudian meliputi pengesahan yang ditugaskan. Titik terakhirnya adalah bentuk permintaan yang didokumentasikan.
Aktifkan melalui sokongan
Nyatakan apa yang dilakukan oleh klien SaveTK, berapa banyak panggilan yang dijangkakan dan perkhidmatan penyiapan mana yang penting. Ulasan sokongan memilih skopnya, kemudian mengembalikan kelayakan yang tidak boleh dipulihkan yang dipaparkan sekali sahaja.
Minta pengaktifan Kunci adalah skop penyewa, boleh dibatalkan dan dikeluarkan melalui borang Hubungi. Skrip tanpa nama tidak dapat melaksanakan kerja pemuat turun.