API経由でプロバイダを接続する方法:ハンドシェイク、認定、サンドボックス
完全な記事
1)統合マップ: アプリケーションから生産まで
ステージ:1.プレセールとデューデリジェンス:法的チェック、地理/ライセンス、コンテンツの互換性とRGポリシー。
2.ハンドシェイクとセキュリティ:Sandboxアクセスの発行、鍵交換(mTLS/HMAC)、スキーマレジストリへの登録。
3.技術設計:ドメインモデル(セッション/ベット/決済/イベント)、idempotency、エラーコードを確認します。
4.サンドボックスの統合:ウォレット/PSP/RGエミュレータ、テストプレーヤー、雨とテイクシナリオ。
5.認証:必須テストラン、プロトコル署名、負荷とカオスケース。
6.ステージング/UAT:リアルマネー、カナリアトラフィックなしでの戦闘コンフィギュレーション。
7.Go-Live:主要企業、機能フラグ、SLO監視、事後準備。
2)ハンドシェイク: 認証、認可、トレース
2.1秘密とスコープの共有
mTLS(ブランド/地域証明書ごと)および/またはクライアント資格情報OAuth2。
HMAC/EdDSAリクエストボディ署名(非拒否を追加)。
'sessions: write'、 'bets: write'、 'settings: write'、 'events: publish'。
2.2必須の見出し
'X-Trace-Id'-エンドツーエンドのトレース。
'X-Brand-Id'、 'X-Region'、 'X-Provider-Id'。
'X-Idempotency-Key'-すべての書き込み操作用。
2.3健康診断(コード前)
GET/健康
→200 {"status":"ok"、" version":" 1。7.2"、"時間":"2025-10-23T10: 00: 00Z"}3)サンドボックス: 何があり、それを使用する方法
環境の構成: 現実との調和:- 販売と同様のスキームとレート制限のバージョン。
- タイムスカイ、デリバリーダブル、アウトオブオーダー-内蔵のエミュレーションボタン。
p_demo_1 (EUR)、 p_demo_2 (USD)、 p_blocked_rg(拒否)、p_low_balance4)リソースモデルと最低限の契約
4.1セッション作成
POST/v1/セッション
{
「player_id":"p_demo_1,」 「game_id":"studio:slot_forge_02,」「通貨」:」EUR」「、ロケール」:」de-DE」
}
→201 {「session_id「:「s_456」、」 expires_at」:」 2025-10-23T19: 10: 00Z」}4.2レート承認(hold)
POST/v1/bets/authorize
ヘッダー:X-Idempotency-Key: bet_r_8c12_1
{
「session_id":"s_456,」 「bet_id":"b_001,」 「round_id":"r_8c12,」「量「:{」量」:2。00、 「currency」:」 EUR」}
}
→200 {「status「:「authorized」、」 hold_id」:」 h_zz1」}4.3決済(ラウンド結果)
POST/v1/bets/settle
ヘッダー:X-Idempotency-Key: settle_r_8c12_1
{
"bet_id":"b_001," "round_id":"r_8c12," "win": {"amount': 14。60、 "currency":" EUR"}、 "bonus_state":{"in_bonus":true,"freespins_left":7}
}
→200 {「status「:「credited「、「settlement_id」:」 st_77」}4.4エラー(シングルダイアグラム)
409
{「code「:「DUPLICATE」、」 message」:」 Bet already authorized「、「retryable「:false」、 trace_id」:」 tr_a1b2」}5)イベントとスキーム: これがなければ、認定を通過しません
基本的なトピック: Avro/JSONスキーマの例(fragment 'bet。setted'):json
{
「event_type":"bet。」決済」、「schema_version":"1。2.0、""event_id":"uuid,""occurred_at":"2025-10-23T16:21:05Z, "tenant_id":"brand-7,"地域":"EU"、"player_id":"p_demo_1, "trace_id":"tr_a1b2,"ペイロード":{
"round_id":"r_8c12," "bet": {"amount': 1。00、 "currency": "EUR"}、 "win": {"amount': 14。60、 "currency":" EUR"}、 "in_bonus":true
}「、idempotency_key":"bet_r_8c12_1」
}ルール:後方互換性のある進化、「重複と遅延イベント」のテスト、'tenant_id/player_id'による参加。
6)統合の証明: 何が厳密に点検されているか
6.1機能シナリオ(最小)
同じ'X-Idempotency-Key'→同じ応答で'authorize/settle'リクエストを再試行します。
Out-of-order: 'settle'は'authorize'→正しい失敗なしで来ました。
ウォレット/ネットワークが落ちたときにロールバックチェーン。
RG停止:自己除外/損失制限/時間→ベット禁止。
ボーナス/ベーガー:ゲームタイプによる貢献、最大賭け、期限。
6.2負荷
p95 'bet/settle'(例えば、'<200-300 ms')、レトレイの「嵐」はありません。
イベントストリームはBI ≤ 5分に達します。
6.3カオス事件
配達は倍増します、outbox/CDCの遅れ、地域「ダンプ」、部分的な解決。
6.4成果物
timecodes/trace-idでプロトコルをテストします。
SLOレポート(レイテンシ/エラー/ラグ)。
セキュリティの概要(キー、回転、アクセス、Vault/HSM)。
7)バージョンと移行
HTTP: '/v1/……'in transit、 events:' schema_version'
SemVer:マイナー-オプションフィールドの追加;major-新しい接頭辞'/v2/'を通じてのみ。
減価償却ヘッダ:'減価償却'、'Sunset'、ダッシュボードはミラーを使用します。
フィーチャーフラグ:遷移中のイベント('v1'と'v2')の「二重文字」。
8)安全性とコンプライアンス
mTLS+S2S署名、短命トークン、有限スコープ。
ゼロトラスト:ネットワークポリシー、ブランド/リージョンキーごと。
データレジデンシーとPII:地域内のストレージとログ;RLS/マスキング。
WORM監査:制限への変更、RTPプロファイル、ジャックポットコンフィギュレーション。
RG/AML:賭け/支払の同期停止ライト;SAR/STRレポート。
9)生産への終了: 起動チェックリスト
トラフィックが有効になる前に
サンドボックスの秘密の回転→プロッドキー。
含まれているダッシュボードp95/p99、 error-rate、 queue-lag、 settle-lag。
アラートSLO:レイテンシ/エラー/ラグによる違反、サージ'DUPLICATE/IDEMPOTENCY_MISMATCH'。
DR計画:RPO ≤ 5分、RTO ≤ 30分;「red button」-新しいセッションを停止します。
Canary(カナリア)
1-5%の聴衆/ゲーム/地理;SLO違反の場合の自動ロールバック。
ポストモニタリング24-72時間、元帳/レポートの和解。
10)反模様(赤い旗)
outbox/CDCをバイパスするイベントの発行。
書き込み操作に'X-Idempotency-Key'がない。
データベース内の残高/決済の手動編集。
複数のブランド/リージョンのシングルキー。
OLTP戦闘データベースの上にBIと規制レポート。
ゼロ劣化:プロバイダの秋は、ウォレット/プラットフォームをもたらします。
11)チェックリスト
プロバイダの場合
- 常に「X-Trace-Id」と「X-Idempotency-Key」を送信します。
- 副作用なしで同じキーで繰り返すことをサポートします。
- レジストリからスキーマイベントを公開する。'schema_version'を保存します。
- バックオフリトレインと重複除外が実装されています。
- RG停止とボーナス制限はリアルタイムで適用されます。
- アクセスと秘密-ブランド/地域ごとに、設定された回転。
プラットホームのため
- すべてのマネーパス上のOutbox/CDC;エンドツーエンドのトレース。
- SLOダッシュボード:p95/99、 error-rate、 queue-lag、 settle-lag。
- 廃止/日没プロセス、移行に関するイベントの二重文字。
- DR/xaoc演習、インシデント管理および死後。
- 劣化モード:'no new sessions'、 promo/jackpotを無効にします。
12) 「minimal」統合playbook (TL;DR)
1.NDA/contract→issue sandboxアクセスとスキームに署名します。
2.交換mTLS/HMACの証明書;'provider_id'を起動します。
3.最小エンドポイントに同意:'sessions'、' bets/authorize'、'bets/settle'、'rollback'。
4.サンドボックスバスとレジストリに接続します。機能的/カオスケースを駆動します。
5.認証プロトコル:logs、 trace-id、 SLOレポートを渡します。
6.食糧にキーを転換して下さい、カナリアをつけて下さい、SLOを観察して下さい。
7.リリース後のメトリックと「レッスン」をchangelogに記録します。
プロバイダの接続に成功したのはAPIだけでなく、セキュアなハンドシェイク、現実的なサンドボックス、厳格な認証、オブザビリティ、明確な互換性ルールなど、制御されたプロセスです。説明されている不変量(idempotency、 outbox/CDC、 RG/AML停止、SLOおよびDR)に従うことで、統合を加速し、金銭的インシデントを回避し、プレーヤー、規制当局、企業にとって驚くことなく予測可能なリリースを得ることができます。
