JetBrains Central Console eap Help

API v1

Version 1 (v1) of the Analytics API provides programmatic access to the AI usage data for your organization. Use it to retrieve metrics on AI adoption, activity, credits consumption, and other metrics that may be relevant across your teams and tools.

The following groups of endpoints are available:

  • AI adoption and usage: Number of users who have AI enabled and active, quota consumption over time, and data on users who have hit their usage limits.

  • AI activity and impact: Data related to shown and accepted code suggestions and AI invocations.

  • AI credits consumption: AI credits consumption data for users in the organization.

  • Code provenance: Lines of code and estimated time saved attributable to AI.

API reference

AI adoption and usage

Get AI adoption metrics by date

/api/v1/adoption/users-adoption/group-by/date

Get AI adoption and usage data for the specified date range, grouped by date. The returned data includes both metrics by day and total numbers for the date range. Filters for userIds, userEmails, and ide are applied together (the API returns only records that match all criteria).

Request parameters
GET https://api.jetbrains.cloud/metrics/api/v1/adoption/users-adoption/group-by/date ?fromDate=2026-02-01 &toDate=2026-03-31 &groupBy=month Accept: application/json Authorization: Bearer <ACCESS_TOKEN>
curl "https://api.jetbrains.cloud/metrics/api/v1/adoption/users-adoption/group-by/date\ ?fromDate=2026-02-01\ &toDate=2026-03-31\ &groupBy=month" \ -H "Accept: application/json" \ -H "Authorization: Bearer <ACCESS_TOKEN>"
Responses
{ "items": [ { "enabled": 141, "active": 135, "date": "2026-02-01" }, { "enabled": 155, "active": 140, "date": "2026-03-01" } ], "totalEnabled": 182, "totalActive": 170 }

Get quota consumption metrics by date

/api/v1/adoption/quota-consumption/group-by/date

Get quota consumption data for the specified date range, grouped by date. The consumption information includes both built-in quota and top-up AI credits. Filters for tool, userIds, userEmails, and ide are applied together (the API returns only records that match all criteria).

Request parameters
GET https://api.jetbrains.cloud/metrics/api/v1/adoption/quota-consumption/group-by/date ?fromDate=2026-02-01 &toDate=2026-03-31 &tool=aia &groupBy=month Accept: application/json Authorization: Bearer <ACCESS_TOKEN>
curl "https://api.jetbrains.cloud/metrics/api/v1/adoption/quota-consumption/group-by/date\ ?fromDate=2026-02-01\ &toDate=2026-03-31\ &tool=aia\ &groupBy=month" \ -H "Accept: application/json" \ -H "Authorization: Bearer <ACCESS_TOKEN>"
Responses
{ "items": [ { "limit": 498543.88, "topup": 220576.5, "date": "2026-02-01" }, { "limit": 1943776.43, "topup": 831301.57, "date": "2026-03-01" } ], "totalLimit": 2442320.31, "totalTopup": 1051878.07 }

Get limit hit metrics by date

/api/v1/adoption/limit-hits/group-by/date

Get data about the number of users who hit their AI credit limits in the specified date range, grouped by date. Filters for userIds and userEmails are applied together (the API returns only records that match all criteria).

Request parameters
GET https://api.jetbrains.cloud/metrics/api/v1/adoption/limit-hits/group-by/date ?fromDate=2026-03-01 &toDate=2026-04-20 &groupBy=month Accept: application/json Authorization: Bearer <ACCESS_TOKEN>
curl "https://api.jetbrains.cloud/metrics/api/v1/adoption/limit-hits/group-by/date\ ?fromDate=2026-03-01\ &toDate=2026-04-20\ &groupBy=month" \ -H "Accept: application/json" \ -H "Authorization: Bearer <ACCESS_TOKEN>"
Responses
{ "items": [ { "count": 7, "date": "2026-03-01" }, { "count": 6, "date": "2026-04-01" } ], "maximumDaily": 7, "totalHits": 12 }

Get limit hit metrics by date and user

/api/v1/adoption/limit-hits/group-by/date-user.cursor

Get a cursor-paginated list of limit hits for each date and user within a specified date range. When sortKey is date (default), sorting is done by date first, then by user ID. When sortKey is email or userName, sorting is done by user email or username first, then by date. Filters for userIds and userEmails are applied together (the API returns only records that match all criteria).

