メインコンテンツへスキップ
Data API は、Kameleoon のリモートサーバーに保存されたデータを取得または書き込むための REST API です。利用可能なエンドポイントを使用して、次のことができます。
  • 特定の訪問者の訪問イベントを取得する。
  • オフラインコンバージョンイベントなど、特定の訪問者の追加の訪問イベントを送信する。
  • 特定のサイトコードの商品データを送受信する。
  • CRM やセグメンテーションデータなど、特定の訪問者の追加データを保存する。

Data API エンドポイント

エンドポイントは大きく分けて 3 つのデータカテゴリーに分類されます。

Visit エンドポイント

Visit エンドポイントは、指定された訪問者コードに対するイベント(コンバージョン、カスタムデータ、セグメントなど)を取得および送信します。これらのエンドポイントを使用して、実店舗での購入などのオフライン購入データを Kameleoon にインポートできます。
  • GET /visit/visitor: このエンドポイントは、ユーザーに対してトリガーされた実験やパーソナライゼーション、ターゲットセグメントなど、Kameleoon が収集した訪問データを取得します。
このエンドポイントへのアクセスには、Kameleoon Feature Experimentation ソリューションが必要です。詳細については、カスタマーサクセスマネージャーにお問い合わせください。
  • POST /visit/forget: このエンドポイントは、複数の訪問者のデータを削除します。
  • POST /visit/events: このエンドポイントは、コンバージョンやページビューイベントなど、特定の訪問者のデータを送信します。

Product エンドポイント

Product エンドポイントは、特定のサイトコードの商品データを取得および送信します。これらのエンドポイントを使用して、ビュー、カートへの追加、購入などの商品イベントを登録したり、特定の商品の統計情報(過去の購入数やビュー数など)を取得したりできます。
  • POST /product/events: このエンドポイントは、複数の商品の属性(名前、価格など)とイベント(ビュー、カートへの追加、購入)を送信します。Activation API は、obtainProductData および obtainProductInteractions メソッドを使用して、このデータを取得し、ターゲティングやレコメンデーションに利用します。
  • GET /product/productCounters: このエンドポイントは、複数の商品のカウント(ビュー数、カート追加数、トランザクション数)を取得します。
  • GET /product/productData: このエンドポイントは、複数の商品の属性を取得します。
Product Recommendation モジュールまたは Product Targeting アドオンへのアクセスが必要です。両方とも Web Experimentation ソリューションと統合されます。詳細については、カスタマーサクセスマネージャーにお問い合わせください。

Map エンドポイント

Map エンドポイントは、特定のキー(通常は訪問者コードまたは内部ユーザー ID)に対する追加データを保存します。Activation API およびすべての SDK は、retrieveDataFromRemoteSource メソッドを使用して、このデータを取得し、ターゲティングおよびセグメンテーションに利用します。map エンドポイントを使用して、特定のキーに保存されたデータを取得します。
  • GET /map/map: このエンドポイントは、指定されたキーのデータを取得します。
  • GET /map/maps: このエンドポイントは、複数のキーのデータを取得します。
  • POST /map/maps: このエンドポイントは、複数のキーのデータを送信します。

認証とレート制限

認証

Data API は、JSON Web トークンを利用した Automation API と同じ認証フローを使用します。 セキュリティを維持し、API 認証情報を保護するため、特定のタイプのリクエストには認証を使用してください。
  • サーバーサイドのソース: サーバーから発信されるリクエストには、認証を強く推奨します。これにより レート制限 が引き上げられます。Feature Experimentation でサーバーサイド SDK を使用する場合は認証してください。
  • クライアントサイドのソース: Web ブラウザなどのクライアントアプリケーションから発信され、API 認証情報が公開される可能性のあるリクエストでは、認証しないでください。この構成は、Kameleoon Web Experimentation を使用する場合には推奨されません。
不正な形式の API トークン、期限切れのトークン、または無効な署名を提供するリクエストはすべて、HTTP 401「Unauthorized」応答となります。 認証プロセスの詳細については、Automation API 認証フロー のドキュメントを参照してください。
Data API は Web Experimentation エンジンによる過去のデータ取得をサポートするため、デフォルトでは認証は必要ありません。Feature Experimentation とサーバーサイド SDK のみを使用している場合は、カスタマーサクセスマネージャーに連絡して、特定のエンドポイントに対する認証を有効化してください。Kameleoon は、エンドポイントを保護し、GET または POST リクエストに認証を制限する柔軟なセットアップを提供しています。

レート制限

Data API は、契約上の月間ユニーク訪問者数 (MUV) とリクエスト元の IP アドレス に基づいてレート制限を適用します。アプリケーションがこれらの制限を超えた場合、API は HTTP 429 - “Too Many Requests” 応答を返します。 これらのレート制限は、すべての顧客に対して Kameleoon サービスが安定して高いパフォーマンスを保つために設けられています。 サーバーサイドのソースの場合、認証 を行うことで IP ベースの制限を解除できます。
リクエストタイプすべてのリクエストに適用される制限未認証リクエストのみに適用される追加制限
GET リクエスト顧客アカウントあたり 1 分間に (500,000 + MUV 数) / 500 リクエストIP あたり 1 分間に 120 リクエスト
その他の HTTP メソッド顧客アカウントあたり 1 分間に (500,000 + MUV 数) / 50 リクエスト(メソッド単位)IP あたり 1 分間に 1,200 リクエスト(メソッド単位)
ユースケースで上記より高いレート制限が必要な場合は、アカウントマネージャーにお問い合わせください。