Genel Bakış Sayaçları
Bu uçları kim çağırır?Dış API (s2s)
- Taban yol
/api/v1/physical-pos- Kimlik
- Her istekte Ed25519 istek imzası —
X-Key-Id,X-Date,X-Nonce,X-Signature; gövdeli isteklerde ayrıcaDigest. Zaman penceresi ±5 dk, nonce tek kullanımlık. Bearer jetonu ya da panel oturumu bu uçlarda kabul edilmez. - Yetki
- Anahtarınız Fiziksel POS ürününü (
PHYSICAL_POS) ve bu sayfadaki uçların kapsamını taşımalıdır:physical_pos:view. Ürünü olmayan anahtar403 PRODUCT_NOT_ENABLED, kapsamı olmayan anahtar403 API_INSUFFICIENT_SCOPEalır. Bkz. Kimlik Doğrulama ve Kapsamlar. - Çapraz yüzey
- Bu uçlar s2s yüzeyindedir; kendi sunucunuzdan imzalı istekle çağırırsınız. Aynı kayıtların panelde ekranları var, ama panel uçları API anahtarıyla çağrılamaz; bu uçlar da panel oturumuyla çağrılamaz.
Tek istekte fiziksel POS kayıtlarınızın özet sayılarını döner. Test anahtarı da bu ucu çağırabilir.
GET /api/v1/physical-pos/overview
Sorgu parametresi almaz; tanımsız parametre 400 VALIDATION_ERROR, environment 400 physical_pos.input.environment_invalid döner. Ortamı anahtarınız belirler.
source lunixi-sign.sh
REQ_PATH="/api/v1/physical-pos/overview"
lunixi_sign GET "$REQ_PATH"
curl "https://api-gateway.lunixi.com$REQ_PATH" \
-H "X-Key-Id: $LUNIXI_KEY_ID" \
-H "X-Date: $DATE" \
-H "X-Nonce: $NONCE" \
-H "X-Signature: $SIGNATURE"lunixi-sign.sh: Kimlik Doğrulama › İmza yardımcısı.
{
"status": "success",
"code": "SUCCESS",
"data": {
"overview": {
"stores": { "active": 12, "archived": 2 },
"registers": { "active": 31, "archived": 4 },
"terminals": { "environment": "LIVE", "open": 28, "closed": 3 },
"devices": {
"environment": "LIVE",
"total": 35,
"active": 0,
"pending": 33,
"suspended": 0,
"maintenance": 0,
"retired": 2,
"unverified": 33
},
"transactions": null,
"generatedAt": "2026-01-10T09:00:00.000Z"
}
},
"statusCode": 200,
"requestId": "00000000-0000-0000-0000-000000000000"
}| Alan | Tip | Açıklama |
|---|---|---|
stores.active | integer | ACTIVE mağaza sayısı. Ortamsızdır; test ve canlı anahtar aynı sayıyı görür. |
stores.archived | integer | ARCHIVED mağaza sayısı. |
registers.active | integer | ACTIVE kasa sayısı. Ortamsızdır. |
registers.archived | integer | ARCHIVED kasa sayısı. |
terminals.environment | string | Terminal sayılarının ait olduğu ortam: anahtarınızın ortamı (TEST ya da LIVE). |
terminals.open | integer | Bu ortamda kapatılmamış terminal sayısı (ACTIVE ve SUSPENDED). |
terminals.closed | integer | Bu ortamda CLOSED terminal sayısı. |
devices.environment | string | Cihaz sayılarının ait olduğu ortam: anahtarınızın ortamı. |
devices.total | integer | Bu ortamdaki bütün cihazlar (emekliler dahil). |
devices.active | integer | ACTIVE cihaz sayısı. |
devices.pending | integer | PENDING cihaz sayısı. |
devices.suspended | integer | SUSPENDED cihaz sayısı. |
devices.maintenance | integer | MAINTENANCE cihaz sayısı. |
devices.retired | integer | RETIRED cihaz sayısı. |
devices.unverified | integer | Sahipliği doğrulanmamış, emekli olmayan cihaz sayısı. |
transactions | null | Her zaman null. |
generatedAt | string | Sayımın yapıldığı an. |
- Bütün sayılar aynı anda okunur ve birbiriyle tutarlıdır.
- Sayılar önbelleklenmez: bir kayıt oluşturduktan, arşivledikten ya da kapattıktan hemen sonraki istek yeni sayıyı görür.
transactions alanını 0 olarak yorumlamayın. Yanıtlara yeni alanlar ve değerler eklenebilir; kodunuz tanımadığı alanları yok saymalıdır.
Hatalar
| HTTP | code | Ne zaman |
|---|---|---|
403 | PRODUCT_NOT_ENABLED | Anahtarda Fiziksel POS ürünü yok. |
403 | API_INSUFFICIENT_SCOPE | Anahtarda physical_pos:view yok. |
400 | physical_pos.input.environment_invalid | Sorguda environment gönderildi. |
400 | VALIDATION_ERROR | Tanımsız sorgu parametresi. |
Bütün kodlar: Hata Kodları.