GH GambleHub

Cheklist wwww.API

0) Արագ ակնարկ (ով է անում)

  • Ձեռնարկության սեփականատերը նշանակված է
  • Կոնտակտներ on-call (24 247/ստրուկ։ ժամացույց) գրված է
  • Համաձայնեցված SLO/SLA և առյուծների աջակցության պատուհանը
  • Station-էջ և հեռուստաալիքը (email/Slack/Webhook)

1) Հասանելի, միջավայրեր, տարբերակներ

  • Մուտք դեպի sandbox/staging/production
  • API տարբերակը ապացուցված է </վերնագիրը 'X-API-Version>>
  • Allowlist IP և ցանցային կանոնները կարգավորված են
  • Ժամացույց և TZ: Բոլոր ժամանակները UTC, NTP համաժամացում
  • Ստուգված է SNK/հաճախորդների համատեղելիությունը SemVer-ով և տարբերակների մատրիցով։

2) Վավերացում և հոսանքներ

  • Մեխանիզմը համաձայնեցված է 'OAuth2 Client Credentials/Auth Code + PKCE/API Key/mTLS/mTLS/mTRS/
  • Peter Token-ի կյանքի ժամկետը և Refresh Token-ի լուծարումը վճռական են
  • API Key 'գաղտնիքը ցույց է տալիս մեկ անգամ, պահվում է գաղտնիքների կառավարման մեջ։
  • JWKS/JTI/« kid »-ը ստուգվում է, ներառում է clock skew 245 րոպե։
  • «Authorization» վերնագրերը չեն տրամաբանվում (խմբագրություն)

Ստուգողական մարտահրավեր

bash curl -sS -H "Authorization: Bearer $TOKEN" https://api. example. com/v1/ping

3) Անվտանգությունն ու գաղտնիությունը

  • TLS 1. 2 +/HSTS, oporational mTSA
  • PII նվազագույնի. Մենք ուղարկում ենք միայն անհրաժեշտ, դիմակներ լոգարաններում
  • Պահեստային և պահեստային քաղաքականությունը (GDPR/DSAR) հետևյալն է։
  • Secret rotation: ակտիվ/հաջորդ բանալին, ռոլովերի պլանը։
  • Anti-abuze: capcha/արագություն ստեղծել 108/սահմանափակումներ։

4) Լիմիտներ, քվոտաներ և բեքոֆը

  • Հայտարարված «X-Rance Limit- »/« X-Delta-» վերնագրերը
  • Հաճախորդը հարգում է 429 և «Retry-After»
  • Retrai միայն 5xx/4.1/429, էքսպոնենցիալ backoff + jitter
  • Փորձերի/ժամանակի սահմանափակում (օրինակ ՝ 355 փորձ, ընդհանուր առմամբ 2460s)

5) Իդեմպոտենտալությունը և հակամարտությունները

  • Բոլոր write վիրահատությունները ուղարկվում են «Idempotency-Key» (TTL 2424-72 ժամ)
  • Dublicats 2449 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 pagination («next _ cursor», «has _ more»)
  • Կայուն տեսակավորում "(contated _ at, id)" փաստագրված է "
  • Redremental արտադրություն ՝ watermark կամ change token
  • Արգելափակող պատուհանները (overlap 1-2 րոպե) և dedup '(id, version/seq) "

7) Սխալների և ախտորոշման ձևաչափը

  • Մեկ ձևաչափը 'applation/problem + json "(RFC 78.1)
  • Դաշտերի աջակցությունը '«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 է։ ԱՐԱԳ ACK enqueue
  • Подпись HMAC (`X-Signature: sha256=...`), `X-Webhook-Id`, `X-Retry`
  • Ռեթերի քաղաքականությունը 'backoff + jitter, մինչև 24-72 ժամ
  • DLQ + Replay: հասանելի և ստուգված
  • Dedup պահեստ ընդունիչի մոտ, TTL-ն տեղադրում է ռետրոյի պատուհանները։

9) Դիտողությունն ու ճանապարհը

  • Ներառվել են OpenTelemetry խոզերը կլիենտում/MSK-ում
  • Հարաբերակցություն 'trace _ id '/« X-Request-ID »ամբողջ շղթայում
  • Дашборды: `requests_total`, `errors_total{status}`, `latency_p95`, `retry_count`, `429_rate`
  • Alarts: 5xx/429 աճը, p95 աճը, success rate, lag webhuks

PromQL (օրինակ)

promql rate(http_requests_total{status=~"5.."}[5m]) / rate(http_requests_total[5m])

10) Արտադրողականություն և կայունություն

  • Puls of, keep-alive, HTTP/2/3 որտեղ հնարավոր է
  • Զուգահեռականը սահմանափակ է (backpressure), հաճախորդի հերթը չի «փչանում»։
  • Circuit-breaker/timeout/fallback քաղաքականությունները տրամադրված են
  • Բեռի թեստեր ՝ burst 10, երկար միացություններ, սառը սկիզբ

11) Տվյալներ, արժույթներ, ժամանակ

  • Lenta.ru: RF-8601 UTC, գումարը 'տասանորդ տողեր/minor units, լոկալները կախված չեն շրջապատից։
  • Կոդավորումը/լեզուները համաձայնեցված են (օրինակ ՝ «Accept-Language» հաղորդագրությունների համար, բայց «error _ code» - մեքենայական)
  • Կլորացման քաղաքականությունը/2019 փաստագրված է

