Ana içeriğe geç

Şablonlar

Şablon, birden çok kez göndereceğiniz bir bildirimdir: dil başına metin, data yükü, görünüm seçenekleri, TTL, collapse id, öncelik ve sessiz bayrağı. Kampanya taslağından farklı olarak katı içerik şemasına tabidir — şablon gönderilmek için vardır, kaydedildiği anda gönderilebilir olmalıdır.

{
"name": "order-shipped",
"content": {
"en": { "title": "Your order is on its way", "body": "Order #{{orderId}} ships today.", "url": "acme://orders/{{orderId}}" },
"tr": { "title": "Siparişin yola çıktı", "body": "#{{orderId}} bugün kargoda.", "url": "acme://orders/{{orderId}}" },
"_default": "en"
},
"presentation": { "channelId": "orders", "interruptionLevel": "active" },
"collapseId": "order-{{orderId}}",
"ttl": 86400
}

Yer tutucular her yerdeki gibi çalışır — worker gönderim anında abone başına doldurur; tek şablon her siparişe hizmet eder.

Nereden gelir

  • Sihirbaz — içerik adımındaki Şablon olarak kaydet mevcut metni, veriyi, görünümü, TTL'yi ve collapse id'yi saklar. Şablondan yükle birini çeker; kampanya bundan sonra kendi kopyasını taşır ve adımdaki rozet nereden geldiğini söyler.
  • Paneldeki Şablonlar dil sayısı, kullanım sayısı ve son güncellemeyle listeler; yeniden adlandır, açıkla, sil ya da birinden kampanya başlat (Kampanya).
  • API — gizli anahtarla POST /v1/templates ve diğerleri.

Şablonla gönderme

curl -X POST https://push.example.com/v1/notifications \
-H "Authorization: Bearer sk_live_…" -H "content-type: application/json" \
-d '{ "target": { "externalIds": ["user_123"] }, "templateId": "66f1…", "ttl": 3600 }'

POST /v1/campaigns de templateId'yi aynı şekilde alır. Öncelik istek alanı → şablon alanı → varsayılan: yukarıdaki çağrı şablonun metnini ve kanalını korur ama TTL'sini ezer. Kampanya satırı templateId'yi hatırlar ve şablonun useCount'unu artırır ama her şeyin kendi kopyasını tutar — şablonu sonradan düzenlemek gelecek gönderimleri değiştirir, bunu değil.

Sessiz şablon (silent: true) içerik istemez; content, templateId ve silent: true'nun hiçbiri olmayan çağrı 422'dir.

Adlar

Adlar uygulama içinde benzersizdir (409 duplicate_name). API'den gönderirken kampanyanın varsayılan adı olur.