Loyetta

Olay Takibi

Backend'inizden bir kullanıcı için özel olaylar (custom events) takip edin. Olaylar segmentasyonu ve kampanya koşullarını besler; dolayısıyla bunları bu endpoint aracılığıyla kaydetmek, kullanıcının gerçek dünyadaki eylemlerinin sadakat tetikleyicilerine dönüşmesini sağlar.

POST/v1/superuser/track-event

Bu endpoint superuser erişim tokeni (loy_sk_live_xxxx) gerektirir. Yalnızca backend'inizden çağırın — tokeni asla istemci uygulamalarına açığa çıkarmayın.

Ön Koşullar

  • Geçerli bir superuser erişim tokeni (super_user yetkisine sahip)
  • Olay, tenant panelinde Özel Olaylar (Custom Events) altında tanımlanmış ve aktif (arşivlenmemiş) olmalı
  • user_id mevcut bir kullanıcıyı referans almalı (kullanıcı oluşturmak için kimlik doğrulama kullanın)

İstek Gövdesi

ParametreTürZorunluAçıklama
user_idstringEvetOlayın ilişkilendirileceği kullanıcının ULID'si
event_namestringEvetOlayın makine-okunabilir adı (ör. add_to_cart)
dataobjectHayırBu olay örneğine eklenecek isteğe bağlı anahtar-değer verisi

Örnek İstek

bash
curl -X POST "https://marka.prod.loyetta.com/api/v1/superuser/track-event" \
  -H "Authorization: Bearer loy_sk_live_xxxx" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "user_id": "01JRXYZ1234ABCDEF56789GH",
    "event_name": "subscription_renew_failed",
    "data": {
      "product_id": "SKU-12345",
      "subscription_renews_at": "2026-05-15T00:00:00Z"
    }
  }'

Minimal İstek (data olmadan)

json
{
  "user_id": "01JRXYZ1234ABCDEF56789GH",
  "event_name": "launch_app"
}

Yanıtlar

201 Created

Olay başarıyla kaydedildi.

json
{
  "success": true,
  "message": "Event tracked successfully."
}

Hata Yanıtları

404 — Olay bulunamadı veya arşivlenmiş

json
{
  "success": false,
  "message": "Event not found or has been archived."
}

403 — Yasak (token super_user yetkisine sahip değil)

json
{
  "message": "Operation not allowed."
}

422 — Doğrulama Hatası

json
{
  "message": "The user id field is required.",
  "errors": {
    "user_id": ["The user id field is required."]
  }
}

500 — Sunucu Hatası

json
{
  "success": false,
  "message": "System error occurred."
}

Olay Adı Kuralları

Olay adları panelde tanımlanır ve şu kurallara uymalıdır:

  • Yalnızca küçük harfler, rakamlar ve alt çizgi (a-z, 0-9, _)
  • Tenant başına benzersiz olmalı
  • Örnekler: subscription_renew_failed, purchase_completed, add_to_cart, sign_up

Önemli Notlar

  1. Olaylar önce oluşturulmalı. Bu endpoint'i çağırmadan önce olay, panelde Özel Olaylar altında tanımlanmış olmalıdır. Tanımsız bir olayı takip etmek 404 döner.
  2. Arşivlenmiş olaylar takip edilemez. Arşivlenmiş bir olay, sanki mevcut değilmiş gibi 404 döner.
  3. data alanı şemasızdır. Geçerli herhangi bir JSON nesnesi gönderebilirsiniz — olay başına zorunlu bir şema yoktur.
  4. Olaylar değiştirilemez. Bir kez kaydedildikten sonra olay kayıtları değiştirilemez veya silinemez. Kalıcı kayıtlardır.
  5. Kullanıcı mevcut olmalı. user_id tenant'ta mevcut bir kullanıcıyı referans almalıdır. Gerekirse kullanıcı oluşturmak için kimlik doğrulama endpoint'ini kullanın.