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-eventBu 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_useryetkisine sahip) - Olay, tenant panelinde Özel Olaylar (Custom Events) altında tanımlanmış ve aktif (arşivlenmemiş) olmalı
user_idmevcut bir kullanıcıyı referans almalı (kullanıcı oluşturmak için kimlik doğrulama kullanın)
İstek Gövdesi
| Parametre | Tür | Zorunlu | Açıklama |
|---|---|---|---|
user_id | string | Evet | Olayın ilişkilendirileceği kullanıcının ULID'si |
event_name | string | Evet | Olayın makine-okunabilir adı (ör. add_to_cart) |
data | object | Hayır | Bu 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
- 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
404döner. - Arşivlenmiş olaylar takip edilemez. Arşivlenmiş bir olay, sanki mevcut değilmiş gibi
404döner. dataalanı şemasızdır. Geçerli herhangi bir JSON nesnesi gönderebilirsiniz — olay başına zorunlu bir şema yoktur.- Olaylar değiştirilemez. Bir kez kaydedildikten sonra olay kayıtları değiştirilemez veya silinemez. Kalıcı kayıtlardır.
- Kullanıcı mevcut olmalı.
user_idtenant'ta mevcut bir kullanıcıyı referans almalıdır. Gerekirse kullanıcı oluşturmak için kimlik doğrulama endpoint'ini kullanın.