/api/v2/server-side-api/vc/transactions/ Sanal para birimi işlemi oluştur
Tek bir atomik işlemde bir profil için bir veya daha fazla sanal para birimini alacaklandırır veya borçlandırır. Alacaklandırmak (vermek) için pozitif amount, borçlandırmak (harcamak) için negatif amount kullanın. Tüm öğeler birlikte uygulanır — herhangi bir öğe başarısız olursa hiçbiri uygulanmaz.
Her para birimi kodu istek başına yalnızca bir kez görünebilir. Bu uç nokta aracılığıyla yapılan bir alacak her zaman süresi dolmayan bir bakiye oluşturur.
Header parameters
Sisteminizdeki müşterinin benzersiz kimliği. adapty-customer-user-id veya adapty-profile-id alanlarından biri zorunludur.
Sisteminizdeki profilin benzersiz kimliği. Anonim profillerle çalışıyorsanız en iyi seçeneğinizdir. adapty-customer-user-id veya adapty-profile-id alanlarından biri zorunludur.
İsteği idempotent yapan bir UUID v4 değeri. Aynı anahtarla bir isteği yeniden denerseniz Adapty, bakiyeleri tekrar değiştirmeden orijinal işlemin sonucunu döndürür. Geçerli bir UUID v4 olmalıdır.
Anahtarlar tek bir profil kapsamında en fazla bir saat boyunca hatırlanır. Bu süre geçtikten sonra aynı anahtarla yapılan bir istek yeni bir işlem olarak uygulanır — dolayısıyla anahtarı uzun vadede tekrarlı bir vermeyi önlemek için değil, bir çağrıyı güvenli şekilde yeniden denemek için kullanın.
Request body
Sanal para birimi işlemi oluşturmak için istek gövdesi.
Atomik olarak uygulanacak bakiye ayarlamaları. Her para birimi kodu yalnızca bir kez görünebilir.
Düzenlenecek sanal para birimi kodu.
Uygulanacak miktar. Pozitif bir değer para birimini alacaklandırır (ekler); negatif bir değer ise borçlandırır (harcar). Sıfır olamaz.
İşlemle birlikte depolanan isteğe bağlı anahtar-değer çiftleri. En fazla 5 anahtar. Her anahtar ^[a-z0-9_]{1,30}$ ile eşleşmeli, her değer en fazla 200 karakter olmalıdır.
Responses
İşlem başarıyla uygulandı
Schema
Sanal para birimi işleminin sonucu.
Oluşturulan işlemin benzersiz kimliği.
Bu istek tarafından etkilenen her para birimi için işlem sonrası bakiye (items içindeki her öğe için bir giriş). Profil için tam bakiye listesini okumak üzere GET /api/v2/server-side-api/vc/balances/ kullanın.
Sanal para birimi kodu.
Sanal para biriminin görünen adı.
Şu anda beklemede tutulan miktarlar dahil toplam bakiye.
Tüm aktif beklemelerin toplamı (rezerve edilmiş miktarlar). Şu anda her zaman 0'dır.
Harcanabilir bakiye; balance - held olarak hesaplanır.
Example
{
"transaction_id": "0190e8a4-1c2b-7def-8abc-2c1a4b6d8e90",
"balances": [
{
"code": "COINS",
"name": "Gold Coins",
"balance": 12950,
"held": 0,
"available": 12950
}
]
} Hatalı istek. error_code alanı nedeni belirtir: insufficient_balance, unknown_currency, duplicate_currency, amount_zero, balance_overflow, empty_items veya idempotency_key_invalid.
Schema
Hatanın kaynağı
Hata mesajları dizisi
Kısa hata adı
HTTP durum kodu
Example
{
"errors": [
{
"source": "currency_code",
"errors": [
"Insufficient balance for currency COINS"
]
}
],
"error_code": "insufficient_balance",
"status_code": 400
} Yetkisiz. API anahtarı eksik veya geçersiz.
Schema
Hatanın kaynağı
Hata mesajları dizisi
Kısa hata adı
HTTP durum kodu
Erişim reddedildi. Bu uygulama için sanal para birimleri Sunucu API'si etkin değil. Erişim talep etmek için Adapty destek ekibiyle iletişime geçin.
Schema
Hatanın kaynağı
Hata mesajları dizisi
Kısa hata adı
HTTP durum kodu
Example
{
"errors": [
{
"source": null,
"errors": [
"Server API for virtual currencies is not enabled for this app. Contact Adapty support to request access."
]
}
],
"error_code": "feature_not_enabled",
"status_code": 403
} Profil bulunamadı.
Schema
Hatanın kaynağı
Hata mesajları dizisi
Kısa hata adı
HTTP durum kodu
Çakışma. error_code alanı nedeni belirtir:
idempotency_in_flight— aynıIdempotency-Keydeğerine sahip bir istek hâlâ işleniyor.Retry-Afteryanıt başlığındaki aralıktan sonra yeniden deneyin.duplicate_source_transaction— temel mağaza işlemi zaten alacaklandırıldığından tekrar uygulanmaz.
Schema
Hatanın kaynağı
Hata mesajları dizisi
Kısa hata adı
HTTP durum kodu
Example
{
"errors": [
{
"source": null,
"errors": [
"A similar request is being processed."
]
}
],
"error_code": "idempotency_in_flight",
"status_code": 409
} İşlenemeyen varlık. İstek gövdesi şema doğrulamasından geçemedi — örneğin items 20'den fazla giriş içeriyor ya da bir metadata anahtarı veya değeri kısıtlamalarını ihlal ediyor.
Schema
Hatanın kaynağı
Hata mesajları dizisi
Kısa hata adı
HTTP durum kodu
Çok fazla istek. Uygulama başına veya global hız sınırı aşıldı (error_code değeri rate_limited). Varsayılan sınırlar uygulama başına dakikada 600 istek ve global olarak dakikada 6000 istektir.
Schema
Hatanın kaynağı
Hata mesajları dizisi
Kısa hata adı
HTTP durum kodu
Dahili sunucu hatası