https://ytsave.appYTSave ile derleme indirmeleri oluşturun
Bir genel medya URL'sini çözümleyin, tam bir format seçin, eşzamansız bir iş oluşturun ve imzalı sonucu kullanıcınıza teslim edin. Aynı sınırlı üretim hattı YTSave web sitesini de destekler.
Hızlı başlangıç
YTSave, API ana bilgisayarını önce destek etkinleştirilmiş kimlik bilgilerini tanımlayarak yönetir. Ardından atanan kiracı uç noktasını takip eder ve yalnızca sunucu çağrı yolunu görünür tutar.
X-API-Key: ys_live_…YTSaveClientv1# Available only after support activation
export YTSAVE_API_KEY="issued-after-review"
curl -X POST https://ytsave.app/v1/resolve \
-H "X-API-Key: $YTSAVE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://www.youtube.com/watch?v=VIDEO_ID"}'Kimlik bilgisi güvenliğini açıklamak için, YTSave sunucu tarafı gizli depolamayı istemci paketi içine gömülmemeden ayırır. Bir kanıt kaydı, genel günlükler veya depolara kendi yerini vermez.
Bir bağlantıyı çözmek
YTSave, Çözüm işlemini önce kaynak algılamayı belirleyerek yönetir. Ardından bir gönderilen URL'den formatları takip eder ve görünümde uydurma çıktı tutmaz.
/v1/resolveKapsam: çözüm| Alan | Tip | Gerekli | Açıklama |
|---|---|---|---|
url | HTTPS URL'si | Evet | Analiz için genel veya yetkili medya sayfası. |
tenant | dize | Hayır. | Atanmış kiracı alanı. Genellikle atlanır. |
{
"success": true,
"platform": "youtube",
"title": "Example video",
"formats": [
{"id":"18","type":"video","quality":"360p","container":"mp4"}
],
"cached": false
}Format tanımlayıcısını açıklamak için, YTSave döndürülen değeri bağlantı başına kullanılabilirlikten değişmeden ayırır. Bir kanıt kaydı, tahmin edilen kalite etiketine kendi yerini vermez.
Bir indirme işi oluştur ve takip et
İş oluşturma için YTSave, eşzamansız hazırlıkla başlar. Kanıt kaydı bunu kısa bir HTTP isteğiyle eşleştirir ve sınırlandırılmış işçi yürütmesiyle sona erer.
/v1/jobsKapsam: işler| Alan | Tip | Gerekli | Açıklama |
|---|---|---|---|
url | HTTPS URL'si | Evet | Çözümlemek için gönderilen aynı normalize edilmiş kaynak. |
format_id | dize | Evet | Çözüm yanıtından tam bir kimlik. |
tenant | dize | Hayır. | Atanmış kiracı alanı. Genellikle atlanır. |
curl -X POST https://ytsave.app/v1/jobs \
-H "X-API-Key: $YTSAVE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://www.youtube.com/watch?v=VIDEO_ID","format_id":"18"}'job_id.GET /v1/jobs/{job_id} aynı anahtarla.| Durum | Anlamı | Müşteri işlemi |
|---|---|---|
queued | Sınırlı kuyruğa kabul edildi. | Geri çekilerek tekrar anket yap. |
extracting | Kaynak meta verileri veya rota yenileniyor. | Oylamaya devam edin. |
processing | İndiriliyor, yeniden paketleniyor veya birleştiriliyor. | Sunucu ilerlemesini göster. |
ready | İmzalı indirme mevcut. | URL'yi kullanıcıya gönderin. |
failed | Terminal yapılı hata. | Oku error_codeSadece önerildiğinde yeniden deneyin. |
expired | Geçici çıktı kaldırıldı. | Yeni bir iş oluşturun. |
curl https://ytsave.app/v1/jobs/JOB_ID \
-H "X-API-Key: $YTSAVE_API_KEY"YTSave, İş yoklamasını kolayca taranabilir hale getirir. Sayfa, bir saniyelik ilk bekleme ile başlar, sınırlandırılmış geri çekilmeye geçer ve geçici imzalı teslimatı açıkça belirtir.
Öngörülebilir hatalar
Hata sözleşmesi için, YTSave destek talebi kimliğinden önce bir 2xx olmayan zarfı kontrol eder. Bu kanıt kaydı ayrıca öngörülebilir istemci işlemesini netleştirir.
{
"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 | Tipik anlamı | Eylem |
|---|---|---|
| 400 | Geçersiz URL, içerik veya kullanılamayan format. | İsteği düzeltin. Formatlar için tekrar çözün. |
| 401 | Eksik, geçersiz, süresi dolmuş veya yanlış kapsamda anahtar. | Sunucu tarafı kimlik bilgilerini kontrol et. |
| 403 | Kiracı veya kaynak politikası isteği reddetti. | Politikayı atlamayın. Destek ile iletişime geçin. |
| 404 | Bilinmeyen veya süresi dolmuş iş. | Uygunsa yeni bir iş oluşturun. |
| 429 | İstek veya aktif iş limiti aşıldı. | Onur retry_after_seconds. |
| 503 | Kuyruk/kapasite veya üst akış geçici olarak kullanılamıyor. | Üssel geri çekilme ve jitter ile yeniden dene. |
Operasyon sözleşmesi
YTSave, API tüketicisini ve üst akım medya hizmetlerini korumak için her onayla birlikte bir operasyonel kota çıkarır.
- idempotent uygulama mantığını kullanın ve aynı kullanıcı tıklama için asla çifte işler başlatmayın.
- Önbellek meta verileri kısaca çözer, ancak imzalanmış indirme URL'lerine her zaman son kullanma tarihi olarak davranır.
- İçin sınırlı üstel geri çekilmeyi jitter ile kullanın
429,503ve yeniden denenebilir hatalar. - Sadece kamusal medya veya erişimine izin verdiğiniz medyayı işleyin. DRM ve erişim kontrolleri atlatılmadı.
- İstek kimliklerini ve iş kimliklerini özel operasyon kayıtlarında tutun. Gereksiz yere gönderilen URL'leri kayıt altına almayın.
YTSave keşif öncesi ilk olarak aktifleştirmeyi tanımlayarak Şema erişimini ele alır. Tayin edilmiş kimlik doğrulama ile takip eder ve belgelenmiş talep şekillerini göz önünde tutar. OpenAPI referansı
API anahtarınızı talep edin
API tüketicisini, aylık istek tahminini ve desteklenen platform gereksinimlerini belgeleyin. YTSave, bir kez görünür anahtar vermeden önce çözümleme, iş gönderimi veya her ikisinin de haklı olup olmadığını inceler.
API erişimi iste Anahtarların kiracı kapsamı vardır, geri alınabilir ve İletişim formu aracılığıyla verilir. Anonim scriptler indirme işlemini gerçekleştiremez.