Чӣ гуна провайдерҳоро тавассути API пайваст кардан мумкин аст: дастӣ, сертификатсия, қуттича
Мақолаи пурра
1) Харитаи ҳамгироӣ: аз татбиқ то истеҳсол
Марҳилаҳо:1. Санҷиши пешакӣ ва зарурӣ: санҷишҳои ҳуқуқӣ, гео/литсензия, мутобиқати мундариҷа ва сиёсати RG.
2. Дастпӯшак ва амният: додани дастрасӣ ба қуттиҳои қуттӣ, мубодилаи калидҳо (MTLS/HMAC), бақайдгирӣ дар Феҳристи Схема.
3. Тарҳи техникӣ: мо модели домен (сеанс/гарав/ҳисоббаробаркунӣ/рӯйдодҳо), аблаҳӣ, рамзҳои хатогиро тасдиқ мекунем.
4. Интегратсияи Sandbox: ҳамён/PSP/RG эмуляторҳо, плеерҳои санҷишӣ, борон ва сенарияҳо.
5. Сертификатсия: санҷиши ҳатмӣ, имзои протокол, парвандаҳо ва бетартибӣ.
6. Марҳилаи/UAT: конфигуратсияҳои ҷангӣ бидуни пули воқеӣ, трафики канарӣ.
7. Go-Live: ширкати калидӣ, ки парчамҳои хусусиро фароҳам меорад, мониторинги SLO, омодагии пас аз ҳодиса.
2) Дастӣ: аутентификатсия, авторизатсия, пайгирӣ
2. 1 Мубодилаи асрори ва миқёс
MTLS (барои шаҳодатномаҳои бренд/минтақа) ва/ё эътимодномаи мизоҷон OAuth2.
HMAC/EdDSA имзои баданро дархост мекунад (илова намекунад).
Скупы: 'сессияҳо: нависед', 'гарав: навиштан', 'ҳисоббаробаркунӣ: навиштан', 'рӯйдодҳо: нашр кардан'.
2. 2 Сарлавҳаҳои ҳатмӣ
'X-Trace-Id' - пайгирии ниҳоӣ.
'X-Brand-Id', 'X-Region', 'X-Provider-Id'.
'X-Idempotency-Key' - барои ҳама амалиётҳои навиштан.
2. 3 Санҷиши саломатӣ (пеш аз рамз)
GET/саломатӣ
→ 200 {"статус ": "ok"," версия":" 1. 7. 2, ""вақт":" 2025-10-23T10: 00: 00Z"}3) Сандбокс: чӣ ҳаст ва чӣ гуна онро истифода бурдан мумкин аст
Таркиби муҳити зист: Ҳамоҳангӣ бо воқеият:- Версияҳои шабеҳи схемаҳо ва маҳдудиятҳои нархҳо дар фурӯш.
- Вақти осмон, таҳвил дучанд мешавад, тугмаҳои фармоишӣ - дарунсохт.
p_demo_1 (EUR), p_demo_2 (доллари ИМА), p_blocked_rg (инкор), p_low_balance4) Модели захираҳо ва шартномаи ҳадди аққал
4. Эҷоди сеанс 1
POST/v1/ҷаласаҳо
{
"player_id":"p_demo_1," "game_id":"studio:slot_forge_02," асъор ":" EUR "," locale ":" de-DE "
}
→ 201 {"session _ id ": "s _ 456"," ба итмом мерасад _ at":" 2025-10-23T19: 10: 00Z"}4. 2 Иҷозати меъёр (нигоҳ доштан)
POST/v1/гарав/ваколатдор
Сарлавҳаҳо: Калиди X-Idempotency: bet_r_8c12_1
{
"session_id":"s_456," "bet_id":"b_001," "round_id":"r_8c12," "маблағ ": {" маблағ": 2. 00, "асъор":" EUR"}
}
→ 200 {"статус ": "ваколатдор"," hold _ id":" h _ zz1"}4. 3 Ҳисоббаробаркунӣ (натиҷаи мудаввар)
POST/v1/гарав/ҳал
Сарлавҳаҳо: Калиди X-Idempotency: settle_r_8c12_1
{
"bet_id":"b_001," "round_id":"r_8c12," бурд ": {" маблағ ": 14. 60, "асъор":" EUR"}, "bonus_state":{"in_bonus":true,"freespins_left":7}
}
→ 200 {"статус ": "ҳисоб карда шудааст ", "ҳисоббаробаркунӣ _ ид":" st _ 77"}4. 4 Хатогӣ (диаграммаи ягона)
409
{"рамз ": "DUPLICATE"," паём":" Бет аллакай ваколатдор шудааст ", "бознишаста ": бардурӯғ," trace _ id":" tr _ a1b2"}5) Чорабиниҳо ва нақшаҳо: бе ин шумо сертификатсияро намегузаред
Мавзӯъҳои асосӣ: Намунаи Avro/JSON Schema (fragment 'bet. ҳал шудааст '):json
{
"event_type":"bet. муқимӣ" ", schema_version":"1. 2. 0," "event_id":"uuid," "occurred_at":"2025-10-23T16:21:05Z," "tenant_id":"brand-7," "минтақа":" ИА", "player_id":"p_demo_1," "trace_id":"tr_a1b2," "бор": {
"round_id":"r_8c12," "Бет ": {"маблағ": 1. 00, "асъор":" EUR"}, "win ": {"маблағ": 14. 60, "асъор":" EUR"} ", in_bonus":true
}, "idempotency_key":"bet_r_8c12_1"
}Қоидаҳо: эволютсияи ба қафо мувофиқ, санҷиш барои "такрорӣ ва рӯйдодҳои дер", иштироки 'иҷорагир _ ид/плеери _ ид'.
6) Сертификатсияи ҳамгироӣ: маҳз чӣ тафтиш карда мешавад
6. 1 сенарияи функсионалӣ (ҳадди аққал)
Такрори 'иҷозат/ҳал кардани' дархостро бо ҳамон 'X-Idempotency-Key' § ҳамон посух.
Тартиби фармоишӣ: 'ҳал' бидуни 'иҷозат' § нокомии дуруст омадааст.
Ҳангоми афтидани ҳамён/шабака занҷирҳои бозгашт.
RG қатъ мекунад: худтанзимкунӣ/маҳдудияти талафот/вақт § манъ кардани гарав.
Бонус/вагер: саҳм аз рӯи навъи бозӣ, ҳадди аксар, мӯҳлатҳо.
6. 2 Бор кардан
p95 'гарав/ҳал' дар буҷа (масалан, '<200-300 мс'), ҳеҷ "тӯфон" -и бознишастагӣ нест.
Ҷараёни ҳодисаҳо ба BI ≤ 5 дақиқа мерасад.
6. 3 Ҳолатҳои бетартибӣ
Таҳвил дучанд мешавад, таъхири outbox/CDC, минтақа "партов", қисман ҳисоббаробаркунӣ.
6. 4 Расонидани
Протоколи санҷишӣ бо timecodes/trace-id.
Ҳисоботи SLO (таъхир/хатогӣ/ақибмонӣ).
Хулосаи амният (калидҳо, гардишҳо, дастрасӣ, Vault/HSM).
7) Версия ва муҳоҷират
HTTP: '/v1/... 'дар транзит, ҳодисаҳо:' schema _ version 'дар бадан.
Semver: ноболиғ - илова кардани майдонҳои ихтиёрӣ; асосӣ - танҳо тавассути префикси нав '/v2/'.
Сарлавҳаҳои амортизатсия: 'Фарсудашавӣ', 'Ғуруби офтоб', истифодаи панели оина.
Парчамҳои хусусият: "ҳарфи дукарата" -и рӯйдодҳо ('v1' ва 'v2') ҳангоми гузариш.
8) Бехатарӣ ва риояи
Имзоҳои MTLS + S2S, аломатҳои кӯтоҳмуддат, миқёси маҳдуд.
Боварӣ ба сифр: сиёсати шабака, калидҳои ҳар як бренд/минтақа.
Резидентураи маълумот ва PII: анбор ва гузоришҳо дар минтақа; RLS/ниқоб.
Аудити WORM: тағирот ба маҳдудиятҳо, профилҳои RTP, конфигуратсияҳои jackpot.
RG/AML: чароғҳои таваққуфи синхронӣ дар гарав/пардохт; Ҳисоботи SAR/STR.
9) Баромадан аз истеҳсол: рӯйхати назоратӣ
Пеш аз трафик фаъол аст
Ротатсияи сирри қуттиҳо → тугмаҳои prod.
Панели панелҳои p95/p99, хатогӣ, ақибмонӣ, ақибмонӣ.
Ҳушдор SLO: вайрон кардани таъхир/хатогӣ/ақибмонӣ, афзоиши 'DUPLICATE/IDEMPOTENCY _ MISMATCH'.
DR-нақша: RPO ≤ 5 дақ, RTO ≤ 30 дақ; "тугмаи сурх" - ҷаласаҳои навро қатъ кунед.
Канария
1-5% тамошобинон/бозиҳо/гео; дар сурати вайрон кардани SLO, ба таври автоматикӣ бозгашт.
Мониторинги пас аз 24-72 соат, мусолиҳаи дафтар/гузориш.
10) Анти-намунаҳо (парчамҳои сурх)
Интишори чорабиниҳо бо гузаштани outbox/CDC.
Набудани 'X-Idempotency-Key' дар амалиёти навиштан.
Таҳрири дастии тавозунҳо/ҳисоббаробаркуниҳо дар пойгоҳи додаҳо.
Калидҳои ягона барои якчанд брендҳо/минтақаҳо.
BI ва ҳисоботҳои танзимкунанда дар болои пойгоҳи додаҳои ҷангии OLTP.
Таназзули сифр: суқути провайдер ҳамён/платформаро ба поён меорад.
11) Рӯйхати санҷишҳо
Барои провайдер
- Ман ҳамеша 'X-Trace-Id' ва 'X-Idempotency-Key' -ро мефиристам.
- Ман такрориро бо ҳамон калид бе таъсири тараф дастгирӣ мекунам.
- Чорабиниҳои схемаро аз Феҳрист нашр кунед; store 'schema _ version'.
- Бозомӯзӣ ва такрористеҳсолкунӣ амалӣ карда мешаванд.
- Истгоҳҳои RG ва маҳдудиятҳои бонус дар реҷаи вақти воқеӣ татбиқ карда мешаванд.
- Дастрасӣ ва асрори - барои як бренд/минтақа, гардиш танзим карда шудааст.
Барои платформа
- Outbox/CDC дар ҳама роҳҳои пул; пайгирии ниҳоӣ-ба-охир.
- Панели панели SLO: p95/99, хатогӣ, ақибмонӣ, ақибмонӣ.
- Раванди фарсудашавӣ/ғуруби офтоб, мактуби дуҷонибаи рӯйдодҳо дар бораи муҳоҷират.
- Машқҳои DR/xaoc, идоракунии ҳодисаҳо ва пас аз марг.
- Ҳолати таназзул: 'ҷаласаҳои нав', ғайрифаъол кардани promo/jackpot.
12) Намунаи китоби бозикунии "ҳадди аққал" (TL); DR)
1. Ба NDA/шартнома имзо гузоред → дастрасӣ ба схемаҳо ва схемаҳо.
2. Мубодилаи сертификатҳои m/TLS/HMAC; start 'provider _ id'.
3. Дар бораи нуқтаҳои ҳадди аққал розӣ шавед: 'сессияҳо', 'гарав/иҷозат додан', 'гарав/ҳал кардан', 'бозгашт'.
4. Ба автобус ва феҳристи Sandbox пайваст шавед; ҳолатҳои функсионалӣ/бетартибиҳоро берун кунед.
5. Протоколи сертификатсияро гузаред: гузоришҳо, пайгирӣ, гузориши SLO.
6. Калидҳои хӯрокро иваз кунед, канараро фурӯзон кунед, SLO-ро риоя кунед.
7. Ченакҳои пас аз озодкунӣ ва "дарсҳо" -ро дар changelog сабт кунед.
Пайвасти бомуваффақияти провайдер на танҳо API, балки раванди назоратшаванда аст: дастаки бехатар, қуттии воқеӣ, сертификатсияи қатъӣ, мушоҳида ва қоидаҳои возеҳи мутобиқат. Бо пайравӣ аз инвариантҳои тавсифшуда (idempotency, outbox/CDC, RG/AML қатъ мешавад, SLO ва DR), шумо интегратсияро суръат мебахшед, аз ҳодисаҳои пулӣ канорагирӣ мекунед ва релизҳои пешгӯишавандаро мегиред - бидуни ногаҳонӣ барои бозингарон, танзимгарон ва корхонаҳо.
