PushizoDocs
Kanallar

Bildirim kutusu (inbox)

Uygulama içi bildirim kutusu — add_to_inbox ile mesaj ekleme, geçerlilik süresi, SDK ve public API uçları, okundu/arşiv durumları.

Bildirim kutusu, push ulaşmasa da kullanıcının uygulama içinde görebileceği kalıcı bir mesaj listesidir. POST /v1/notifications, kampanya ya da journey gönderiminde add_to_inbox: true verildiğinde hedeflenen (bastırılmamış) her kullanıcı için bir öğe oluşur: kullanıcının dilinde başlık/gövde, app_url ya da url, big_picture ve data. Aynı mesaj aynı kullanıcıya bir kez eklenir; inbox_ttl (saniye) dolunca öğe görünmez olur ve günlük bakımda silinir.

{
  "target": { "include_external_ids": ["user_42"] },
  "headings": { "tr": "Kampanya başladı" },
  "contents": { "tr": "Seçili ürünlerde %20 indirim" },
  "app_url": "myapp://campaigns/spring",
  "add_to_inbox": true,
  "inbox_ttl": 604800
}

Push kanalı olmayan (ör. yalnızca target.channels: ["email"]) mesajlarda da kutuya eklenir; push izni olmayan kullanıcılar için tek görünür kanal olabilir.

SDK uçları

Abonelik kullanıcıya ait olmalı; app identity verification istiyorsa identity_hash (ya da JWT) zorunludur.

UçYanıt
GET /sdk/v1/apps/{app_id}/users/{user_id}/inbox?subscription_id=&identity_hash=&limit=&cursor={ data: [{ id, message_id, title, body, url, image_url, data, read, read_at, archived_at, expires_at, created_at }], unread_count, next_cursor, has_more } (yeniden eskiye)
POST …/inbox/{item_id}/read { subscription_id, identity_hash? }öğe
POST …/inbox/read-all { subscription_id, identity_hash? }{ updated, unread_count }
DELETE …/inbox/{item_id}?subscription_id=&identity_hash=arşivler

SDK yüzeyi (tüm istemcilerde aynı): Pushizo.Inbox.list({ cursor }), markRead(id), markAllRead(), archive(id), unreadCount ve değişim gözlemcisi; Web'de hazır bileşen (Web SDK → bildirim kutusu), çatı sarmalayıcılarında <PushizoInbox /> (React).

Public API

Kullanıcı alias ile seçilir; okuma users:read, değiştirme users:write:

  • GET /v1/apps/{app_id}/users/by/{label}/{value}/inbox?include_archived=&limit=&cursor=
  • POST …/inbox/{item_id}/read, POST …/inbox/read-all, DELETE …/inbox/{item_id}

Tüm alanlar ve dil örnekleri: API → Bildirim kutusu. Dashboard'da kullanıcı detayında Bildirim kutusu sekmesi öğeleri ve durumlarını gösterir.

Davranış notları

  • Okunmamış sayısı unread_count her listede döner; SDK rozet/sayac için kullanır.
  • A/B kampanyalarda öğe, kullanıcıya atanan varyantın içeriğiyle oluşturulur.
  • Kullanıcı silindiğinde öğeler silinir; "Verileri temizle" kutuyu boşaltır.

Bu sayfada