Skip to main content
GET
エージェントの出力分析(コード行数)を取得
これは v2 エンドポイント です。リクエストボディでサービスキーを渡す v1 Analytics API とは異なり、Bearer トークン認証とクエリパラメーターを使用します。詳しくは下記の認証を参照してください。
このエンドポイントは、リアルタイムでの使用量監視を目的としたものではありません。データは1時間単位で集計され、 レート制限も厳しく設定されています (Team ごとに1時間あたり10リクエスト) 。定期的なレポート作成や一括エクスポートに利用してください。

認証

このエンドポイントでは Bearer トークン 認証を利用します。Authorization ヘッダーにトークンを含めてください。
Use Local Analytics API 権限を持つ Devin サービスユーザーの APIキー、または Analytics Read 権限を持つ Windsurf サービスキーのいずれかを利用してください。それぞれの作成方法については、 認証を 参照してください。

メトリクス

metric クエリパラメーターは必須で、返すメトリクスをカンマ区切りのリストで指定します。 リクエストした各メトリクスは、すべての行に整数フィールドとして含まれます。 たとえば、?metric=loc_inserted,loc_deleted は両方を返し、?metric=loc_inserted は loc_inserted のみを返します。metric を指定しないリクエスト、または不明なメトリクスを指定したリクエストは 400 エラーになります。 行数は、Devin Desktop または Devin CLI でユーザーがエージェントの編集を採用した時点でカウントされます (モデルの種類は問いません) 。product パラメータも必須で、現在指定できる値は agent のみです。

グループ化と時間粒度

granularity と group_by を利用して、返されるデータの構造を制御します。
  • 時間粒度もグループ化も指定しない場合 — 期間全体を集計した 1 行を返します
  • granularity=daily — 各行に YYYY-MM-DD 形式の timestamp が含まれます
  • granularity=monthly — 各行に YYYY-MM 形式の timestamp が含まれます
  • group_by=user — 各行に user_id と user_email が含まれます
  • group_by=session — 各行に session_id (その行が採用された Devin Desktop の会話または CLI セッション) が含まれます
  • group_by=model_uid — 各行に model_uid が含まれます
  • group_by=ide — 各行に ide が含まれます
  • group_by=ide,ide_version — 各行に ide と ide_version が含まれます (ide_version でグループ化する場合は、ide も指定する必要があります)
  • group_by=os — 各行に os (darwin (macOS) 、windows、linux など) が含まれます
  • group_by=source — 各行に source が含まれます。Devin Desktop で採用された行は CASCADE_CLIENT、Devin CLI (他のエディタ内でエージェントとして動作する CLI を含む) で採用された行は CHISEL になります
ディメンションは組み合わせて指定できます (例: group_by=user,source,model_uid) 。Get Consumption と同じ models、 group_id、user_id のフィルターも 適用されます。

ページネーション

結果はページ分割して返され、デフォルトのページサイズは 1,000 行 (最大 10,000 行) です。取得できる結果がさらにある場合は、 レスポンスの pagination オブジェクトに next_page_cursor が含まれます。次のページを取得するには、この値を page_cursor クエリ パラメーターとして渡し、元のリクエストと同じ metric リストを指定してください。カーソルは、発行元の エンドポイントとメトリクスに紐付けられています。/consumption から発行されたカーソルや、別の metric リストに対して発行されたカーソルを使用すると、400 エラーで拒否されます。 ページカーソルの有効期限は 24 時間です。後続ページのリクエストは新しいクエリとして扱われず、レート制限にはカウントされません。

レート制限

このエンドポイントには、Team ごとに 1 時間あたり 10 リクエスト のレート制限があります。この制限を超えると、 サーバーは Retry-After ヘッダー付きで 429 Too Many Requests を返します。 以前のクエリのページネーション (next_page_cursor を使った後続ページの取得) は、この制限にカウントされません。 カウントされるのは、各レポートの最初のクエリのみです。制限値が低く設定されているのは、このエンドポイントが リアルタイムの使用量監視ではなく、定期的なレポート作成を目的としているためです。

承認

Authorization
string
header
必須

Authorization ヘッダーで Bearer トークンとして渡す、Analytics Read 権限を持つサービスキー。

サービスキーは、チーム設定 の「Service Keys」セクションで作成します。

クエリパラメータ

metric
string
必須

返す出力メトリクスをカンマ区切りで指定します。各メトリクスは、各行にフィールドとして含まれます。対応するメトリクス:

  • loc_inserted — エージェントによる行の挿入をユーザーが採用した行数
  • loc_deleted — エージェントによる行の削除をユーザーが採用した行数
start_date
string<date>
必須

日付範囲の開始日(当日を含む)。YYYY-MM-DD 形式で指定します。

end_date
string<date>
必須

日付範囲の終了日(当日を含む)。YYYY-MM-DD 形式で指定します。範囲は90日以内にする必要があります。

product
enum<string>
必須

出力をクエリする対象の製品。

利用可能なオプション:
agent
granularity
enum<string>

結果をグループ化する際の時間粒度です。指定すると、各行に timestamp フィールドが含まれます。 省略すると、指定した日付範囲全体で結果が集計されます。

利用可能なオプション:
daily,
monthly
group_by
string

結果をグループ化するディメンションをカンマ区切りで指定します。対応するディメンション:

  • user — 各行に user_id と user_email が含まれます
  • session — 各行に session_id が含まれます
  • model_uid — 各行に model_uid が含まれます
  • ide — 各行に ide が含まれます
  • ide_version — 各行に ide_version が含まれます。ide も指定する必要があります
  • os — 各行に os が含まれます
  • source — 各行に source が含まれます(Devin Desktop は CASCADE_CLIENT、Devin CLI は CHISEL)
models
string

結果の絞り込みに使用するモデルUIDのカンマ区切りリスト。

group_id
string

特定のグループに属するユーザーに結果を絞り込みます。サービスキーには、このグループへのアクセス権が必要です。Devin サービスユーザーのAPIキーでは利用できません。

user_id
string

特定のユーザー(認証UID)に結果を絞り込みます。

page_size
integer
デフォルト:1000

1ページあたりに返す行数の上限。

必須範囲: 1 <= x <= 10000
page_cursor
string

次のページを取得するための不透明なカーソルです。前のレスポンスの pagination.next_page_cursor の値を指定します。カーソルを発行したリクエストと同じ metric リストを渡してください。他のエンドポイントや異なる metric リストに対して発行されたカーソルは拒否されます。

レスポンス

出力データが正常に返されました。

data
object[]
必須

出力データの行を格納した配列。

pagination
object
必須
metadata
object
必須