メインコンテンツへスキップ

Documentation Index

Fetch the complete documentation index at: https://docs.qoder.com/llms.txt

Use this file to discover all available pages before exploring further.

このドキュメントについて

AI コード指標(集計統計)と AI コード追跡(詳細および CSV エクスポート)。セクションによりページネーション方式が異なります。事前に API キーの取得 を完了し、共通仕様 を参照してください。

前提条件

  • 組織に紐づく有効な API キー(Authorization: Bearer <api_key>)。

概要

AI コード指標 API は、組織レベルの AI アシストコーディング統計を提供します。コード統計概要、日次トレンド、メンバーランキング、リポジトリ一覧、ファイル拡張子統計を含みます。

主な機能

  • 統計概要: コミットコードにおける AI 貢献の総量とシェア
  • 日次トレンド: AI コードシェアの日次推移、Agent コードの言語別統計、Tab 補完受入率
  • メンバーランキング: AI コード貢献量によるメンバーランキング
  • リポジトリ一覧: AI コードアクティビティのあるリポジトリの一覧
  • ファイル拡張子: ファイルタイプ別の AI コード指標
  • コミット詳細: コミットレベルの AI コード帰属詳細の取得(ファイルレベルの行範囲アノテーション)

共通クエリパラメータ

以下のパラメータはすべての AI Code エンドポイントに適用されます(必須状況は各エンドポイントを参照):
パラメータ説明
start_datestring開始時間;RFC 3339 形式または Unix ミリ秒タイムスタンプ
end_datestring終了時間;RFC 3339 形式または Unix ミリ秒タイムスタンプ
repo_namestringリポジトリ名でフィルタ
primary_branch_onlystringtrue に設定するとプライマリブランチのみを集計
user_idstringユーザー ID でフィルタ
file_extensionsstringファイル拡張子でフィルタ、カンマ区切り(例:.go,.ts

API 一覧

1. AI コード統計概要取得

GET /v1/organizations/{organization_id}/ai-code/stats/overview 組織の AI コード全体統計を取得します。

パスパラメータ

パラメータ必須説明
organization_idstringはい組織 ID

クエリパラメータ

「共通クエリパラメータ」を参照。特に:
パラメータ必須説明
start_dateはい開始時間
end_dateはい終了時間
start_dateend_date は両方必須で、期間は 90 日以内である必要があります。

成功レスポンス(200 OK)

{
  "committedTotalLinesEdit": 50000,
  "committedAiLinesEdit": 15000,
  "acceptedLinesEdit": 18000,
  "aiShareRate": 30.0,
  "agentEditCount": 1200,
  "tabCompletionCount": 5600,
  "messageCount": 3400
}

レスポンスフィールド

フィールド説明
committedTotalLinesEditint64コミット済みコード総編集行数(追加 + 削除)
committedAiLinesEditint64コミット済みコード中の AI 編集行数(追加 + 削除)
acceptedLinesEditint64受け入れ済み AI 編集行数(追加 + 削除)
aiShareRatefloat64AI コードシェア(パーセンテージ)
agentEditCountint64Agent 編集回数
tabCompletionCountint64Tab 補完回数
messageCountint64チャットメッセージ数

2. AI コード日次トレンド取得

GET /v1/organizations/{organization_id}/ai-code/stats/daily-trend AI コードの日次トレンドデータを取得します。3 つのデータセット:AI コードシェアトレンド、言語分布トレンド、Tab 補完受入率トレンドを含みます。

パスパラメータ

パラメータ必須説明
organization_idstringはい組織 ID

クエリパラメータ

「共通クエリパラメータ」を参照。特に:
パラメータ必須説明
start_dateはい開始時間
end_dateはい終了時間
start_dateend_date は両方必須で、期間は 90 日以内である必要があります。

成功レスポンス(200 OK)

{
  "items": [
    {
      "date": "2025-06-01T00:00:00Z",
      "aiLinesAdded": 500,
      "otherLinesAdded": 1500,
      "aiShareRate": 25.0,
      "commitCount": 30
    }
  ],
  "extItems": [
    {
      "date": "2025-06-01T00:00:00Z",
      "fileExtension": ".go",
      "totalLinesAdded": 800,
      "aiLinesAdded": 300
    }
  ],
  "nextItems": [
    {
      "date": "2025-06-01T00:00:00Z",
      "nextSuggestedCount": 200,
      "nextAcceptedCount": 120,
      "nextAcceptRate": 60.0
    }
  ]
}

レスポンスフィールド

items[] — AI コードシェアトレンド(Chart 1)
フィールド説明
datestring日付(ISO 8601)
aiLinesAddedint64AI 追加行数
otherLinesAddedint64非 AI 追加行数
aiShareRatefloat64AI コードシェア(パーセンテージ)
commitCountint64コミット数
extItems[] — Agent コード言語別分布トレンド(Chart 2)
フィールド説明
datestring日付(ISO 8601)
fileExtensionstringファイル拡張子
totalLinesAddedint64総追加行数
aiLinesAddedint64AI 追加行数
nextItems[] — Tab 補完受入率トレンド(Chart 3)
フィールド説明
datestring日付(ISO 8601)
nextSuggestedCountint64提案回数
nextAcceptedCountint64受入回数
nextAcceptRatefloat64受入率(パーセンテージ)

3. メンバー AI コードランキング取得

GET /v1/organizations/{organization_id}/ai-code/stats/member-ranking AI コード貢献量による組織メンバーのランキングを取得します。

パスパラメータ

パラメータ必須説明
organization_idstringはい組織 ID

クエリパラメータ

「共通クエリパラメータ」を参照。特に:
パラメータ必須説明
start_dateはい開始時間
end_dateはい終了時間
start_dateend_date は両方必須で、期間は 90 日以内である必要があります。
追加サポート:
パラメータ必須デフォルト説明
limitintegerいいえ10返す最大メンバー数

成功レスポンス(200 OK)

{
  "items": [
    {
      "userId": "user_abc123",
      "email": "alice@example.com",
      "displayName": "Alice",
      "totalLinesAdded": 5000,
      "aiLinesAdded": 2000,
      "aiShareRate": 40.0,
      "commitCount": 50
    }
  ]
}

レスポンスフィールド

フィールド説明
itemsarrayメンバーランキングリスト
items[].userIdstringユーザー ID
items[].emailstringメンバーメール(空の場合あり)
items[].displayNamestring表示名(空の場合あり)
items[].totalLinesAddedint64総追加行数
items[].aiLinesAddedint64AI 追加行数
items[].aiShareRatefloat64AI コードシェア(パーセンテージ)
items[].commitCountint64コミット数

4. リポジトリ一覧

GET /v1/organizations/{organization_id}/ai-code/repos 組織内の AI コードアクティビティのあるリポジトリを一覧表示します。

パスパラメータ

パラメータ必須説明
organization_idstringはい組織 ID

クエリパラメータ

パラメータ必須デフォルト説明
start_datestringいいえ開始時間
end_datestringいいえ終了時間
querystringいいえリポジトリ名で検索
pageintegerいいえ1ページ番号(1 から開始)
per_pageintegerいいえ301ページあたりの件数、最大 100

成功レスポンス(200 OK)

{
  "repos": [
    {
      "repoName": "my-project",
      "commitCount": 120,
      "totalLinesAdded": 8000
    }
  ],
  "totalCount": 42,
  "page": 1,
  "perPage": 30
}

レスポンスフィールド

フィールド説明
reposarrayリポジトリリスト
repos[].repoNamestringリポジトリ名
repos[].commitCountint64コミット数
repos[].totalLinesAddedint64総追加行数
totalCountint32総リポジトリ数
pageint32現在のページ番号
perPageint321ページあたりの件数

5. ファイル拡張子一覧

GET /v1/organizations/{organization_id}/ai-code/file-extensions 組織内の AI コードアクティビティのファイル拡張子統計を一覧表示します。

パスパラメータ

パラメータ必須説明
organization_idstringはい組織 ID

クエリパラメータ

パラメータ必須説明
start_datestringいいえ開始時間
end_datestringいいえ終了時間

成功レスポンス(200 OK)

{
  "fileExtensions": [
    {
      "extension": ".go",
      "changeCount": 500,
      "totalLinesAdded": 12000,
      "aiShareRate": 35.5
    }
  ]
}

レスポンスフィールド

フィールド説明
fileExtensionsarrayファイル拡張子リスト
fileExtensions[].extensionstringファイル拡張子
fileExtensions[].changeCountint64変更回数
fileExtensions[].totalLinesAddedint64総追加行数
fileExtensions[].aiShareRatefloat64AI コードシェア(パーセンテージ)

6. コミット AI 帰属詳細取得

POST /v1/organizations/{organization_id}/ai-code-tracking/commits/detail コミットレベルの AI コード帰属詳細を一括取得します。ファイルレベルの行範囲アノテーションを含みます。

パスパラメータ

パラメータ必須説明
organization_idstringはい組織 ID

リクエストボディ(JSON)

フィールド必須説明
commitHashesstring[]はいコミットハッシュリスト(最大 50)
branchstringいいえブランチ名(クエリ範囲の制限用)

リクエスト例

{
  "commitHashes": ["abc123def456", "789ghi012jkl"],
  "branch": "main"
}

成功レスポンス(200 OK)

{
  "success": true,
  "data": {
    "commits": [
      {
        "commitHash": "abc123def456",
        "rangeAnnotations": [
          {
            "filePath": "src/main.go",
            "groups": [
              {
                "conversationId": "session-001",
                "source": "AGENT",
                "productType": "ide",
                "type": "added",
                "ranges": [
                  { "start": 47, "end": 48 },
                  { "start": 55, "end": 60 }
                ]
              }
            ]
          }
        ]
      },
      {
        "commitHash": "789ghi012jkl",

        "rangeAnnotations": [ ]

      }
    ]
  }
}

レスポンスフィールド

フィールド説明
successbooleanリクエストが成功したかどうか
data.commitsarrayコミット詳細リスト(リクエスト順序を保持)
data.commits[].commitHashstringコミットハッシュ
data.commits[].rangeAnnotationsarrayファイルレベル AI 帰属アノテーション
data.commits[].rangeAnnotations[].filePathstringファイルパス
data.commits[].rangeAnnotations[].groupsarrayAI セッション貢献グループ
data.commits[].rangeAnnotations[].groups[].conversationIdstringAI セッション ID
data.commits[].rangeAnnotations[].groups[].sourcestringソース:AGENTNEXTQUESTINLINECHAT
data.commits[].rangeAnnotations[].groups[].productTypestringプロダクトタイプ(小文字、例:ide
data.commits[].rangeAnnotations[].groups[].typestringタイプ:added(追加)、deleted(削除)
data.commits[].rangeAnnotations[].groups[].rangesarray行範囲リスト
data.commits[].rangeAnnotations[].groups[].ranges[].startint32開始行番号
data.commits[].rangeAnnotations[].groups[].ranges[].endint32終了行番号

使用例

統計概要取得

curl -X GET "https://api.qoder.com/v1/organizations/org_xxx/ai-code/stats/overview?start_date=2025-06-01T00:00:00Z&end_date=2025-06-30T23:59:59Z" \
  -H "Authorization: Bearer <api_key>"

日次トレンド取得(リポジトリ指定、プライマリブランチ)

curl -X GET "https://api.qoder.com/v1/organizations/org_xxx/ai-code/stats/daily-trend?start_date=2025-06-01T00:00:00Z&end_date=2025-06-30T23:59:59Z&repo_name=my-project&primary_branch_only=true" \
  -H "Authorization: Bearer <api_key>"

メンバーランキング取得(上位 20)

curl -X GET "https://api.qoder.com/v1/organizations/org_xxx/ai-code/stats/member-ranking?start_date=2025-06-01T00:00:00Z&end_date=2025-06-30T23:59:59Z&limit=20" \
  -H "Authorization: Bearer <api_key>"

リポジトリ検索

curl -X GET "https://api.qoder.com/v1/organizations/org_xxx/ai-code/repos?query=my-project" \
  -H "Authorization: Bearer <api_key>"

ファイル拡張子統計取得

curl -X GET "https://api.qoder.com/v1/organizations/org_xxx/ai-code/file-extensions?start_date=2025-06-01T00:00:00Z" \
  -H "Authorization: Bearer <api_key>"

コミット AI 帰属詳細取得

curl -X POST "https://api.qoder.com/v1/organizations/org_xxx/ai-code-tracking/commits/detail" \
  -H "Authorization: Bearer <api_key>" \
  -H "Content-Type: application/json" \
  -d '{"commitHashes": ["abc123def456", "789ghi012jkl"], "branch": "main"}'

エラーコード

エラーコードHTTP ステータス説明
BadRequest400リクエストパラメータが無効(例:start_date / end_date 欠落、期間が 90 日超過、commitHashes が空または 50 件超過)
Unauthorized401API キーが欠落または無効
Forbidden403この組織へのアクセス権限なし
InternalError500サーバー内部エラー
エラーレスポンスの形式は 共通仕様エラーレスポンス を参照してください。

AI コード追跡 API

AI コード指標(集計統計)に加え、このセクションでは コミット / チェンジ レベルの詳細クエリと CSV エクスポート を提供します。認証は同じ:Authorization: Bearer <api_key> 使用前に、組織がコンソールと同じ AI コードデータ分析 機能を有効にしていることを確認してください。未有効化またはアクセス権限がない場合、API は 403 等のエラーを返す可能性があります。実際のレスポンスを参照してください。フィールドと列挙値は ライブ API と OpenAPI 定義 に基づきます。本ドキュメントは参考用です。

追跡機能

AI コード追跡 API は、コミットレベルとチェンジレベルの明細クエリおよび CSV エクスポート機能を提供し、上記の AI コード指標(集計統計)を補完します。

2 層データモデル

レイヤー意味ソース利用可能なフィルタディメンション
CommitGit コミットコードリポジトリ(リモートにプッシュ済み)時間、ユーザー、リポジトリ
ChangeIDE 内の AI コード編集イベントIDE クライアントからの報告(まだ Git コミットになっていない)時間、ユーザー、ソース
Change はまだ Git コミットされていない IDE 内イベントであるため、repoName / branchName ディメンションを持ちません。

プロダクト × シナリオ分解(コミットレベル)

各コミットレコードには 12 ペアlinesAdded / linesDeleted カラムが含まれ、「プロダクト × シナリオ」で分解されます:
フィールドプレフィックスプロダクトシナリオ
ideNextIDE(VS Code)Tab 補完(next)
pluginNextJetBrains プラグインTab 補完(next)
ideAgentIDE(VS Code)Agent
pluginAgentJetBrains プラグインAgent
cliAgentCLIAgent
ideQuestIDE(VS Code)Quest
ideInlineChatIDE(VS Code)Inline Chat
jbInlineChatJetBrains プラグインInline Chat
nonAi非 AI 行(帰属不可)

主な機能

  • コミット明細クエリ: コミットレベルの AI コード統計を一覧表示(プロダクト × シナリオ分解付き)
  • コミット CSV エクスポート: 全コミットデータをストリーミングエクスポート
  • チェンジ明細クエリ: IDE 内 AI コード編集イベントを一覧表示(source でフィルタ可能)
  • チェンジ CSV エクスポート: 全チェンジデータをストリーミングエクスポート
  • ユーザーメール: リストとエクスポートでは利用可能な場合 userEmail を付加
  • メールでフィルタ: userEmail クエリパラメータでユーザーを特定可能

ページネーション

追跡 API はオフセットベースのページネーションpage + pageSize)を使用し、他のエンドポイントで一般的なカーソルベースのページネーションとは異なります。レスポンスには totalItems / totalPages が含まれ、ページネーション表示に便利です。

共通クエリパラメータ

以下のパラメータはすべての Tracking エンドポイントに適用されます:
パラメータ必須デフォルト説明
startDatestringいいえ開始時間;RFC 3339 形式または Unix ミリ秒タイムスタンプ。未指定時はサーバーがプロダクトポリシーにより照会可能範囲を制約(例:最大約 90 日)。実際の動作に準拠
endDatestringいいえ現在時刻終了時間;RFC 3339 形式または Unix ミリ秒タイムスタンプ
userIdstringいいえユーザー UUID でフィルタ
userEmailstringいいえユーザーメールでフィルタ(サーバーが対応するユーザー識別子に解決)
pageintegerいいえ1ページ番号(1 から開始)
pageSizeintegerいいえ1001ページあたりの件数、最大 200
userIduserEmail の両方が指定された場合、userId が優先されます。

API 一覧

1. コミット明細一覧

GET /v1/organizations/{organization_id}/ai-code-tracking/commits コミットレベルの AI コード統計をレコードごとに一覧表示し、コミット時間の降順で並べます。各レコードにはプロダクト × シナリオの分解が含まれます。

パスパラメータ

パラメータ必須説明
organization_idstringはい組織 ID

クエリパラメータ

「共通クエリパラメータ」を参照。追加:
パラメータ必須説明
repoNamestringいいえリポジトリ名でフィルタ

成功レスポンス(200 OK)

{
  "success": true,
  "data": {
    "items": [
      {
        "commitHash": "a1b2c3d4e5f6",
        "userId": "550e8400-e29b-41d4-a716-446655440000",
        "userEmail": "alice@example.com",
        "repoName": "my-project",
        "branchName": "main",
        "isPrimaryBranch": true,
        "totalLinesAdded": 120,
        "totalLinesDeleted": 30,
        "ideNextLinesAdded": 40,
        "ideNextLinesDeleted": 10,
        "pluginNextLinesAdded": 0,
        "pluginNextLinesDeleted": 0,
        "ideAgentLinesAdded": 50,
        "ideAgentLinesDeleted": 15,
        "pluginAgentLinesAdded": 0,
        "pluginAgentLinesDeleted": 0,
        "cliAgentLinesAdded": 0,
        "cliAgentLinesDeleted": 0,
        "ideQuestLinesAdded": 10,
        "ideQuestLinesDeleted": 0,
        "ideInlineChatLinesAdded": 5,
        "ideInlineChatLinesDeleted": 2,
        "jbInlineChatLinesAdded": 0,
        "jbInlineChatLinesDeleted": 0,
        "nonAiLinesAdded": 15,
        "nonAiLinesDeleted": 3,
        "message": "feat: add user login",
        "commitTs": "2025-06-15T10:30:00Z",
        "createdAt": "2025-06-15T10:35:00Z"
      }
    ],
    "pagination": {
      "currentPage": 1,
      "pageSize": 100,
      "totalItems": 256,
      "totalPages": 3
    }
  }
}

レスポンスフィールド

successtrue はリクエスト成功を示す data.items[] — コミット明細リスト
フィールド説明
commitHashstringGit コミット SHA
userIdstringユーザー UUID
userEmailstringユーザーメール(空の場合あり)
repoNamestringリポジトリ名
branchNamestringブランチ名
isPrimaryBranchbooleanプライマリブランチかどうか
totalLinesAddedinteger総追加行数
totalLinesDeletedinteger総削除行数
ideNextLinesAddedintegerIDE Tab 補完追加行数
ideNextLinesDeletedintegerIDE Tab 補完削除行数
pluginNextLinesAddedintegerJetBrains プラグイン Tab 補完追加行数
pluginNextLinesDeletedintegerJetBrains プラグイン Tab 補完削除行数
ideAgentLinesAddedintegerIDE Agent 追加行数
ideAgentLinesDeletedintegerIDE Agent 削除行数
pluginAgentLinesAddedintegerJetBrains プラグイン Agent 追加行数
pluginAgentLinesDeletedintegerJetBrains プラグイン Agent 削除行数
cliAgentLinesAddedintegerCLI Agent 追加行数
cliAgentLinesDeletedintegerCLI Agent 削除行数
ideQuestLinesAddedintegerIDE Quest 追加行数
ideQuestLinesDeletedintegerIDE Quest 削除行数
ideInlineChatLinesAddedintegerIDE Inline Chat 追加行数
ideInlineChatLinesDeletedintegerIDE Inline Chat 削除行数
jbInlineChatLinesAddedintegerJetBrains Inline Chat 追加行数
jbInlineChatLinesDeletedintegerJetBrains Inline Chat 削除行数
nonAiLinesAddedinteger非 AI 追加行数
nonAiLinesDeletedinteger非 AI 削除行数
messagestringコミットメッセージ(空の場合あり)
commitTsstringコミット時間(ISO 8601)
createdAtstringレコード作成時間(ISO 8601)
data.pagination — ページネーション情報
フィールド説明
currentPageinteger現在のページ番号
pageSizeinteger1ページあたりの件数
totalItemsinteger総レコード数
totalPagesinteger総ページ数

2. コミット CSV エクスポート

GET /v1/organizations/{organization_id}/ai-code-tracking/commits/export コミットデータをストリーミング CSV 形式でエクスポートします。サーバーがページネーション集計を自動処理するため、呼び出し側でのページネーションは不要です。

パスパラメータ

パラメータ必須説明
organization_idstringはい組織 ID

クエリパラメータ

「共通クエリパラメータ」を参照。追加:
パラメータ必須説明
repoNamestringいいえリポジトリ名でフィルタ

成功レスポンス(200 OK)

  • Content-Type: text/csv; charset=utf-8
  • Content-Disposition: attachment; filename="ai-code-commits.csv"
CSV カラムヘッダー(注:CSV は userName を保持、JSON レスポンスでは削除済み):
commitHash,userId,userEmail,userName,repoName,branchName,isPrimaryBranch,
totalLinesAdded,totalLinesDeleted,
ideNextLinesAdded,ideNextLinesDeleted,pluginNextLinesAdded,pluginNextLinesDeleted,
ideAgentLinesAdded,ideAgentLinesDeleted,pluginAgentLinesAdded,pluginAgentLinesDeleted,
cliAgentLinesAdded,cliAgentLinesDeleted,ideQuestLinesAdded,ideQuestLinesDeleted,
ideInlineChatLinesAdded,ideInlineChatLinesDeleted,jbInlineChatLinesAdded,jbInlineChatLinesDeleted,
nonAiLinesAdded,nonAiLinesDeleted,message,commitTs,createdAt

3. チェンジ明細一覧

GET /v1/organizations/{organization_id}/ai-code-tracking/changes IDE 内の AI コード編集イベント(action=suggested レコードのみ)をイベント時間降順で一覧表示します。
Change はまだ Git コミットされていない IDE 内イベントであるため、repoName フィルタはサポートされません

パスパラメータ

パラメータ必須説明
organization_idstringはい組織 ID

クエリパラメータ

「共通クエリパラメータ」を参照。追加:
パラメータ必須説明
sourcestringいいえ利用シナリオでフィルタ。値:AGENTNEXTQUESTINLINECHAT

成功レスポンス(200 OK)

{
  "success": true,
  "data": {
    "items": [
      {
        "changeId": "chg_abc123",
        "userId": "550e8400-e29b-41d4-a716-446655440000",
        "userEmail": "alice@example.com",
        "source": "AGENT",
        "model": "efficient",
        "totalLinesAdded": 45,
        "totalLinesDeleted": 12,
        "metadata": [
          {
            "fileName": "main.go",
            "fileExtension": ".go",
            "linesAdded": 30,
            "linesDeleted": 8
          },
          {
            "fileName": "utils.go",
            "fileExtension": ".go",
            "linesAdded": 15,
            "linesDeleted": 4
          }
        ],
        "createdAt": "2025-06-15T10:28:00Z"
      }
    ],
    "pagination": {
      "currentPage": 1,
      "pageSize": 100,
      "totalItems": 1024,
      "totalPages": 11
    }
  }
}

レスポンスフィールド

successtrue はリクエスト成功を示す data.items[] — チェンジ明細リスト
フィールド説明
changeIdstring変更イベント一意識別子
userIdstringユーザー UUID
userEmailstringユーザーメール(空の場合あり)
sourcestring利用シナリオ(大文字):NEXTAGENTQUESTINLINECHAT
modelstringモデルティア:liteefficientauto(空の場合あり)
totalLinesAddedinteger総追加行数
totalLinesDeletedinteger総削除行数
metadataarrayファイルレベル変更明細(空の場合あり)
metadata[].fileNamestringファイル名
metadata[].fileExtensionstringファイル拡張子
metadata[].linesAddedintegerファイル追加行数
metadata[].linesDeletedintegerファイル削除行数
createdAtstringイベント時間(ISO 8601)
data.pagination — ページネーション情報
フィールド説明
currentPageinteger現在のページ番号
pageSizeinteger1ページあたりの件数
totalItemsinteger総レコード数
totalPagesinteger総ページ数

4. チェンジ CSV エクスポート

GET /v1/organizations/{organization_id}/ai-code-tracking/changes/export チェンジデータをストリーミング CSV 形式でエクスポートします。サーバーがページネーション集計を自動処理するため、呼び出し側でのページネーションは不要です。
CSV エクスポートはフラット形式で、metadata(ファイルレベル明細)は含みません。

パスパラメータ

パラメータ必須説明
organization_idstringはい組織 ID

クエリパラメータ

「共通クエリパラメータ」を参照。追加:
パラメータ必須説明
sourcestringいいえ利用シナリオでフィルタ。値:AGENTNEXTQUESTINLINECHAT

成功レスポンス(200 OK)

  • Content-Type: text/csv; charset=utf-8
  • Content-Disposition: attachment; filename="ai-code-changes.csv"
CSV カラムヘッダー:
changeId,userId,userEmail,source,model,totalLinesAdded,totalLinesDeleted,createdAt

使用例

コミット明細クエリ(リポジトリでフィルタ)

curl -X GET "https://api.qoder.com/v1/organizations/org_xxx/ai-code-tracking/commits?startDate=2025-06-01T00:00:00Z&endDate=2025-06-30T23:59:59Z&repoName=my-project&pageSize=50" \
  -H "Authorization: Bearer <api_key>"

メールでユーザーのコミットをクエリ

curl -X GET "https://api.qoder.com/v1/organizations/org_xxx/ai-code-tracking/commits?startDate=2025-06-01T00:00:00Z&userEmail=alice@example.com" \
  -H "Authorization: Bearer <api_key>"

コミット CSV エクスポート

curl -X GET "https://api.qoder.com/v1/organizations/org_xxx/ai-code-tracking/commits/export?startDate=2025-06-01T00:00:00Z" \
  -H "Authorization: Bearer <api_key>" \
  -o ai-code-commits.csv

チェンジ明細クエリ(ソースでフィルタ)

curl -X GET "https://api.qoder.com/v1/organizations/org_xxx/ai-code-tracking/changes?startDate=2025-06-01T00:00:00Z&source=QUEST&pageSize=50" \
  -H "Authorization: Bearer <api_key>"

チェンジ CSV エクスポート

curl -X GET "https://api.qoder.com/v1/organizations/org_xxx/ai-code-tracking/changes/export?startDate=2025-06-01T00:00:00Z" \
  -H "Authorization: Bearer <api_key>" \
  -o ai-code-changes.csv

エラーコード

エラーコードHTTP ステータス説明
Unauthorized401API キーが欠落または無効
Forbidden403この組織へのアクセス権限なし
BadRequest400リクエストパラメータが無効(例:organization_id / userId が有効な UUID でない)
InternalError500サーバー内部エラー
エラーレスポンスの形式は 共通仕様エラーレスポンス を参照してください。