GH GambleHub

API интеграция тізімі

0) Жылдам шолу (кім не істейді)

  • Интеграция иесі тағайындалды
  • On-call контактілері (24 × 7/жұмыс. сағат) жазылған
  • Келісілген SLO/SLA және релиздерді қолдау терезесі
  • Оқиғалар статусы мен арнасы (email/Slack/Webhook)

1) Қолжетімділік, қоршаған орта, нұсқалар

  • sandbox/staging/production қатынау алынды
  • API нұсқасы расталды: '/v1 '/тақырыбы 'X-API-Version'
  • Allowlist IP және желілік ережелер теңшелген
  • Сағат және TZ: UTC барлық уақытта, NTP синхрондау
  • SemVer және нұсқа матрицасы бойынша SDK/клиенттердің үйлесімділігі тексерілді

2) Аутентификация және токендер

  • Механизм келісілген: OAuth2 Client Credentials/Auth Code + PKCE/API Key/mTLS
  • Access Token өмір сүру мерзімі және Refresh Token айналымы теңшелген
  • API Key үшін: құпия бір рет көрсетіледі, құпия менеджерде сақталады
  • JWKS/JTI/' kid 'тексеріледі, қосылған clock skew ± 5 мин
  • 'Authorization' тақырыптары толтырылмайды (редакция)
Тексеру қоңырауы:
bash curl -sS -H "Authorization: Bearer $TOKEN" https://api. example. com/v1/ping

3) Қауіпсіздік және құпиялылық

  • TLS 1. 2 +/HSTS, қосымша mTLS
  • PII-азайту: тек керектісін жібереміз, қалқалар
  • Сақтау және жою саясаты (GDPR/DSAR) құжатталған
  • Secret rotation: белсенді/келесі кілт, rollover жоспары
  • Анти-абьюз: капча/кілттерді жасау жылдамдығы/тіркеуді шектеу

4) Лимиттер, квоталар және бэкофф

  • Жарияланған 'X-RateLimit- '/' X-Quota-' тақырыптар
  • Клиент 429 және 'Retry-After'
  • Тек 5xx/408/429 үшін, экспоненциалды backoff + jitter
  • Әрекет/уақыт шегі берілген (мысалы, 5 әрекет ≤, жиынтық ≤ 60с)

5) Теңсіздік және жанжалдар

  • Барлық write-операциялар 'Idempotency-Key' -ден жіберіледі (TTL ≥ 24-72 сағ)
  • Дубликат қайшылығы → 409 IDEMP_REPLAY өңделеді
  • ETag/' If-Match 'бәсекелестік жаңартулар үшін қосылған (бар болса)
Мысал:
bash curl -X POST /v1/payments \
-H "Idempotency-Key: pay-<uuid>" \
-d '{"amount":"12. 34","currency":"EUR"}'

6) Пагинация және инкрементальды дельта

  • cursor/keyset пагинациясы пайдаланылады ('next _ cursor', 'has _ more')
  • Тұрақты сұрыптау '(updated_at, id)' құжатталған
  • Инкременталды түсіру: watermark немесе change token
  • Жабатын терезелер (overlap 1-2 мин) және '(id, version/seq)' бойынша дедуп

7) Қателер форматы және диагностика

  • Бірыңғай пішім 'application/problem + json' (RFC 7807)
  • Өрістерді қолдау: 'error _ code', 'trace _ id', 'retriable', 'detail'
  • Қателер картасы және клиент әрекеттері сипатталған (runbook)
Үлгі:
json
{
"type":"https://docs. example. com/errors/validation_failed",
"title":"Validation failed",
"status":422,
"error_code":"VAL_001",
"trace_id":"a1b2c3",
"retriable":false
}

8) Вебхактар: квитирлеу және қайталау

  • Табысты растау - кез келген 2xx; enqueue кейін жылдам ACK
  • Подпись HMAC (`X-Signature: sha256=...`), `X-Webhook-Id`, `X-Retry`
  • Ретра саясаты: backoff + jitter, 24-72 сағатқа дейін
  • DLQ + Replay: қол жетімді және тексерілген
  • Қабылдағыштың дедуп-сақтау орны, TTL ≥ Ретра терезелері

9) Бақылау және трассалау

  • Клиент/SDK OpenTelemetry хакі қосылды
  • Бүкіл тізбек бойынша 'trace _ id '/' X-Request-ID' корреляциясы
  • Дашборды: `requests_total`, `errors_total{status}`, `latency_p95`, `retry_count`, `429_rate`
  • Alarms: 5xx/429 секіріс, p95 өсу, success rate құлдырауы, веб-хук лаг
PromQL (мысал):
promql rate(http_requests_total{status=~"5.."}[5m]) / rate(http_requests_total[5m])

10) Өнімділік және тұрақтылық

  • Қосылыстар пулы, keep-alive, мүмкін HTTP/2/3 жерде
  • Параллелизм шектеулі (backpressure), клиенттің кезегі «үрлемейді»
  • circuit-breaker/timeout/fallback саясаты теңшелген
  • Жүктеме тесттері: burst 10 ×, ұзақ қосылыстар, суық бастау