Request parameters
GET https://api.jetbrains.cloud/metrics/api/v1/adoption/limit-hits/group-by/date-user.cursor ?fromDate=2026-03-01 &toDate=2026-04-20 Accept: application/json Authorization: Bearer <ACCESS_TOKEN>
curl "https://api.jetbrains.cloud/metrics/api/v1/adoption/limit-hits/group-by/date-user.cursor\ ?fromDate=2026-03-01 \ &toDate=2026-04-20" \ -H "Accept: application/json" \ -H "Authorization: Bearer <ACCESS_TOKEN>"
Responses
{ "nextCursor": "2026-03-15,c4d5e6f7-a8b9-0c1d-2e3f-4a5b6c7d8e9f", "items": [ { "date": "2026-03-18", "user": { "id": "b3c4d5e6-f7a8-9b0c-1d2e-3f4a5b6c7d8e", "name": "Emma Novak", "email": "emma.novak@jetbrains.com" } }, { "date": "2026-03-15", "user": { "id": "c4d5e6f7-a8b9-0c1d-2e3f-4a5b6c7d8e9f", "name": "Luca Ferretti", "email": "luca.ferretti@jetbrains.com" } } ] }

Get limit hit metrics by credits consumed

/api/v1/adoption/limit-hits/group-by/credits-date-user.cursor

Get a cursor-paginated list of users who hit their AI credit limits, sorted by the amount of AI credits consumed. The cursor encodes the last seen (creditsUsed, userId) pair. Filters for userIds and userEmails are applied together (the API returns only records that match all criteria). Use this endpoint to identify the consumers who used the most AI credits within the specified date range.

