fetchを備えたエッジランタイムで動作し、ESモジュールとCommonJSの両方のビルドを提供し、ランタイム依存関係はありません。すべてのSDKに共通する内容はサーバーSDKの概要を参照してください。
インストール
@didit-protocol/sdk-nodeです。ソースコードと変更履歴はGitHubのdidit-protocol/sdk-nodeにあります。
クライアントを設定する
new Didit()は、Node.js、Bun、Deno(--allow-env指定時)では環境変数からDIDIT_API_KEYを読み込みます。エッジランタイムにはプロセス環境がないため、キーをオプションとして渡してください: new Didit({ apiKey: env.DIDIT_API_KEY })。オプションを渡すと、この値を上書きしたり、アプリケーション単位の呼び出し(ケース、ネットワーク、規制当局向けレポート)に必要な組織IDとアプリケーションIDを設定したりできます。タイムアウトの単位はミリ秒です。
const { Didit } = require("@didit-protocol/sdk-node");を使用します。
セッションを作成する
ワークフロー用に認証セッションを作成し、ユーザーをそのURLに誘導します。リクエストのフィールドはAPIと同じ名前のままです。判定を読み取る
ユーザーが完了したとき(またはWebhookが届いたとき)に、判定を読み取ってください。各機能の結果はワークフローのノードごとに1件のエントリを持つリストで、日時はDateオブジェクトです。
Webhookを検証する
生のボディ(パース済みのJSONではないもの)とリクエストヘッダーを渡します。ヘッダーにはNode.jsまたはExpressのreq.headersオブジェクト、FetchのHeadersオブジェクト、または[name, value]ペア(WebhookHeaders型)を使用できます。verifyはPromiseを返し、有効で、かつ最新の配信ではない場合WebhookVerificationErrorでrejectします。
express.raw({ type: "application/json" })でボディを読み取り、handleWebhook(req.body, req.headers)を呼び出します。シークレットをローテーションしている間は、[newSecret, oldSecret]のように両方を渡してください。イベントと署名方式についてはWebhookを参照してください。
取引をスクリーニングする
支払い、出金、暗号資産の送金をトランザクションモニタリングに送信します。レスポンスにはそのステータスとリスクスコアが含まれます。Authenticationトークンを検証する
Authenticationは、Authenticationの発行者が署名したアクセストークンを、リクエストごとにDiditを呼び出すことなくバックエンドで検証します。また、コードの交換、トークンのリフレッシュ、セッションの確認と失効、ステップアップの実行も行います。
トークン検証では、アプリケーションの発行者と署名鍵に対して、サーバーでトークンを検証するに記載されたチェックを行います。