Dosya ve Medya

API Reference

Dosya ve Medya

Güvenli medya yükleme, `asset_id` kullanımı ve plan bazlı dosya politikaları.

WA2Notify public API’sinde dosya gönderimi doğrudan harici URL ile yapılmaz. Güvenli varsayılan akış upload -> asset_id -> send modelidir.

Plan politikası

PlanDestekMaksimum boyut
FreeDosya gönderimi kapalı-
ProGörsel, PDF, Word, Excel, PowerPoint10 MB
GrowthPro kapsamı + mp4 / mov video25 MB
EnterpriseGrowth kapsamıOrtam ayarı ile genişletilebilir
Güvenlik modeli

Yüklenen dosyalar tenant-owned saklanır, güvenli dosya adı ile diske yazılır ve başka müşteri tarafından okunamaz veya kullanılamaz.

POST/v1/message-assets
X-API-Key200 OK

Dosya yükle

Dosyayı doğrular, plan limitini kontrol eder ve mesajlarda kullanılacak bir `asset_id` üretir.

  • Kullanıcı dosya adından path türetilmez; sistem kendi güvenli saklama adını üretir.
  • image/jpeg, image/png, image/webp, image/gif, application/pdf ve seçili ofis formatları desteklenir.
  • Growth ve Enterprise planlarında video/mp4 ve video/quicktime da kabul edilir.

Upload sırasında gerçek MIME sniffing, uzantı eşleşmesi ve plan bazlı boyut politikası aynı anda uygulanır.

İstek

curl --request POST \
--url {{BASE_URL}}/v1/message-assets \
--header "X-API-Key: {{API_KEY}}" \
--form "[email protected]"

Yanıt

JSON
{
"data": {
  "id": "b84b4f8d-2fd8-4c6d-b90a-fc5dd7f4aef2",
  "original_name": "brosur.pdf",
  "mime_type": "application/pdf",
  "size_bytes": 184320,
  "kind": "document",
  "created_at": "2026-04-01T09:15:00Z"
}
}
GET/v1/message-assets/:asset_id
X-API-Key200 OK

Dosya metadata bilgisini al

Yüklenmiş dosyanın metadata bilgisini döndürür; ham dosya içeriğini public olarak servis etmez.

Dosya içeriği yalnız WA2Notify mesaj gönderim pipeline’ı içinde kullanılır.

Bu uç yalnız metadata için vardır. Public API ham dosya indirme yüzeyi açmaz.

İstek

curl --request GET \
--url {{BASE_URL}}/v1/message-assets/{{ASSET_ID}} \
--header "X-API-Key: {{API_KEY}}"

Yanıt

JSON
{
"data": {
  "id": "b84b4f8d-2fd8-4c6d-b90a-fc5dd7f4aef2",
  "original_name": "brosur.pdf",
  "mime_type": "application/pdf",
  "size_bytes": 184320,
  "kind": "document",
  "created_at": "2026-04-01T09:15:00Z"
}
}
DELETE/v1/message-assets/:asset_id
X-API-Key200 OK

Dosyayı sil

Kullanılmayan asset kaydını ve saklanan dosyayı siler.

Silme işlemi yalnız owner tenant için çalışır; başka kullanıcıya ait asset_id bulunamadı döner.

Kuyrukta bu dosyayı kullanan pending veya queued mesajlar varsa silme isteği reddedilir.

İstek

curl --request DELETE \
--url {{BASE_URL}}/v1/message-assets/{{ASSET_ID}} \
--header "X-API-Key: {{API_KEY}}"

Yanıt

JSON
{
"data": {
  "id": "b84b4f8d-2fd8-4c6d-b90a-fc5dd7f4aef2",
  "deleted": true
}
}

Gönderim sırasında kullanım

Mesaj veya kampanya çağrılarında asset_id alanını kullanın:

{
  "device_id": "3baedacf-53bf-4061-a0f5-5235cab38875",
  "to": ["+905551112233"],
  "text": "Merhaba",
  "asset_id": "b84b4f8d-2fd8-4c6d-b90a-fc5dd7f4aef2"
}

Bir asset farklı mesajlarda yeniden kullanılabilir. Plan değiştirdiğinizde mevcut plan o MIME ve boyutu desteklemiyorsa gönderim aşamasında istek reddedilir.