GH GambleHub

API İşlemleri

(Bölüm: Operasyonlar ve Yönetim)

1) Amaç ve prensipler

API, ekosistemin "operasyonel katmanı'dır: Bir sözleşme yoluyla otomatikleştirilmeyen her şey manuel işe ve riske dönüşür.

İlkeler:
  • Sözleşme-ilk: ilk şartname (OpenAPI/JSON Schema/AsyncAPI), sonra uygulama.
  • Varsayılan olarak güvenli: minimal kapsamlar, kısa TTL, karşılıklı TLS/imzalar.
  • Gözlemlenebilir: uçtan uca izleme ve SLA metrikleri.
  • Idempotent: Güvenli bir şekilde tekrar oynatın.
  • Geriye doğru uyumlu: Değişiklikleri "kırmadan" evrim.
  • Denetlenebilir: kriptografik olarak onaylanmış gerçekler (makbuzlar).

2) Sözleşme ve modeller (referans)

Senkronizasyon istekleri için OpenAPI; Etkinlikler/webhook'lar için AsyncAPI.
Her kaynakta gerekli alanlar'id ',' version ',' created _ at ',' updated _ at ',' tenant ',' region ',' trace _ id'dir.

Bir sözleşme parçası örneği

yaml paths:
/payments/payouts:
post:
operationId: createPayout requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PayoutRequest'
responses:
"202": { $ref: '#/components/responses/AcceptedWithReceipt' }
headers:
Idempotency-Key:
schema: { type: string }
required: true components:
responses:
AcceptedWithReceipt:
description: Accepted, processing asynchronously headers:
Receipt-Hash: { schema: { type: string } }

3) Kimlik doğrulama, yetkilendirme, kapsamlar

Kullanıcılar/ortaklar için OAuth2/OIDC istemci-kimlik bilgileri/JWT для S2S.
Kapsamlar/kaynak rolleri: 'ödemeler. Katalog yaz. ',' denetimini okuyun. İhracat '.
ReBAC: "mülkiyet yoluyla" erişim (kiracı/hesap/alt hesap).
JIT sırları: kısa ömürlü belirteçler, cihaz/alt ağ/bölge bağlama.
Kritik işlemler için cihaz duruşu ve mTLS (ödemeler, anahtarlar).

4) Idempotence ve "tam olarak bir kez"

Idempotency-Key (header) + TTL penceresinde '(key, account, route)'ile dedup.
Olayları yayınlamak için giden kutusu/CDC - garantili teslimat.
Tam olarak bir kez etkiler: yan etkiler bir işlem günlüğü aracılığıyla yakalanır; Tekrarlama aynı "makbuza" ('makbuz _ hash') yol açar.
Yeniden deneme ilkeleri: üstel geri çekilme, titreme, maksimum pencereler.

5) Sınırlar, kotalar, önceliklendirme

Hız sınırları: anahtar başına/kiracı/rota/bölge; "yumuşak" (429) ve "sert" (kesme).
Kotalar/bütçeler: aylık/günlük sınırlar, webhooks 'CotaCapReached'.
Adil kullanım: hizmet seviyesine göre kiracıların önceliği (Altın/Gümüş/Bronz).
Patlama tamponları: komşuların bozulması olmadan kısa patlamalar.

6) Pagination, filtreler, örnekler

İmleç tabanlı (kararlı sıralama по 'created _ at, id'), 'page _ size' ≤ 1000.
Günlükler/işlemler için zaman dilimli örnekler ('from', 'to', 'filigran').
DSL filtreleme: beyaz listeye alınmış поля, '? status =... & tenant =... & region =...'.
Tutarlılık ipuçları: API'leri raporlamak için 'snapshot _ at'/' as _ of'.

7) Sürüm oluşturma ve uyumluluk

SemVer: 'v1', 'v1. 1 '(uzantılar),' v2 '- yalnızca yeni yollarda/ad alanlarında.
Evrim kuralları: yalnızca alanları/değerleri ekleyin, pencereden "kullanımdan kaldırın".
Uyumluluk testleri: "Test olarak sözleşmeler" (tüketici odaklı).

8) Etkinlikler, web kitapları ve makbuzlar

AsyncAPI temaları/yükü/imzaları açıklar.

Başlık: HMAC/EdDSA, 'X-Signature', 'X-Nonce', 'X-Timestamp' başlıkları (dar pencere)

Makbuzlar: 'Receipt _ hash've kritik olaylarda DSSE imzası (ödemeler, RTP/limit değişiklikleri, fiyat listeleri).
Retrai ve dedup: 'idempotency _ key'/' event _ id'e göre idempotency.
DLQ/karantina: geçersiz/nedenleri ile tekrarlanan raporlar.

