Puan & Kupon Sorgulama
Bir kullanıcının mevcut puan bakiyesini, puan-TL dönüşüm oranını ve dış satış (external sale) için şu anda kullanabileceği tüm kupon kodlarını döndürür.
GET
/v1/superuser/user-pointsBu 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)
Header'lar
| Header | Değer | Zorunlu |
|---|---|---|
Authorization | Bearer loy_sk_live_xxxx | Evet |
Accept | application/json | Evet |
Sorgu Parametreleri
| Parametre | Tür | Zorunlu | Açıklama |
|---|---|---|---|
user_id | string | Evet | Sorgulanacak kullanıcının ULID'si. Mevcut bir kullanıcı olmalı. |
Örnek İstek
bash
curl -G "https://marka.prod.loyetta.com/api/v1/superuser/user-points" \
-H "Authorization: Bearer loy_sk_live_xxxx" \
-H "Accept: application/json" \
--data-urlencode "user_id=01JRXYZ1234ABCDEF56789GH"Başarılı Yanıt — 200 OK
json
{
"success": true,
"data": {
"points": 1500,
"point_tl": 0.05,
"coupon_codes": [
{
"code": "WELCOME-7F3A2C",
"generated_at": "2026-06-01T10:12:00.000000Z",
"discount_type": "percentage",
"discount_value": 10,
"max_discount_amount": 5000,
"valid_from": "2026-06-01T00:00:00.000000Z",
"valid_until": "2026-12-31T23:59:59.000000Z",
"category_codes": ["kutulu-urunler"],
"brand_codes": null,
"product_skus": ["SKU-1234"]
}
]
}
}Yanıt Alanları
| Alan | Tür | Açıklama |
|---|---|---|
points | integer | Kullanıcının mevcut puan bakiyesi. |
point_tl | number | Dönüşüm oranı — bir puanın TL değeri. Para değeri = points × point_tl. |
coupon_codes | array | Kullanıcının kullanabileceği tüm kupon kodları. Hiç yoksa boş dizi. |
coupon_codes[] öğesi
| Alan | Tür | Açıklama |
|---|---|---|
code | string | Müşterinin kullanacağı kod. |
generated_at | datetime | null | Kodun kullanıcıya verildiği zaman (ISO 8601). |
discount_type | string | percentage veya fixed_amount. |
discount_value | integer | İndirim miktarı — percentage ise yüzde, aksi halde sabit tutar. |
max_discount_amount | integer | null | İndirimin üst sınırı (özellikle percentage için). null = sınır yok. |
valid_from | datetime | null | Geçerlilik başlangıcı (ISO 8601). null = başlangıç sınırı yok. |
valid_until | datetime | null | Geçerlilik bitişi (ISO 8601). null = bitiş sınırı yok. |
category_codes | string[] | null | Bu ürün kategori kodlarıyla sınırla. null = kategori kısıtı yok. |
brand_codes | string[] | null | Bu ürün marka kodlarıyla sınırla. null = marka kısıtı yok. |
product_skus | string[] | null | Bu ürün SKU'larıyla sınırla. null = ürün kısıtı yok. |
Hangi Kuponlar Döndürülür
Bir kupon kodu yalnızca tüm şu koşullar sağlandığında dahil edilir:
- Kullanıcıya atanmış ve henüz kullanılmamış olmalı.
- Kuponu etkin ve dış satışta kullanılabilir olmalı.
- Mevcut zaman, kuponun geçerlilik aralığında olmalı.
Kullanılmış veya süresi dolmuş bir kod yanıttan otomatik olarak çıkar.
Kapsam mantığı: category_codes, brand_codes ve product_skus birer izin listesidir (allow-list). null bir alan "o boyutta kısıtlama yok" anlamına gelir. Üçü de null ise kupon tüm dış satış kataloğuna uygulanır.
Hata Yanıtları
| Durum | Ne zaman | Gövde |
|---|---|---|
| 403 | Token super_user yetkisine sahip değil. | { "message": "Operation not allowed." } |
| 422 | user_id eksik veya bilinen bir kullanıcı değil. | Standart Laravel doğrulama hatası. |
403 — Yasak
json
{
"message": "Operation not allowed."
}422 — Doğrulama Hatası
json
{
"message": "The given data was invalid.",
"errors": {
"user_id": ["The selected user id is invalid."]
}
}