https://savetk.appBuat unduhan dengan SaveTK
SaveTK menampilkan rencana API untuk integrasi alat pembuat, tetapi tidak menerima eksekusi tanpa autentikasi. Persetujuan menyediakan baik kunci maupun batas operasinya.
Awal yang cepat
SaveTK menyajikan tiga poin praktis untuk host API. Pertama adalah kredensial yang diaktifkan dukungan. Alur kerja penyimpanan kemudian mencakup titik akhir tenant yang ditugaskan. Poin akhirnya adalah jalur panggilan hanya server.
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 memudahkan pemindaian keamanan Kredensial. Halaman dimulai dengan penyimpanan rahasia sisi server, berlanjut tanpa penyisipan bundel klien, dan dengan jelas menyatakan tidak ada log atau repositori publik.
Menyelesaikan sebuah tautan
SaveTK menyajikan tiga poin praktis untuk operasi Resolve. Pertama adalah deteksi sumber. Alur kerja penyimpanan kemudian mencakup format dari satu URL yang diajukan. Poin akhirnya adalah tidak ada output yang dibuat-buat.
/v1/resolveScope: menyelesaikan| Medan | Jenis | Diperlukan | Deskripsi |
|---|---|---|---|
creator_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
}SaveTK membuat pengenal Format mudah dipindai. Halaman dimulai dengan nilai yang dikembalikan tanpa perubahan, berlanjut ke ketersediaan per tautan, dan dengan jelas menyatakan tidak ada label kualitas yang ditebak.
Buat dan ikuti pekerjaan unduhan
Pembuatan pekerjaan dimulai dengan persiapan asinkron di SaveTK. Alur penyimpanan ini kemudian menyajikan permintaan HTTP singkat. Fakta terakhir adalah eksekusi pekerja terbatas.
/v1/jobsLingkup: pekerjaan| Medan | Jenis | Diperlukan | Deskripsi |
|---|---|---|---|
creator_link | URL HTTPS | Ya | Sumber yang dinormalisasi sama diajukan untuk diselesaikan. |
save_option | string | Ya | ID tepat dari respons penyelesaian. |
tenant | string | Tidak. | Domain penyewa yang ditetapkan. Biasanya dihilangkan. |
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 | 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://savetk.app/v1/jobs/SAVE_TASK \
-H "X-API-Key: $SAVETK_CREATOR_KEY"SaveTK menangani polling Pekerjaan dengan terlebih dahulu mengidentifikasi jeda awal satu detik. Ini diikuti dengan backoff terbatas dan menjaga pengiriman bertanda tangan sementara tetap terlihat.
Kesalahan yang dapat diprediksi
Kontrak kesalahan dimulai dengan satu amplop non-2xx pada SaveTK. Tampilan berikutnya mencakup ID permintaan dukungan. Halaman menjaga penanganan klien yang dapat diprediksi tetap terlihat.
{
"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
SaveTK menetapkan izin alur kerja kreator setelah memeriksa lalu lintas yang diharapkan dan platform posting yang termasuk dalam cakupan.
- 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.
SaveTK menyajikan tiga poin praktis untuk akses Skema. Pertama adalah aktivasi sebelum eksplorasi. Alur kerja penyimpanan kemudian mencakup otentikasi yang ditugaskan. Poin akhirnya adalah bentuk permintaan yang didokumentasikan.
Aktifkan melalui dukungan
Nyatakan apa yang dilakukan klien SaveTK, berapa banyak panggilan yang diharapkannya dan layanan posting mana yang penting. Tinjauan dukungan memilih cakupannya, kemudian mengembalikan kredensial yang tidak dapat dipulihkan yang ditampilkan satu kali.
Minta aktivasi Kunci adalah tenant-scoped, dapat dicabut dan dikeluarkan melalui formulir Kontak. Skrip anonim tidak dapat menjalankan pekerjaan pengunduh.