9) Gözlemlenebilirlik ve kalite

İzler: Ağ geçidi/iş etkinlikleri/web kitapları aracılığıyla zorunlu 'trace _ id/span _ id'.
Metrikler: kullanılabilirlik, p50/p95/p99, hata oranı, yeniden deneme oranı, 1k başına maliyet.
Günlükler: yapılandırılmış, sır yok/PII; 'tenant/region/version' labels.
SLO/uyarılar: SLO yönelimli koşullar ve otomatik çalıştırmalar (duraklatma/yeniden yönlendirme/geri alma).

10) Hatalar ve durum semantiği

2xx - başarı (asenkron işlemler için 202).
4xx - müşterinin hatası (422 - doğrulama, 409 - çatışma/idempotency, 429 - sınırları).
5xx - geçici sorunlar.
Hata gövdesi: 'kod', 'mesaj', 'trace _ id', 'ipucu', 'retry _ after? '.
Ortaklar için UX: Her hata için'ne yapmalı "tablosu.

11) Kod olarak politikalar (OPA/ABAC)

Merkezi yetkilendirme:'kim/ne/nerede/ne zaman/neden ".
Git'teki politikalar, kod incelemesi, CI testleri (uçuş öncesi: "Politika izin verecek mi? »).
SoD kontrolü: "ödeme oluştur" ≠ "onayla".

12) Güvenlik, gizlilik, uyumluluk

PII minimizasyonu: tokenizasyon/maskeler, yalnızca onaylanmış jablar yoluyla birincil erişim.
Sırlar: Kasa/KMS, kısa TTL, rotasyonlar; Paylaşılan sırların yasaklanması.
Şifreleme: mTLS/TLS 1. 3, AES-GCM dinlenme, HSTS/PKP uygun olduğunda.
Yargı yetkisi farkındalığı - Bölge başına veri/anahtarların yerelleştirilmesi.
Denetim günlükleri: WORM, Merkle dilimleri, DSSE imzaları.

13) Çalışma: SLI/SLO ve panolar

SLI (örnek):
  • Rota/bölge başına kullanılabilirlik.
  • P95 gecikme süresi (okuma/yazma).
  • Webhook'ların başarısı (makbuzlar), teslimat gecikmesi.
  • Hata oranı/Yeniden deneme hızı.
  • 1k istek ve çıkış başına maliyet.

SLO (örnek): 99. %95 kullanılabilirlik; P95 ≤ 120/250 ms; Webhooks ≥ 99. %5/5-dk; P1 MTTR ≤ 60 dk.

14) Değişim Yönetimi (Sürümler/Geri Dönüşler)

Geçitler ve kritik yollar için Mavi-Yeşil/Kanarya.
Serbest bırakma davranışı için Ficheflags.
Genişlet> Migrate> Şemalar ve yük için sözleşme.
Руны: Geri Alma Serbest Bırak, Bayrağı Devre Dışı Bırak, Yeniden Yönlendir, Önbelleği Temizle.
Artifaktlar: imzalı görüntüler/manifestolar, sürüm kaydı.

15) SDK, istemciler, sanal alanlar

Aynı hataya sahip resmi SDK'lar (TS/Java/Python/Go) ve anlambilimi yeniden ayır.
Test tuşları/sertifikaları ve PSP/KYC/içerik sağlayıcı simülatörleri ile sandbox ortamları.
Sözleşme testleri CI SDK, gece uyumluluk dahildir.

16) Veri modeli (basitleştirilmiş)

'api _ key' '{id, kiracı, kapsamlar [], tl, created_by}'

'rate _ plan' '{kiracı, kotalar {rota _ cap}, patlama, öncelik}'

'request _ log' '{trace _ id, rota, aktör, idempotency_key?, durum, latency_ms, bölge, cost_unit}'

'webhook _ receipt' '{event _ id, uç nokta, durum, girişimler, receipt_hash, imza}'

'politika' '{sürüm, kurallar, imzalayan, dsse}'

17) RACI

AlanSorumluSorumluDanışıldıBilgilendirilmiş
Sözleşme/VersiyonlarPlatform/APICTOÜrün, MüşterilerOrtaklar
Yetkilendirme/PolitikalarGüvenlik/IAMCISOYasal, OpsDenetim
Gözlemlenebilirlik/SLOSREEng BaşkanıVeri, FinOpsTüm
Webhooks/MakbuzlarEntegrasyonCOOOrtaklar, FinansUyumluluk
SDK/sanal alanlarDevExCTOSRE, ÜrünOrtaklar

