نحوه اتصال ارائه دهندگان از طریق API: دست دادن، صدور گواهینامه، ماسهبازی
مقاله کامل
1) نقشه ادغام: از برنامه تا تولید
مراحل:1. پیش فروش و علت سعی و کوشش: چک های حقوقی, جغرافیایی/مجوز, سازگاری با محتوا و سیاست های RG.
2. دست دادن و امنیت: صدور دسترسی سندباکس، تبادل کلید (mTLS/HMAC)، ثبت نام با Schema Registry.
3. طراحی فنی: ما مدل دامنه (جلسات/شرط/حل و فصل/حوادث)، idemotency، کدهای خطا را تایید می کنیم.
4. ادغام Sandbox: کیف پول/PSP/RG شبیه ساز، بازیکنان آزمون، باران و سناریوهای.
5. صدور گواهینامه: اجرای آزمون اجباری، امضای پروتکل، بارها و موارد هرج و مرج.
6. Staging/UAT: تنظیمات مبارزه بدون پول واقعی، ترافیک قناری.
7. Go-Live: شرکت کلیدی، فعال کردن پرچم های ویژگی، نظارت SLO، آمادگی پس از حادثه.
2) دست دادن: احراز هویت، مجوز، ردیابی
2. 1 به اشتراک گذاری اسرار و حوزه ها
mTLS (گواهینامه های نام تجاری/منطقه) و/یا OAuth2 اعتبار مشتری.
HMAC/EdDSA درخواست امضای بدن (اضافه می کند عدم رد).
Скоупы: 'sessions: write', 'bets: write', 'settlements: write', 'events: publish'.
2. 2 سرفصل های اجباری
«X-Trace-Id» - ردیابی پایان به پایان.
«X-نام تجاری ID»، «X-منطقه»، «X-ارائه دهنده ID».
'X-Idempotency-Key' - برای تمام عملیات نوشتن.
2. 3 بررسی سلامت (قبل از کد)
دریافت/سلامت
→ 200 {"وضعیت ": "خوب"،" نسخه":" 1. 7. 2 «،» زمان «: 2025-10-23T10: 00: 00Z»}3) Sandbox: چه چیزی وجود دارد و چگونه از آن استفاده کنید
ترکیب محیط زیست: هماهنگی با واقعیت:- نسخه های مشابه طرح ها و محدودیت های نرخ مانند فروش.
- زمان آسمان، تحویل دو برابر، خارج از سفارش - ساخته شده در دکمه های شبیه سازی.
 (EUR)،  (USD)،  (رد)4) مدل منابع و حداقل قرارداد
