İşlem olayı kaydet (API)
POST /api/v1/profile/transaction-event/save/

İşlem olayı kaydet

Bir profil için mağaza işlem olayı kaydeder. Adapty Mail, profilleri satın alma tabanlı flow'lara yerleştirmek için işlem olaylarını kullanır — event_type değeri; yenileme iptal edildi, ödeme sorunu, süresi doldu ve iade edildi gibi flow'larla eşleşir — ve gelir attribution'ı için de bu olaylardan yararlanır.

Satın almaları, yenilemeleri ve iptalleri işlerken bu olayları gönderin. Yalnızca hiç satın alma yapmamış flow bunlar olmadan çalışır.

Request body

event_typestringrequired

İşlem olayının türü. Satın alma tabanlı flow'lar bu değerler tarafından tetiklenir.

One of: "subscription_started", "subscription_renewed", "subscription_renewal_cancelled", "subscription_renewal_reactivated", "billing_issue_detected", "entered_grace_period", "subscription_refunded", "subscription_expired", "non_subscription_purchase", "non_subscription_purchase_refunded"

event_idstringrequired

Sisteminize ait bu olaya özgü benzersiz tanımlayıcı. Olayları idempotent tutmak için kullanın.

event_datetimestringrequired

ISO 8601 biçiminde olayın kaydedildiği zaman.

external_profile_idstringrequired

Profili kaydederken gönderdiğiniz kararlı external_profile_id ile aynı değer. İşlemi doğru profile bağlar.

storestringrequired

İşlemin geldiği mağaza, örneğin app_store, play_store veya stripe.

store_product_idstringrequired

Mağazada satın alınan ürünün tanımlayıcısı.

store_transaction_idstringrequired

Mağazadaki bu işlemin tanımlayıcısı.

store_original_transaction_idstringrequired

Abonelik zincirindeki ilk işlemin tanımlayıcısı. İlk satın almada bu değer store_transaction_id ile aynıdır.

purchased_atstringrequired

ISO 8601 biçiminde bu işlemin gerçekleştiği zaman.

originally_purchased_atstringrequired

ISO 8601 biçiminde aboneliğin ilk satın alındığı zaman.

price_usdstring

İşlem tutarı USD cinsinden ondalık dize olarak (örneğin "9.99").

expires_atstring

ISO 8601 biçiminde aboneliğin sona erdiği veya sona ereceği zaman. Abonelik dışı satın almalar için belirtmeyin.

offerobject

İşleme uygulanan promosyon teklifi veya başlangıç teklifinin ayrıntıları.

categorystringrequired

One of: "introductory", "promotional", "offer_code", "win_back"

offer_typestringrequired

One of: "free_trial", "pay_as_you_go", "pay_up_front"

offer_idstring

Varsa mağazadaki teklifin tanımlayıcısı.

Responses

İşlem olayı başarıyla kaydedildi. Yanıt gövdesi boş bir nesnedir.

Schema
object
Example
{}

Doğrulama başarısız — gerekli bir alan eksik veya geçersiz. field_name hangi alanın sorunlu olduğunu gösterir.

Schema

Standart hata yanıtı. Her başarısız istek bu yapıyla birlikte 4XX durum kodu döndürür.

errorsarray of object
messagestring

Hatanın insan tarafından okunabilir açıklaması.

error_codestring

Makine tarafından okunabilir hata tanımlayıcısı.

status_codeinteger

Bu hataya ait HTTP durum kodu.

field_namestring

Hataya neden olan istek alanı; hata alana özgü değilse null.

Example
{
  "errors": [
    {
      "message": "Field required",
      "error_code": "base_error",
      "status_code": 400,
      "field_name": "event_type"
    }
  ]
}

Gizli API anahtarı eksik veya geçersiz.

Schema

Standart hata yanıtı. Her başarısız istek bu yapıyla birlikte 4XX durum kodu döndürür.

errorsarray of object
messagestring

Hatanın insan tarafından okunabilir açıklaması.

error_codestring

Makine tarafından okunabilir hata tanımlayıcısı.

status_codeinteger

Bu hataya ait HTTP durum kodu.

field_namestring

Hataya neden olan istek alanı; hata alana özgü değilse null.

Example
{
  "errors": [
    {
      "message": "Secret key doesn't exist",
      "error_code": "secret_key_does_not_exist_error",
      "status_code": 403,
      "field_name": null
    }
  ]
}