18) Kalite metrikleri

Sözleşme Drift: 0 "kırma" değişikliklerini kullanımdan kaldırmadan.
Idempotency Hata Oranı: ≤ 0. 01%.
Webhook Başarı: ≥ 99. %5, lag p95 ≤ 60 s.
Auth Fail vs Abuse: Kötü amaçlı blokların paylaşımı, gürültü ≤ hedef seviyesi.
Cost/1k: rotalara ve bölgelere göre kontrol (bütçeler/sınır uyarıları).
Benimseme SDK: resmi SDK'lar aracılığıyla trafik payı.

19) Olay oyun kitapları

Spike 429/limits: Gold için yükseltme sınırı, "gürültülü" tuşları kısma, bir ortakla bağlantı.
WebhookLag: Çalışanları/partileri artırın, kuyruklara öncelik verin, isteğe bağlı web kitaplarını geçici olarak kapatın.
PriceMismatch (katalog/FX/Vergi): sürüm uzlaştırma, önbellek kuvveti sakatlığı, artefakt geri dönüşü, tazminat.
PSP Kesintisi: rota değiştirme, "gri" işlemlerin karantinası, yeniden oynatma.
Uzlaşma API anahtarı: derhal geri çağırma, rotasyon, son 30 günün denetimi.

20) iGaming/fintech'in özgüllüğü

RTP/Limits API: yalnızca agregalar ve profil sürümleri; değişiklikler - makbuzlarla.
Ödemeler/ödemeler: 202 + imzalı webhook; Anahtar idempotency sipariş edin.
İştirakler: dönüşüm tahsisi, anlaşmazlıklar için emanet, imzalı raporlar.
Sorumlu oyun: Sınırlar ve RG olayları için "korkuluklar API'sini" açığa çıkarın.

21) Uygulama kontrol listesi

  • Açıklanan sözleşme (OpenAPI/AsyncAPI), CI doğrulama ve tüketici testleri.
  • Kritik yollar için yapılandırılmış OAuth2/OIDC, kapsamlar, JIT sırları ve mTLS.
  • Idempotency, retrai, DLQ ve karantina tanıtıldı.
  • Kapaklar/Kotalar/Öncelikler ve Uyarılar.
  • İmleç sayfalama,'as _ of 'tutarlı örnekler.
  • Sürüm Oluşturma ve Kullanımdan Kaldırma Politikası.
  • İmzalar/makbuzlar, tekrar oynatma ve dedup ile Webhooks.
  • İzleme/metrikler/günlükler, SLO ve rünler.
  • WORM günlükleri, DSSE imzaları, Merkle dilimleri.
  • SDK, sandbox, simülatörler, kod örnekleri ve nasıl yapılır.

22) SSS

Neden uzun operasyonlar için 202?
Bağlantıyı tutmamak ve webhook üzerinden güvenilir bir yeniden ödeme/makbuz sağlamak için.

Hem OpenAPI hem de AsyncAPI'ye ihtiyacınız var mı?
Evet: komutlar/istekler için senkronizasyon, olaylar/durum görüşmesi için async.

Değişiklikleri kırmak nasıl önlenir?
Add-only kuralı, amortisman - gözlemle - kaldır, müşteri test sözleşmesi.

Makbuzlar nerede saklanır?
İmzaları olan bir WORM bölgesinde; 'receipt _ hash' istemciye iade edilir ve istek üzerine kontrol edilir.

Özet: API üzerinden yapılan işlemler sözleşme ve işlem disiplinidir: sıkı erişim modeli ve idempotency, limitler ve sürümler, gözlemlenebilirlik ve SLO, imzalar ve makbuzlar. Sanal alanlar ve SDK'lar ekleyin - iş ortakları hızlı, güvenli ve öngörülebilir bir şekilde entegre olur ve işletmeler kalite veya uyumluluk kaybı olmadan ölçeklenir.

Contact

Bizimle iletişime geçin

Her türlü soru veya destek için bize ulaşın.Size yardımcı olmaya her zaman hazırız!

Telegram
@Gamble_GC
Entegrasyona başla

Email — zorunlu. Telegram veya WhatsApp — isteğe bağlı.

Adınız zorunlu değil
Email zorunlu değil
Konu zorunlu değil
Mesaj zorunlu değil
Telegram zorunlu değil
@
Telegram belirtirseniz, Email’e ek olarak oradan da yanıt veririz.
WhatsApp zorunlu değil
Format: +ülke kodu ve numara (örneğin, +90XXXXXXXXX).

Butona tıklayarak veri işlemenize onay vermiş olursunuz.