11) Деректер, валюталар, уақыт

  • Форматтар: ISO-8601 UTC, ақша - ондық жолдар/minor units, жергілікті жерлер қоршаған ортаға тәуелді емес
  • Кодтаулар/тілдер келісілген (мысалы, хабарлар үшін 'Accept-Language', бірақ 'error _ code' - машиналық)
  • Дөңгелектеу/комиссия саясаты құжатталған

12) Салыстырып тексеру және есептілік (reconciliation)

  • Бақылау сомаларымен күнделікті/сағаттық салыстырулар
  • Салыстыру үшін API/түсіру сыналған (CSV/JSON, манифесттер/хэштер)
  • Айырмашылықтар - 'trace _ id' сілтемелері бар тикеттерге

13) Комплаенс және құқықтық аспектілер

  • API пайдалану шарттары қабылданды (fair use/export control)
  • PII/деректерді ұстаушылар - рөлдер мен сақтау аймақтары анықталған
  • Legal Hold/аудит журналы оқиғалар кезінде қосылған

14) Құжаттамалар және әзірлеушілер порталы

  • OpenAPI/AsyncAPI өзекті, «көшіру-кірістіру» мысалдары бар
  • SDK (TS/Py/Java/Go/.NET) - нұсқалары келісілген, Cookbook қол жетімді
  • Try-it playground жұмыс істейді, құм кілттері белсенді
  • Changelog/депрекациялар/roadmap порталында көрінеді

15) Тестілеу: функционалдық, теріс, хаос

Функционалдық

  • CRUD/негізгі сценарийлер өтті (happy path)
  • Пагинация/курсор/инкрементальды дельта

Теріс

  • 401/403/404/409/422/429/5xx және өңдеу 'Retry-After'
  • Вебхук қолтаңбасы дұрыс емес, мерзімі өткен токендер, үлкен денелер

Хаос

  • Drop 10-30% оқиғалар, reorder, кідірістер 1-10 мин
  • Тәуелділікті ажырату (PSP/KYC) → дұрыс fallback/қателер

16) Қабылдау және іске қосу (go-live)

  • Соңғы PRR (Production Readiness Review) өтті
  • Канареялық қосу: 10% → 25% → 50% → 100%
  • SLO сигналдары бойынша авто-кері қайту (қателер/жасырындылық/429)
  • Жанжалдардың байланыс матрицасы және эскалация жолы жарияланды
  • CAPA бэклогы ұшқыштан кейін қалыптастырылды

17) Пайдалану және қолдау

  • Runbook/playbook: «5xx spike», «429 storm», «webhook backlog», «timeout»
  • SLO/Error Budget бойынша тұрақты есептер
  • Кесте бойынша құпиялар мен кілттерді ротациялау
  • Депрекация/көші-қон нұсқаларының жоспары келісілді (күні sunset)

18) Артефактілердің үлгілері

ENV үлгісі

yaml api:
base_url: https://api. example. com/v1 timeout_ms: 10000 retries: { max: 5, strategy: expo-jitter }
auth:
kind: oauth2 token_url: https://auth. example. com/oauth2/token scopes: [wallet:read, wallet:write]
webhooks:
secret_ref: secret/webhook-hmac parallelism: 10 max_body_kb: 256

Ретрайлардың саясаты (жалған)

json
{"initial":1,"max":60,"factor":2. 0,"jitter":0. 2,"retriable":["5xx","408","429"]}

19) Қорытынды чек-парақ «қол қоюға»

  • Қоршаулар/нұсқалар/кілттер/allowlist дайын
  • Auth/JWT/keys/mTLS теңшелген және сыналған
  • Лимиттер/квоталар/ретрайлық/теңсіздік іске асырылды
  • Пагинация/курсор/дельта деректер бойынша жұмыс істейді
  • Вебхактар: қолтаңбалар, қайталаулар, DLQ/Replay тексерілді
  • 'problem + json', 'trace _ id' қателері барлық логиндерге жабысады
  • Дашбордтар/алерталар жинақталған, OTel қосылған
  • Жүктеме/теріс/хаос-тесттер өтті
  • Салыстырулар мен есептер үйлесімді, runbooks ресімделген
  • PRR/канарейка/rollback-жоспар дайын, on-call контактілері көрсетілген

Жиынтығы

Бұл чеклист API интеграциясының техникалық, операциялық және комплаенс-аспектілерін жабады. Жоғарыдан төмен пункттерді басып өтіңіз, лимиттерді, демпотенттілікті және веб-хуктерді тексеруді автоматтандырыңыз, бақылау мен кері қайтару жоспарын қосыңыз - және сіздің іске қосылуыңыз болжамды түрде, өнімде «күтпеген жерден» өтеді.

Contact

Бізбен байланысыңыз

Кез келген сұрақ немесе қолдау қажет болса, бізге жазыңыз.Біз әрдайым көмектесуге дайынбыз!

Telegram
@Gamble_GC
Интеграцияны бастау

Email — міндетті. Telegram немесе WhatsApp — қосымша.

Сіздің атыңыз міндетті емес
Email міндетті емес
Тақырып міндетті емес
Хабарлама міндетті емес
Telegram міндетті емес
@
Егер Telegram-ды көрсетсеңіз — Email-ге қоса, сол жерге де жауап береміз.
WhatsApp міндетті емес
Пішім: +ел коды және номер (мысалы, +7XXXXXXXXXX).

Батырманы басу арқылы деректерді өңдеуге келісім бересіз.