Docs
Ne nerede çalışıyor, sırada ne var.
swapfile.io nasıl çalışır
Dönüştürücü ve metadata temizleyici, File API ve canvas kullanarak tamamen tarayıcında çalışır. Dosyan cihazında belleğe okunur, orada işlenir ve oradan indirilir. Tarayıcının açamadığı formatlar için (Safari dışında HEIC gibi) sunucu tarafı bir hat geliyor; o işlerin dosyaları depodan en geç bir saat içinde silinecek.
Veri akışı
API
Dosyaları kendi kodundan bir REST API ile dönüştür. Site ile aynı sunucu hattını kullanır: yüklemeyi kaydedersin, baytları gönderirsin, bir dönüştürme işi başlatırsın ve sonucu indirirsin — hepsi bir API anahtarıyla doğrulanır.
Hesabında bir API anahtarı oluştur
Kimlik doğrulama
Her istek anahtarını Authorization başlığında (Bearer) ya da X-API-Key başlığında taşır. Parola gibi gizli tut — hesabının dönüştürme kotasını harcar.
curl https://api.swapfile.io/v1/jobs/{id} \
-H "Authorization: Bearer sf_live_..."Bir dosyayı dönüştürme
# 1 · register the upload → presigned URL curl -X POST https://api.swapfile.io/v1/uploads \ -H "Authorization: Bearer sf_live_..." \ -H "Content-Type: application/json" \ -d '{"size": 48213}' → {"file_id":"9f2c…","upload_url":"https://…"} # 2 · send the raw bytes to that URL curl -X PUT --upload-file photo.heic "$UPLOAD_URL" # 3 · start the conversion curl -X POST https://api.swapfile.io/v1/jobs \ -H "Authorization: Bearer sf_live_..." \ -H "Content-Type: application/json" \ -d '{"file_id":"9f2c…","operation":"convert:jpeg","params":{"quality":"82"}}' → 202 {"id":"7ab1…","status":"queued"} # 4 · poll until done, then download curl https://api.swapfile.io/v1/jobs/7ab1… \ -H "Authorization: Bearer sf_live_..." → {"status":"done","download_url":"https://…"}
Uçlar
/v1/uploadsRegister an upload; returns a presigned PUT URL.{upload_url}Send the raw file bytes (max 100 MB)./v1/jobsStart a conversion job for an uploaded file./v1/jobs/{id}Job status; includes download_url once done./v1/jobs/{id}Delete the file and job immediately.İşlemler
Bunlardan birini operation olarak gönder. Kabul edilen girdiler: JPEG, PNG, WebP, GIF, BMP, HEIC, AVIF ve TIFF.
convert:jpeg→ JPEG · params: quality (1–100)convert:png→ PNG (lossless)convert:webp→ WebP · params: quality (1–100)Sınırlar
- 100 MB max upload
- 30 conversions / day (free)
- 60 requests / minute per key
- Files auto-deleted within 1 hour
Hatalar
Hatalar, kararlı bir code alanı taşıyan RFC 9457 problem+json döner — örn. unauthorized, unsupported_format, file_too_large, quota_exceeded veya rate_limited.
Kendin doğrula
Tarayıcının geliştirici araçlarını aç, ağ sekmesini izle ve bir dosya dönüştür. Dosyanı taşıyan hiçbir istek görmeyeceksin.