正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。

プロダクト分析API

  • プラン: Ultimate
  • 提供形態: GitLab.com、GitLab Self-Managed
  • ステータス: ベータ版

この機能の利用可否は、機能フラグによって制御されます。詳細については、履歴を参照してください。この機能は本番環境での使用には対応していません。

このAPIを使用して、ユーザーの行動とアプリケーションの使用状況を追跡します。

最初にAPIを使用して、cube_api_base_urlcube_api_keyのアプリケーション設定を定義してください。

Cubeクエリリクエストを作成する

Cube APIへのクエリリクエストを作成し、アクセストークンを生成します。

POST /projects/:id/product_analytics/request/load
POST /projects/:id/product_analytics/request/dry-run
属性必須説明
id整数はい現在のユーザーが読み取りアクセス権を持つプロジェクトのID。
include_tokenブール値いいえアクセストークンをレスポンスに含めるかどうか。(ファネル生成にのみ必要です。)

リクエスト本文

読み込みリクエストの本文は、有効なCubeクエリである必要があります。

TrackedEventsを測定する場合、dimensionstimeDimensionsにはTrackedEvents.*を使用する必要があります。Sessionsを測定する場合も同じルールが適用されます。

追跡されたイベントの例

{
  "query": {
    "measures": [
      "TrackedEvents.count"
    ],
    "timeDimensions": [
      {
        "dimension": "TrackedEvents.utcTime",
        "dateRange": "This week"
      }
    ],
    "order": [
      [
        "TrackedEvents.count",
        "desc"
      ],
      [
        "TrackedEvents.docPath",
        "desc"
      ],
      [
        "TrackedEvents.utcTime",
        "asc"
      ]
    ],
    "dimensions": [
      "TrackedEvents.docPath"
    ],
    "limit": 23
  },
  "queryType": "multi"
}

セッションの例

{
  "query": {
    "measures": [
      "Sessions.count"
    ],
    "timeDimensions": [
      {
        "dimension": "Sessions.startAt",
        "granularity": "day"
      }
    ],
    "order": {
      "Sessions.startAt": "asc"
    },
    "limit": 100
  },
  "queryType": "multi"
}

Cubeメタデータを取得する

分析データ用のCubeメタデータを取得します。

GET /projects/:id/product_analytics/request/meta
属性必須説明
id整数はい現在のユーザーが読み取りアクセス権を持つプロジェクトのID。