12) Ստուգումներ և հաշվետվություններ (reconciliation)

  • Ամենօրյա/ժամացույցի պայուսակներ 'ստուգողական գումարներով
  • API/արտանետումները փորձարկվել են (CSV/JSON, մանիֆեստներ/հեշեր)
  • Տարաձայնություններ - տիկետներում, որոնք հղում են «trace _ id»

13) Կոմպլասենսը և իրավական ասպեկտները

  • API օգտագործման պայմանները ընդունվում են (fultuse/express.rl)
  • PII/տվյալների սեփականատերերը 'դերն ու պահեստային գոտիները որոշվում են
  • Legal Hold/Alit-Log-ը ներառված է միջադեպերի ժամանակ։

14) Մոսկվան և զարգացողների պորտալը

  • OpenAPI/AsyncAPI-ն արդիական է, կան «պատճենելու-տեղադրման» օրինակներ։
  • MSK (TS/Py/Java/Go/.NET) - տարբերակները համաձայնեցված են, Cookbook-ը հասանելի է, Cookbook-ը հասանելի է։
  • Try-it playground աշխատում է, երգի բանալիները ակտիվ են
  • Changelog/դեպրեսիաներ/roadmap տեսանելի են պորտալում

15) Փորձարկում ՝ ֆունկցիոնալ, բացասական, քաոս

Ֆունկցիոնալ

  • Pagination/2019/wwww.ru ռացիենտալ դելտաներ
  • 401/403/404/409/422/429/5xx և «Retry-After» մշակումը։
  • Webhuke-ի անհավատարիմ ստորագրությունը, ժամկետանց հոսանքները, մեծ մարմինները
  • Կախվածության անջատումը (PFC/KYC) ճիշտ fallback/սխալ է։
  • Վերջնական PRR (Production Readiness Review) անցյալում է
  • Կանարեկային տրիբունալը '10% 2425% 2450% 24100%
  • SLO ազդանշաններ (սխալներ/լատենտ/429)
  • Կոնտակտային մատրիցը և էսկալացիայի ճանապարհը հրապարակվում են
  • CAPA-ի բեկլոգը օդաչուից հետո ձևավորվել է
  • Runbook/plack: «5xx spike», «429 storm», «webhook backlog», «timeout»
  • SLO/Error Budget զեկույցները
  • Գաղտնիքների վերացումը և ժամանակացույցի վրա հիմնված փոփոխությունները []
  • Տարբերակների դեպրեսիայի պլանը համաձայնեցված է (ամսաթիվը sunset)
[CRUD/հիմնական սցենարները անցել են (happy path)

Բացասական


Հաոս

[[] Drop 10-30% իրադարձություններ, reorder, հետաձգում 1-10 րոպե

16) Ընդունումը և արձակումը (go-2019)


17) Շահագործումը և աջակցությունը


18) Արտեֆակտների օրինակները

Excenv-wings
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

Retrav քաղաքականությունը (կեղծ)

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

19) Վերջնական չեկի թերթիկը «ստորագրության վրա»

  • Թաղումներ/տարբերակներ/բանալիներ/allowlist պատրաստ են
  • Auth/JWT/keys/mTRK-ը վճռական և փորձարկվել և փորձարկվել է։
  • Limits/քվոտաներ/retrai/idempotention իրականացվել են
  • Պագինատիա/108/108 դու աշխատում ես տվյալների վրա
  • Webhuki: ստորագրություններ, կրկնություններ, DLQ/Replay ստուգված են
  • Սխալները 'problem + json', «trace _ id» կպչում է բոլոր լույսերին։
  • Dashbords/alerts հավաքվում են, OTel-ը միացված է
  • Բեռի/բացասական/քաոս թեստերը անցել են
  • Հղումներն ու հաշվետվությունները համընկնում են, runbooks-ը կազմված է
  • PRR/canareka/rollback պլանը պատրաստ է, on-call շփումները նշված են

Արդյունքը

Այս չեկլիստը փակում է API-ի տեխնոլոգիական, վիրահատական և կոմպլեքս ասպեկտները։ Անցեք ներքևի կետերը, ավտոմատացրեք լիմիտների, կուռքերի և վեբխուքերի ստուգումը, միացրեք դիտողությունն ու արձագանքի պլանը, և ձեր գործարկումը կանխատեսելի է, առանց «անակնկալների»։

Contact

Կապ հաստատեք մեզ հետ

Կապ հաստատեք մեզ հետ ցանկացած հարցի կամ աջակցության համար։Մենք միշտ պատրաստ ենք օգնել։

Telegram
@Gamble_GC
Սկսել ինտեգրացիան

Email-ը՝ պարտադիր է։ Telegram կամ WhatsApp — ըստ ցանկության։

Ձեր անունը ըստ ցանկության
Email ըստ ցանկության
Թեմա ըստ ցանկության
Նամակի բովանդակություն ըստ ցանկության
Telegram ըստ ցանկության
@
Եթե նշեք Telegram — մենք կպատասխանենք նաև այնտեղ՝ Email-ի дополнение-ով։
WhatsApp ըստ ցանկության
Ձևաչափ՝ երկրի կոդ և համար (օրինակ՝ +374XXXXXXXXX)։

Սեղմելով կոճակը՝ դուք համաձայնում եք տվյալների մշակման հետ։