1 · Kimlik doğrula
Panel → API ve webhook bölümünde bir anahtar oluşturun ve “Authorization: Bearer dvk_…” (ya da X-Api-Key başlığı) olarak gönderin.
Uygulamanızdan, betiğinizden ya da sunucunuzdan dosya yükleyin, paylaşım bağlantısını alın ve imzalı webhook’larla indirmelere tepki verin. HTTPS üzerinden JSON, tek API anahtarı.
Panel → API ve webhook bölümünde bir anahtar oluşturun ve “Authorization: Bearer dvk_…” (ya da X-Api-Key başlığı) olarak gönderin.
Küçük dosyalar tek istekte; büyük dosyalar (paket sınırınıza kadar) devam ettirilebilir parçalarla. Web uygulamasıyla aynı sınırlar geçerlidir.
Webhook’lar bir transfer yayına girdiğinde, indirildiğinde, yorum aldığında ya da güncellendiğinde sisteminize haber verir.
curl -H "Authorization: Bearer dvk_YOUR_KEY" \
-F "files[][email protected]" -F "files[][email protected]" \
-F "title=Quarterly report" -F "retention_days=7" \
https://dropvik.com/api/v1/upload
Yanıt (201):
{
"code": "k3x9q2m7tz",
"status": "active",
"link": "https://dropvik.com/t/k3x9q2m7tz",
"file_count": 2,
"total_size": 48213377,
"files": [ { "id": 812, "name": "report.pdf", "size": 1204331, "sha256": "…" }, … ]
}
Temel URL: https://dropvik.com/api/v1
/accountPaketiniz, depolama kotanız ve yükleme sınırlarınız.
/uploadKüçük dosyaları tek multipart istekle yükler ve bağlantıyı döndürür.
/transfersBüyük dosyalar için parçalı yükleme başlatır (dosya kimliklerini ve parça boyutunu döndürür).
/transfers/{uuid}/chunk/{file}/{index}Bir parçayı ham istek gövdesi olarak gönderir.
/transfers/{uuid}/completeYüklemeyi bitirir: virüs taraması, depolama ve e-posta teslimi.
/transfers/{uuid}/statusHâlâ işlenen bir transferin durumunu sorgular.
/transfersTransferlerinizi listeler (filtre: status, search; sayfalama: count, page).
/transfers/{code}Bir transferin dosyalarıyla birlikte ayrıntıları.
/transfers/{code}Bir transferi ve dosyalarını siler.
# 1. start
curl -H "Authorization: Bearer dvk_YOUR_KEY" -H "Content-Type: application/json" \
-d '{"files":[{"name":"film.mov","size":7340032000}],"delivery":"email","recipients":["[email protected]"]}' \
https://dropvik.com/api/v1/transfers
# 2. every chunk (index 0, 1, 2 … up to total_chunks - 1)
curl -X PUT -H "Authorization: Bearer dvk_YOUR_KEY" -H "Content-Type: application/octet-stream" \
--data-binary @chunk-0.bin https://dropvik.com/api/v1/transfers/UUID/chunk/FILE_ID/0
# 3. finish
curl -X POST -H "Authorization: Bearer dvk_YOUR_KEY" https://dropvik.com/api/v1/transfers/UUID/complete
İki yükleme yönteminin seçenekleri: title, message, retention_days (1, 3, 7, 30, 365, 0), password, self_destruct, max_downloads, delivery (link | email), recipients[], folder_id.
Panelinizde bir webhook adresi belirleyin. Her olay X-Dropvik-Event başlıklı bir JSON POST’tur; gizli anahtar belirlerseniz gövde X-Dropvik-Signature ile imzalanır.
transfer.completedBir transferin yüklemesi bitti ve yayında.
transfer.downloadedBiri transferinizden dosya indirdi.
transfer.commentBir alıcı yorum, seçim ya da geri bildirim bıraktı.
transfer.versionMevcut bir bağlantıya yeni sürüm yüklendi.
file_request.uploadDosya isteği bağlantılarınızdan birinden dosya geldi.
İmzayı doğrulama (PHP):
$body = file_get_contents('php://input');
$expected = 'sha256=' . hash_hmac('sha256', $body, $webhookSecret);
if (! hash_equals($expected, $_SERVER['HTTP_X_DROPVIK_SIGNATURE'] ?? '')) {
http_response_code(401); exit;
}
$event = json_decode($body, true); // { "event": "transfer.downloaded", "time": "…", "data": { … } }
Chrome eklentimiz (Edge ve Brave’de de çalışır) bu API üzerine kurulu: araç çubuğundan büyük dosya yükleyin, indirme bağlantısını web’deki Gmail ya da Outlook’ta yazdığınız e-postaya doğrudan ekleyin.
Eklentiyi indir (ZIP · v1.0.0)
Hatalar “error” mesajı içeren bir JSON gövdesi ve alışılmış HTTP durum kodlarıyla döner: 401 geçersiz anahtar, 403 API etkin değil, 422 doğrulama ya da paket sınırı, 429 çok fazla istek. Paketinize göre API erişimi hemen ya da panelden kısa bir başvurudan sonra açılır.