net/httpを使用します。すべてのSDKに共通する事項については、サーバーSDKの概要を参照してください。
インストール
didit-sdkとして公開されています。ソースと変更履歴はGitHubのdidit-protocol/sdk-rubyにあります。
または、Gemfileにgem "didit-sdk"を追加してbundle installを実行します。読み込むにはrequire "didit"を使用します。
クライアントを設定する
Didit::Client.newは環境変数DIDIT_API_KEYを読み込みます。これを上書きする場合や、アプリケーション単位の呼び出し(ケース、ネットワーク、規制レポート)に必要な組織IDとアプリケーションIDを設定する場合は、キーワード引数を渡します。リクエストのフィールドは、APIと同じ名前のキーワード引数です。レスポンスは、フィールドごとのリーダー、[:field]、to_hを備えたオブジェクトです。
セッションを作成する
ワークフローの検証セッションを作成し、ユーザーをそのURLに誘導します。判定を読み取る
ユーザーが手続きを完了したとき(またはWebhookが届いたとき)に、判定を読み取ります。各機能の結果はリストで、ワークフローのノードごとに1件のエントリーがあります。Webhookを検証する
受信したままのリクエストボディと、リクエストヘッダーを渡します。verifyは、有効で期限内の配信ではない場合Didit::WebhookVerificationErrorを発生させ、それ以外の場合は型付きのイベントを返します。
handle_webhook(request.raw_post, request.headers)を呼び出します。シークレットのローテーション中は、[new_secret, old_secret]のように両方を渡します。イベントと署名方式についてはWebhookを参照してください。
取引をスクリーニングする
支払い、出金、または暗号資産の送金をトランザクションモニタリングに送信します。レスポンスには、そのステータスとリスクスコアが含まれます。Authenticationトークンを検証する
Didit::Authenticationは、Authenticationのイシュアーが署名したアクセストークンを、リクエストのたびにDiditを呼び出すことなく、バックエンドで検証します。また、コードの交換、トークンの更新、セッションの確認と取り消し、ステップアップの実行も行います。
トークン検証では、アプリケーションのイシュアーと署名鍵に対して、サーバーでトークンを検証するに記載されたチェックを行います。