Request parameters
GET https://api.jetbrains.cloud/metrics/api/v1/adoption/limit-hits/group-by/credits-date-user.cursor ?fromDate=2026-03-01 &toDate=2026-04-20 Accept: application/json Authorization: Bearer <ACCESS_TOKEN>
curl "https://api.jetbrains.cloud/metrics/api/v1/adoption/limit-hits/group-by/credits-date-user.cursor\ ?fromDate=2026-03-01\ &toDate=2026-04-20" \ -H "Accept: application/json" \ -H "Authorization: Bearer <ACCESS_TOKEN>"
Responses
{ "nextCursor": "1250.75,b3c4d5e6-f7a8-9b0c-1d2e-3f4a5b6c7d8e", "items": [ { "date": "2026-03-20", "user": { "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "name": "Anna Kowalski", "email": "anna.kowalski@jetbrains.com" }, "creditsUsed": 1482.50 }, { "date": "2026-03-18", "user": { "id": "b3c4d5e6-f7a8-9b0c-1d2e-3f4a5b6c7d8e", "name": "Emma Novak", "email": "emma.novak@jetbrains.com" }, "creditsUsed": 1250.75 } ] }

Get limit hit metrics by principal and date

/api/v1/adoption/limit-hits/group-by/date-principal.cursor

Get a cursor-paginated list of limit hits for each date and principal within a specified date range. When sortKey is date (default), sorting is done by date first, then by principal ID. When sortKey is name, sorting is done by principal name first, then by date. Filters for principalIds and principalType are applied together (the API returns only records that match all criteria).

Request parameters
GET https://api.jetbrains.cloud/metrics/api/v1/adoption/limit-hits/group-by/date-principal.cursor ?fromDate=2026-03-01 &toDate=2026-04-20 &principalType=user Accept: application/json Authorization: Bearer <ACCESS_TOKEN>
curl -X GET "https://api.jetbrains.cloud/metrics/api/v1/adoption/limit-hits/group-by/date-principal.cursor\ ?fromDate=2026-03-01 \ &toDate=2026-04-20 \ &principalType=user" \ -H "Accept: application/json" \ -H "Authorization: Bearer <ACCESS_TOKEN>"
Responses
{ "nextCursor": null, "items": [ { "date": "2026-04-16", "principal": { "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "name": "service-account service-account" } }, { "date": "2026-04-05", "principal": { "id": "b2c3d4e5-f6a7-8901-bcde-f12345678901", "name": "Jane Smith" } } ] }

AI activity and impact

Get total AI activity and impact metrics

/api/v1/effectiveness/totals

Get total AI activity and impact metrics. The metrics include suggested and accepted lines of code, as well as the number of invocations of AI tools. Filters for tool, userIds, userEmails, and ide are applied together (the API returns only records that match all criteria).

Request parameters
GET https://api.jetbrains.cloud/metrics/api/v1/effectiveness/totals ?fromDate=2026-02-01 &toDate=2026-03-31 &tool=junie &ide=idea Accept: application/json Authorization: Bearer <ACCESS_TOKEN>
curl "https://api.jetbrains.cloud/metrics/api/v1/effectiveness/totals\ ?fromDate=2026-02-01\ &toDate=2026-03-31\ &tool=junie\ &ide=idea" \ -H "Accept: application/json" \ -H "Authorization: Bearer <ACCESS_TOKEN>"
Responses
{ "suggested": 77154, "accepted": 49434, "invocations": 25278 }

Get AI activity and impact metrics by date

/api/v1/effectiveness/group-by/date

Get AI activity and impact metrics for the specified date range, grouped by date. The metrics include suggested and accepted lines of code, as well as the number of invocations of AI tools. Filters for tool, userIds, userEmails, and ide are applied together (the API returns only records that match all criteria).

Request parameters
GET https://api.jetbrains.cloud/metrics/api/v1/effectiveness/group-by/date ?fromDate=2025-11-17 &toDate=2025-11-30 &tool=junie &groupBy=week &ide=idea Accept: application/json Authorization: Bearer <ACCESS_TOKEN>
curl "https://api.jetbrains.cloud/metrics/api/v1/effectiveness/group-by/date\ ?fromDate=2025-11-17\ &toDate=2025-11-30\ &tool=junie\ &groupBy=week\ &ide=idea" \ -H "Accept: application/json" \ -H "Authorization: Bearer <ACCESS_TOKEN>"
Responses
{ "totals": { "suggested": 77821, "accepted": 27052, "invocations": 34422 }, "items": [ { "metrics": { "suggested": 41005, "accepted": 14363, "invocations": 17221 }, "date": "2025-11-17" }, { "metrics": { "suggested": 36816, "accepted": 12689, "invocations": 17201 }, "date": "2025-11-24" } ] }

Get AI activity and impact metrics by date and tool

/api/v1/effectiveness/group-by/date-feature

Get a detailed breakdown of AI activity (suggestions, acceptances, and invocations) grouped by both date and specific AI feature such as AI Assistant or Code Completion. Filters for tool, userIds, userEmails, and ide are applied together (the API returns only records that match all criteria).

Request parameters
GET https://api.jetbrains.cloud/metrics/api/v1/effectiveness/group-by/date-feature ?fromDate=2025-11-17 &toDate=2025-11-30 &tool=claude_agent &groupBy=week Accept: application/json Authorization: Bearer <ACCESS_TOKEN>
curl "https://api.jetbrains.cloud/metrics/api/v1/effectiveness/group-by/date-feature\ ?fromDate=2025-11-17\ &toDate=2025-11-30\ &tool=claude_agent\ &groupBy=week" \ -H "Accept: application/json" \ -H "Authorization: Bearer <ACCESS_TOKEN>"
Responses
{ "totals": [ { "feature": "claude_agent", "metrics": { "suggested": 794131, "accepted": 281302, "invocations": 10741 } } ], "items": [ { "tools": [ { "feature": "claude_agent", "metrics": { "suggested": 402533, "accepted": 143956, "invocations": 5622 } } ], "date": "2025-11-17" }, { "tools": [ { "feature": "claude_agent", "metrics": { "suggested": 391598, "accepted": 137346, "invocations": 5119 } } ], "date": "2025-11-24" } ] }

Get AI activity and impact metrics by user

/api/v1/effectiveness/group-by/user.cursor

Get per-user AI activity and impact metrics for the specified date range. Each result item represents one specific combination of: a user, a date, and an AI tool. Filters for tool, userIds, userEmails, and ide are applied together (the API returns only records that match all criteria).

Request parameters
GET https://api.jetbrains.cloud/metrics/api/v1/effectiveness/group-by/user.cursor ?fromDate=2025-11-24 &toDate=2025-11-30 &tool=junie &userIds=1a2b3c4d-5e6f-7485-9607-18293a4b5c6d &cursor=2025-11-28,1a2b3c4d-5e6f-7485-9607-18293a4b5c6d,junie &limit=2 &sortOrder=DESC Accept: application/json Authorization: Bearer <ACCESS_TOKEN>
curl "https://api.jetbrains.cloud/metrics/api/v1/effectiveness/group-by/user.cursor\ ?fromDate=2025-11-24\ &toDate=2025-11-30\ &tool=junie\ &userIds=1a2b3c4d-5e6f-7485-9607-18293a4b5c6d\ &cursor=2025-11-28,1a2b3c4d-5e6f-7485-9607-18293a4b5c6d,junie\ &limit=2\ &sortOrder=DESC" \ -H "Accept: application/json" \ -H "Authorization: Bearer <ACCESS_TOKEN>"
Responses
{ "nextCursor": "2025-11-24,1a2b3c4d-5e6f-7485-9607-18293a4b5c6d,junie", "items": [ { "user": { "id": "1a2b3c4d-5e6f-7485-9607-18293a4b5c6d", "name": "Mike Lee", "email": "mike.lee@jetbrains.com" }, "date": "2025-11-26", "feature": "junie", "metrics": { "suggested": 2595, "accepted": 1150, "invocations": 5 } }, { "user": { "id": "1a2b3c4d-5e6f-7485-9607-18293a4b5c6d", "name": "Mike Lee", "email": "mike.lee@jetbrains.com" }, "date": "2025-11-24", "feature": "junie", "metrics": { "suggested": 2069, "accepted": 1120, "invocations": 26 } } ] }

AI credits consumption

Get AI credits consumption data by user

/api/v1/credits-usage/group-by/user.paged

Get a paginated list of total AI credits consumption for each user within the specified date range. Filters for tool, userIds, userEmails, and ide are applied together (the API returns only records that match all criteria).

Request parameters
GET https://api.jetbrains.cloud/metrics/api/v1/credits-usage/group-by/user.paged ?fromDate=2025-11-17 &toDate=2025-11-30 &tool=junie &userIds=1a2b3c4d-5e6f-7485-9607-18293a4b5c6d,a1b2c3d4-e5f6-4758-6970-8192a3b4c5d6 &page=1 &limit=2 &sortKey=user &sortOrder=DESC Accept: application/json Authorization: Bearer <ACCESS_TOKEN>
curl "https://api.jetbrains.cloud/metrics/api/v1/credits-usage/group-by/user.paged\ ?fromDate=2025-11-17\ &toDate=2025-11-30\ &tool=junie\ &userIds=1a2b3c4d-5e6f-7485-9607-18293a4b5c6d,a1b2c3d4-e5f6-4758-6970-8192a3b4c5d6\ &page=1\ &limit=2\ &sortKey=user\ &sortOrder=DESC" \ -H "Accept: application/json" \ -H "Authorization: Bearer <ACCESS_TOKEN>"
Responses
{ "items": [ { "user": { "id": "1a2b3c4d-5e6f-7485-9607-18293a4b5c6d", "name": "Mike Lee", "email": "mike.lee@jetbrains.com" }, "usage": { "total": 22.39 } }, { "user": { "id": "a1b2c3d4-e5f6-4758-6970-8192a3b4c5d6", "name": "Jess Hoffler", "email": "jess.hoffler@jetbrains.com" }, "usage": { "total": 15.53 } } ], "page": 1, "total": 2 }

Get AI credits consumption data by tool

/api/v1/credits-usage/group-by/tool

Get AI credits usage data grouped by tool for the specified date range. Filters for tool, userIds, userEmails, and ide are applied together (the API returns only records that match all criteria).

Request parameters
GET https://api.jetbrains.cloud/metrics/api/v1/credits-usage/group-by/tool ?fromDate=2025-11-17 &toDate=2025-11-30 &tool=aia &userIds=1a2b3c4d-5e6f-7485-9607-18293a4b5c6d Accept: application/json Authorization: Bearer <ACCESS_TOKEN>
curl "https://api.jetbrains.cloud/metrics/api/v1/credits-usage/group-by/tool\ ?fromDate=2025-11-17\ &toDate=2025-11-30\ &tool=aia\ &userIds=1a2b3c4d-5e6f-7485-9607-18293a4b5c6d" \ -H "Accept: application/json" \ -H "Authorization: Bearer <ACCESS_TOKEN>"
Responses
{ "items": [ { "tool": "aia", "tariff": 177149.31, "topup": 75937.31 } ] }

Get AI credits consumption data by user and tool

/api/v1/credits-usage/group-by/user-tool.paged

Get a paginated list of AI credits consumption data per user and tool. Returns a breakdown of AI credits per tool per user, whereas the /api/v1/credits-usage/group-by/user.paged endpoint returns a single total per user. Filters for tool, userIds, userEmails, and ide are applied together (the API returns only records that match all criteria).

Request parameters
GET https://api.jetbrains.cloud/metrics/api/v1/credits-usage/group-by/user-tool.paged ?fromDate=2025-11-17 &toDate=2025-11-30 &tool=junie &userIds=1a2b3c4d-5e6f-7485-9607-18293a4b5c6d,a1b2c3d4-e5f6-4758-6970-8192a3b4c5d6 &page=1 &limit=2 &sortKey=user &sortOrder=ASC Accept: application/json Authorization: Bearer <ACCESS_TOKEN>
curl "https://api.jetbrains.cloud/metrics/api/v1/credits-usage/group-by/user-tool.paged\ ?fromDate=2025-11-17\ &toDate=2025-11-30\ &tool=junie\ &userIds=1a2b3c4d-5e6f-7485-9607-18293a4b5c6d,a1b2c3d4-e5f6-4758-6970-8192a3b4c5d6\ &page=1\ &limit=2\ &sortKey=user\ &sortOrder=ASC" \ -H "Accept: application/json" \ -H "Authorization: Bearer <ACCESS_TOKEN>"
Responses
{ "items": [ { "user": { "id": "1a2b3c4d-5e6f-7485-9607-18293a4b5c6d", "name": "Mike Lee", "email": "mike.lee@jetbrains.com" }, "items": [ { "tool": "junie", "tariff": 15.98, "topup": 4.64 } ] }, { "user": { "id": "a1b2c3d4-e5f6-4758-6970-8192a3b4c5d6", "name": "Jess Hoffler", "email": "jess.hoffler@jetbrains.com" }, "items": [ { "tool": "junie", "tariff": 11.8, "topup": 4.46 } ] } ], "page": 1, "total": 141 }

Code provenance

Get code provenance metrics by date and feature

/api/v1/code-provenance/group-by/date-feature

Get the number of lines generated by humans or AI tools, and time saved by AI within a specified date range, grouped by date and feature. Filters for feature, userIds, userEmails, and ide are applied together (the API returns only records that match all criteria).

Request parameters
GET https://api.jetbrains.cloud/metrics/api/v1/code-provenance/group-by/date-feature ?fromDate=2026-03-24 &toDate=2026-03-31 &groupBy=week &feature=junie Accept: application/json Authorization: Bearer <ACCESS_TOKEN>
curl "https://api.jetbrains.cloud/metrics/api/v1/code-provenance/group-by/date-feature\ ?fromDate=2026-03-24\ &toDate=2026-03-31\ &groupBy=week\ &feature=junie" \ -H "Accept: application/json" \ -H "Authorization: Bearer <ACCESS_TOKEN>"
Responses
{ "totals": [ { "feature": "junie", "loc": 302221, "timeSavedS": 211556 } ], "items": [ { "date": "2026-03-23", "features": [ { "feature": "junie", "loc": 265595, "timeSavedS": 183946 } ] }, { "date": "2026-03-30", "features": [ { "feature": "junie", "loc": 36626, "timeSavedS": 27610 } ] } ] }

Get total code provenance metrics

/api/v1/code-provenance/totals

Get the total number of lines generated by humans or AI tools, and time saved within a specified date range, grouped by feature. Filters for feature, userIds, userEmails, and ide are applied together (the API returns only records that match all criteria).

Request parameters
GET https://api.jetbrains.cloud/metrics/api/v1/code-provenance/totals ?fromDate=2026-03-01 &toDate=2026-04-01 &feature=aia,junie &ide=idea Accept: application/json Authorization: Bearer <ACCESS_TOKEN>
curl "https://api.jetbrains.cloud/metrics/api/v1/code-provenance/totals\ ?fromDate=2026-03-01\ &toDate=2026-04-01\ &feature=aia,junie\ &ide=idea" \ -H "Accept: application/json" \ -H "Authorization: Bearer <ACCESS_TOKEN>"
Responses
{ "totals": [ { "feature": "aia", "loc": 161313, "timeSavedS": 93705 }, { "feature": "junie", "loc": 164368, "timeSavedS": 99292 } ] }
02 July 2026