POST でクエリを登録すると、すぐに request_id が返されます。クエリはバックグラウンドで実行されるため、その後ステータスをポーリングして結果を取得します。
エンドポイント
Analytics Query API には、以下のエンドポイントが含まれます。- Register a Behavior Query: Behavior 分析を実行します。
- Register a Funnels Query: Funnels 分析を実行します。
- Register a Retention Query: Retention 分析を実行します。
- Register a Session-Source Query: Session/Source 分析を実行します。
- Register a User Analysis Query: User Property Analysis を実行します。
- Get Query Status: 登録済みクエリの実行ステータスを確認します。
- Get Query Results: 完了したクエリの結果を取得します。
一般的なワークフロー
各分析は、送信、ポーリング、取得という同じ手順で進みます。1
クエリを送信する
いずれかの分析エンドポイント(例: Register a Behavior Query)を呼び出します。レスポンスには分析の
type がそのまま返され、request_id も返されます。2
ステータスをポーリングする
その
request_id を指定して Get Query Status を呼び出します。status が PENDING または PROCESSING の間はクエリが実行中のため、最終ステータスである SUCCESSFUL または FAILED になるまでポーリングを続けます。クエリが失敗した場合、レスポンスには failure_reason も返されます。3
結果を取得する
同じ
request_id を指定して Get Query Results を呼び出し、結果を取得します。data 配列の形式は分析タイプによって異なります。よくある質問
クエリの完了にはどのくらい時間がかかりますか?
クエリの完了にはどのくらい時間がかかりますか?
完了までの時間は、期間、イベント数、スキャンされるデータ量によって異なります。ステータスが
SUCCESSFUL になるまで Get Query Status をポーリングし、その後結果を取得してください。短いループでポーリングすることは避け、呼び出しの間に少し間隔を空けてください。同じ request_id でクエリを再実行できますか?
同じ request_id でクエリを再実行できますか?
いいえ。
request_id は 1 回のクエリ実行を識別するものです。分析を再度実行するには、新しいクエリを登録し、新しい request_id を使用してください。クエリで 428 が返されたのはなぜですか?
クエリで 428 が返されたのはなぜですか?
428 は、ワークスペースが Analytics 利用に関する月間の Fair Usage Policy(FUP)上限に達したことを意味します。請求サイクルの残り期間中、Analytics クエリはブロックされます。クォータを拡張するには、カスタマーサクセスマネージャーにお問い合わせください。Get Query Results がクエリごとに異なるフィールドを返すのはなぜですか?
Get Query Results がクエリごとに異なるフィールドを返すのはなぜですか?
返される行は、クエリが登録された分析タイプによって異なります。Behavior、Funnels、Retention、Session/Source、User Analysis は、それぞれ共通フィールドに加えて独自のフィールドを追加します。各行は柔軟なキーのセットとして扱ってください。各形式の例については、Get Query Results を参照してください。
クエリが 400 で検証エラーになったのはなぜですか?
クエリが 400 で検証エラーになったのはなぜですか?
各分析では、1 つのクエリに含めることができるイベント、セグメント、ブレークダウンの数に制限があります。エラーメッセージには、失敗したフィールドの名前が示されます。エンドポイントページでそのフィールドの説明を確認し、使用可能な値と制限を確認してください。
API が返すデータはダッシュボードと比べてどう違いますか?
API が返すデータはダッシュボードと比べてどう違いますか?
これらのエンドポイントは、MoEngage ダッシュボードの Analyze セクションと同じ分析を、認証されたワークスペースの範囲で実行します。新しいクエリを実行する代わりに保存済みのダッシュボードチャートからデータを読み取るには、Custom Dashboards API を使用してください。