4. 1 ایجاد جلسه
پست/v1/جلسات
{
«player_id":"p_demo_1,» «game_id":"studio:slot_forge_02,» «ارز»:» EUR»، «محلی»:» DE»
}
→ 201 {"جلسه _ id": "s _ 456"، "منقضی می شود _ در": 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 حل و فصل (نتیجه دور)
پست/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 {«وضعیت «: «اعتبار «، «حل و فصل _ id»:» st _ 77»}4. 4 خطاها (نمودار تک)
409
{«کد «: «تکراری»,» پیام»:» شرط در حال حاضر مجاز «, «قابل استرداد «: غلط,» ردیابی _ id»:» tr _ a1b2»}5) رویدادها و طرح ها: بدون این شما گواهینامه را تصویب نخواهید کرد
موضوعات اصلی: مثال طرح Avro/JSON (fragment 'bet. حل و فصل '):جی سون
{
"event_type":"bet. حل شده» «schema_version":"1. 2. 0 «،»  « »  «منطقه»: {
«round_id":"r_8c12,» «شرط «: {«مقدار»: 1. 00، «ارز»:» EUR»}، «برنده «: {«مقدار»: 14. 60، "ارز":" EUR"} "، in_bonus":true
«idempotency_key":"bet_r_8c12_1»
}قوانین: تکامل سازگار با عقب، تست برای «تکراری و حوادث اواخر»، مشارکت توسط «tenant _ id/player _ id».
6) صدور گواهینامه ادغام: دقیقا چه چیزی بررسی می شود
6. 1 سناریوهای عملکردی (حداقل)
سعی کنید درخواست «authorize/settle» را با همان «X-Idempotency-Key» → همان پاسخ انجام دهید.
خارج از نظم: «حل و فصل» آمد بدون «اجازه» → شکست درست است.
زنجیرهای Rollback زمانی که کیف پول/شبکه سقوط می کند.
RG متوقف می شود: خود حذفی/حد از دست دادن/زمان → ممنوعیت شرط.
پاداش/vager: سهم نوع بازی، حداکثر شرط، مهلت.
6. 2 بار
p95 'شرط/حل و فصل' در بودجه (به عنوان مثال،. '<200-300 ms')، هیچ «طوفان» از retrays.
جریان رویداد ≤ 5 دقیقه به BI می رسد.
6. 3 موارد هرج و مرج
تحویل دو برابر، تاخیر خروجی/CDC، منطقه «تخلیه»، حل و فصل جزئی.
6. 4 تحویل
پروتکل تست با timecodes/trace-id.
گزارش SLO (تاخیر/خطا/تاخیر).
خلاصه امنیت (کلید، چرخش، دسترسی، خرک/HSM).
7) نسخه و مهاجرت
HTTP: '/v1/... 'in transit, events:' schema _ version 'در بدن.
SemVer: جزئی - اضافه کردن زمینه های اختیاری ؛ major - فقط از طریق پیشوند جدید «/v2/».
هدرهای استهلاک: «استهلاک»، «غروب آفتاب»، استفاده از آینه داشبورد.
پرچم های ویژگی: «حرف دوگانه» رویدادها («v1» و «v2») در انتقال.
8) ایمنی و انطباق
mTLS + امضاهای S2S، نشانه های کوتاه مدت، محدوده های محدود.
Zero-trust: سیاست های شبکه، کلیدهای هر برند/منطقه.
اقامت داده ها و PII: ذخیره سازی و سیاهههای مربوط در منطقه ؛ RLS/ماسک زدن
ممیزی WORM: تغییرات در محدودیت ها، پروفایل های RTP، پیکربندی برنده تمام پولها.
RG/AML: چراغ توقف همزمان در شرط/پرداخت ؛ گزارش SAR/STR
9) خروج به تولید: چک لیست راه اندازی
قبل از فعال شدن ترافیک
چرخش اسرار ماسهبازی → کلید PROD.
شامل داشبورد p95/p99، نرخ خطا، صف تاخیر، حل و فصل تاخیر.
هشدار SLO: نقض تاخیر/خطا/تاخیر، افزایش 'DUPLICATE/IDEMPOTENCY _ عدم تطابق'.
DR-plan: RPO ≤ 5 دقیقه، RTO ≤ 30 دقیقه ؛ «دکمه قرمز» - جلسات جدید را متوقف کنید.
قناری
1-5٪ مخاطب/بازی/جغرافیایی ؛ بازگشت خودکار در صورت نقض SLO.
پس از نظارت 24-72 ساعت، گزارش/گزارش آشتی.
10) ضد الگوهای (پرچم قرمز)
انتشار رویدادها با دور زدن outbox/CDC.
عدم وجود «X-Idempotency-Key» در عملیات نوشتن.
ویرایش دستی توازن/شهرک در پایگاه داده.
کلید های تک برای مارک های مختلف/مناطق.
BI و گزارش های نظارتی در بالای پایگاه داده مبارزه با OLTP.
تخریب صفر: سقوط ارائه دهنده کیف پول/پلت فرم را پایین می آورد.
11) چک لیست
برای ارائه دهنده
- من همیشه «X-Trace-Id» و «X-Idempotency-Key» را ارسال می کنم.
- من از تکرار با همان کلید بدون عوارض جانبی حمایت می کنم.
- رویدادهای طرح را از رجیستری منتشر کنید ؛ فروشگاه 'schema _ version'.
- Retrains Backoff و deduplication اجرا می شوند.
- توقف RG و محدودیت پاداش در زمان واقعی اجرا می شود.
- دسترسی و اسرار - در هر نام تجاری/منطقه، چرخش پیکربندی شده است.
برای پلت فرم
- صندوق پستی/CDC در تمام مسیرهای پول ؛ ردیابی پایان به پایان.
- داشبورد SLO: p95/99، نرخ خطا، صف تاخیر، حل و فصل تاخیر.
- فرآیند استهلاک/غروب آفتاب، یک نامه دو از حوادث در مهاجرت.
- تمرینات DR/xaoc، مدیریت حادثه و پس از مرگ.
- حالت های تخریب: «بدون جلسات جدید»، غیر فعال کردن تبلیغی/برنده تمام پولها.
12) نمونه ای از کتابچه راهنمای ادغام «حداقل» (TL ؛ دکتر)
1. یک NDA/قرارداد → دسترسی و طرح های sandbox را امضا کنید.
2. تبادل mTLS/HMAC گواهی ؛ 'provider _ id' را شروع کنید.
3. توافق بر حداقل نقاط پایانی: «جلسات»، «شرط/اجازه»، «شرط/حل و فصل»، «بازگشت».
4. اتصال به اتوبوس Sandbox و رجیستری ؛ از موارد عملکردی/هرج و مرج استفاده کنید.
5. پروتکل صدور گواهینامه را تصویب کنید: سیاهههای مربوط، ردیابی، گزارش SLO.
6. کلید ها را به غذا تغییر دهید، قناری را روشن کنید، SLO را مشاهده کنید.
7. ضبط معیارهای پس از انتشار و «درس» در changelog.
اتصال موفقیت آمیز ارائه دهنده نه تنها یک API است، بلکه یک فرایند کنترل شده است: یک دست دادن امن، یک سند واقع بینانه، صدور گواهینامه دقیق، قابلیت مشاهده و قوانین سازگاری روشن. با پیروی از متغیرهای توصیف شده (idempotency، outbox/CDC، RG/AML متوقف می شود، SLO و DR)، شما سرعت بخشیدن به ادغام، جلوگیری از حوادث پولی و انتشار قابل پیش بینی - بدون شگفتی برای بازیکنان، تنظیم کننده ها و کسب و کار.
