GraphQLフェデレーテッドクエリでDidit APIコールを最適化する (JA)
GraphQLフェデレーテッドクエリが、Didit APIとの連携においてコストを大幅に削減し、パフォーマンスを向上させる方法をご紹介します。過剰なデータ取得の削減、ネットワーク遅延の最小化、データ取得の効率化について学びましょう。.

データ取得を効率化GraphQLフェデレーテッドクエリを使用すると、複数のサービスから必要なデータを単一のAPIコールで正確にリクエストできるため、REST APIで一般的な過剰なデータ取得や不足するデータ取得が解消されます。
ネットワークオーバーヘッドの削減複数のリクエストを1つに統合することで、フェデレーテッドクエリはアプリケーションとDidit API間のラウンドトリップ数を大幅に減らし、レイテンシの低減と応答時間の高速化につながります。
費用対効果の向上APIコールの削減とデータ転送量の減少は、運用コストの直接的な削減につながります。消費するリソースとデータに対してのみ支払いが発生するため、本人確認にかかる費用が最適化されます。
Diditのモジュール式な利点Diditのオープンでモジュール式の本人確認プラットフォームは、GraphQLフェデレーテッドクエリの恩恵を最大限に受けることができます。ID検証、ライブネス、AMLスクリーニングなどの様々な本人確認プリミティブを、統一されたインターフェースを通じてシームレスに統合し、オーケストレーションすることが可能です。
従来のAPI連携の課題
本人確認の世界では、アプリケーションがユーザーや検証セッションに関する様々な情報を取得する必要があることがよくあります。従来のRESTful APIは、時に非効率的になることがあります。例えば、ID検証セッションを開始するために1回の呼び出しを行い、そのステータスを確認するために別の呼び出しを行い、さらに決定と関連データを取得するために別の呼び出しを行う、といった具合です。これにより、いくつかの一般的な問題が発生する可能性があります。
- 過剰なデータ取得:APIは、アプリケーションが実際に必要とする以上のデータを返すことが多く、帯域幅と処理能力を浪費します。
- 不足するデータ取得:逆に、単一のAPIコールでは必要なすべてのデータが提供されない場合があり、アプリケーションが複数の後続リクエストを行うことを余儀なくされます。
- 複数回のラウンドトリップ:各APIコールにはネットワーク遅延が発生し、多くのコールを連続して行うと、アプリケーションのパフォーマンスが大幅に低下する可能性があります。
- コストの増加:本人確認サービスを含む多くのAPIプロバイダーは、呼び出し回数または転送されるデータ量に基づいて課金します。非効率なAPIの使用は、予期せぬコストにつながる可能性があります。
ID検証(OCR、MRZ、バーコード)、受動的・能動的ライブネス、1対1の顔照合と顔検索、AMLスクリーニングとモニタリングなど、豊富な本人確認プリミティブを提供するDiditのようなプラットフォームにとって、これらのサービス間でデータを効率的に取得し結合することは非常に重要です。ここで、GraphQL、特にフェデレーテッドアプローチが強力なソリューションを提供します。
本人確認のためのGraphQLフェデレーテッドクエリの導入
GraphQLはAPIのためのクエリ言語であり、データのために定義する型システムを使用してクエリを実行するためのサーバーサイドランタイムです。クライアントは、必要なデータを正確に指定でき、それ以上は指定できません。本人確認のような複雑なエコシステムに適用すると、GraphQLフェデレーテッドクエリを使用すると、複数の基盤となるサービス(サブグラフ)からのデータを単一の統合されたAPIに結合できます。これにより、次のことが可能になります。
- 特定のデータをリクエスト:固定のデータ構造を受け取る代わりに、アプリケーションが必要とする正確なフィールドを定義します。例えば、DiditのID検証の結果を確認する場合、抽出されたすべてのフィールドではなく、検証ステータス、ユーザー名、およびドキュメントの有効期限のみが必要な場合があります。
- リクエストの統合:本人確認の異なる側面に関するクエリを1つにまとめます。ユーザーの検証決定、AMLスクリーニングステータス、および住所証明の詳細が必要な場合を想像してみてください。フェデレーションを使用すると、これらの情報はすべて、異なる内部Diditマイクロサービスから発生するものであっても、単一のクエリで取得できます。
- パフォーマンスの最適化:リクエストの数と転送されるデータ量を減らすことで、アプリケーションの読み込み時間と応答性が劇的に向上します。これは、すべてのミリ秒が重要なユーザー向けフローにとって特に重要です。
たとえば、セッションの決定(GET /v3/session/{id}/decision/)をクエリし、同時に関連するユーザー属性や関連するAMLチェックのステータスを、個別の呼び出しを行う代わりに、すべて一度に取得できます。
実装のための実践的な戦略
DiditのAPIでGraphQLフェデレーテッドクエリを実装するには、いくつかの重要なステップがあります。
- スキーマの定義:Diditの様々なサービスから必要なデータを表すGraphQLスキーマを定義することから始めます。このスキーマは、クライアントとAPIゲートウェイ間の契約として機能します。
- ゲートウェイ/オーケストレーションレイヤーの構築:統合されたスキーマを理解するGraphQLゲートウェイ(例:Apollo Federation Gateway)をセットアップします。このゲートウェイは、受信するGraphQLクエリの一部を適切なDidit APIエンドポイントまたは内部マイクロサービスにルーティングします。
- DiditのRESTエンドポイントへのマッピング:ゲートウェイのリゾルバー内で、GraphQLフィールドを対応するDidit REST API呼び出しにマッピングします。たとえば、GraphQLの
sessionStatusフィールドは、DiditのGET /v3/session/{id}/decision/エンドポイントを呼び出すことで解決される場合があります。 - Diditのモジュール式APIの活用:Diditは非常にモジュール式のアーキテクチャを提供しています。これは、年齢推定、電話とメールの検証、NFC検証などの個々の本人確認チェックを、フェデレーテッドグラフ内の個別のサービスとして統合できることを意味し、きめ細やかな制御と効率性を提供します。
- 監視と反復:GraphQLゲートウェイのパフォーマンスとクエリの効率を監視するツールを使用します。最大のコストとパフォーマンスのメリットを確保するために、必要に応じてリゾルバーとスキーマ定義を最適化します。
ユーザーの年齢を確認し、AMLチェックを実行する必要があるシナリオを考えてみましょう。2つの個別のAPI呼び出しではなく、単一のフェデレーテッドGraphQLクエリで両方の結果を取得できるため、ワークフローが大幅に合理化され、レイテンシが短縮されます。これは、規制された業界のアプリケーションや、迅速なオンボーディングプロセスを必要とするアプリケーションにとって特に価値があります。
コストとパフォーマンスのメリット
DiditのようなプラットフォームでGraphQLフェデレーテッドクエリを使用する利点は、よりクリーンなコードだけにとどまりません。
- APIコール量の削減:リクエストを統合することで、DiditへのAPIコールの総数が自然に減少し、従量課金制の場合はコストに直接影響を与える可能性があります。
- データ転送コストの削減:必要なデータのみをリクエストすることで、帯域幅の消費が最小限に抑えられ、特にクラウド環境ではデータ転送コストが低減されます。
- ユーザーエクスペリエンスの向上:データ取得の高速化は、読み込み時間の短縮とアプリケーションの応答性の向上を意味し、重要な本人確認ステップでの全体的なユーザーエクスペリエンスを向上させます。
- クライアント開発の簡素化:クライアントアプリケーションは、単一の一貫したGraphQLエンドポイントとやり取りでき、複数の基盤となるREST APIの複雑さを抽象化できます。これにより、開発とメンテナンスが簡素化されます。
- スケーラビリティの向上:最適化されたAPIインタラクションモデルにより、アプリケーションはより効率的にスケーリングでき、インフラストラクチャやAPIコストの比例的な増加なしに、より高いトラフィック量を処理できます。
Diditの無料コアKYCと成功したチェックごとの支払いモデルは、すでに大幅なコストメリットを提供しており、GraphQLフェデレーテッドクエリと統合することで、消費するリソースと必要とするものに対してのみ支払いが発生するようにすることで、これらのメリットをさらに増幅させます。
Diditの貢献
Diditは、オープンでモジュール式のアーキテクチャで構築されたAIネイティブな開発者ファーストの本人確認プラットフォームであり、GraphQLフェデレーテッドクエリとの統合に理想的な候補です。クリーンなAPIと包括的なドキュメントにより、当社のサービスをGraphQLスキーマにマッピングすることは簡単です。ドキュメントチェックのためのID検証、不正防止のための受動的・能動的ライブネス、コンプライアンスのためのAMLスクリーニングとモニタリング、住所確認のための住所証明のいずれを利用する場合でも、各コンポーネントをフェデレーテッドグラフにシームレスに統合できます。
当社のモジュール設計へのコミットメントにより、開発者は必要な本人確認プリミティブを厳選し、カスタムワークフローにオーケストレーションし、その結果を効率的にクエリできます。Diditでは、無料のコアKYC、成功したチェックごとの透明な支払い、およびセットアップ料金なしのメリットを享受でき、GraphQLによるコストとパフォーマンスの最適化の追求が効果的かつ経済的であることを保証します。Diditは、GraphQLフェデレーテッドクエリが比類のない効率で公開および管理できる、効率的でスケーラブルかつ安全な本人確認インフラストラクチャの構成要素を提供します。
今すぐ始めましょうか?
Diditの実際の動作を確認する準備はできていますか? 今すぐ無料デモを試してみてください。
Diditの無料ティアで無料で本人確認を開始しましょう。