Обзор
API Claude Enterprise Analytics предоставляет вашей организации программный доступ к данным об активности, внедрении, использовании и затратах на всех поверхностях Claude в рамках вашей корпоративной организации. Независимо от того, создаёте ли вы внутренние панели мониторинга активности пользователей, отслеживаете внедрение проектов, сверяете расходы с ежемесячным счётом или устанавливаете лимиты расходов, этот API предоставляет необходимые вам метрики.
Агрегация данных
Все данные агрегируются по организации, в день. Каждая конечная точка возвращает снимок для одной указанной даты. Данные за день (N-1) обрабатываются в 10:00:00 UTC в день N и доступны для запроса через три дня после агрегации для обеспечения точности данных.
Если данные недоступны в указанный выше период, это обычно указывает на сбой конвейера данных, который нашей команде потребуется исследовать внутри компании. Мы обычно осведомлены о таких проблемах, но пожалуйста, обратитесь к своему CSM, если вы хотите проверить или подозреваете что-то ещё.
Конечные точки затрат и использования имеют другую модель свежести. Подробности см. в разделе Конечные точки затрат и использования ниже.
Включение доступа
Чтобы создать новые ключи API аналитики, вы должны быть основным владельцем в вашей корпоративной организации. Вы можете сделать это, перейдя на claude.ai/analytics/api-keys.
Вот несколько дополнительных деталей, которые могут быть полезны:
Вы можете включать/отключать доступ к общедоступному API в любое время. Если вы отключите доступ, переключив переключатель, все запросы будут отклонены.
Вам потребуется ключ с областью
read:analyticsдля доступа к API. Вы можете создать несколько ключей для вашей организации, но ограничения скорости применяются на уровне организации, а не на уровне ключа. См. раздел «Ограничение скорости» ниже.Как всегда, мы настоятельно рекомендуем безопасно обрабатывать ключи API: никогда не делитесь этими ключами публично — они являются секретными и должны быть переданы безопасно.
Базовый URL
Все запросы отправляются на:
https://api.anthropic.com/v1/organizations/analytics/
Аутентификация
Каждый запрос требует ключ API, переданный в заголовке x-api-key. Ваш ключ API должен иметь область read:analytics. Вы можете создавать и управлять ключами API из параметров администратора claude.ai в разделе «Ключи API».
Пример заголовков запроса:
x-api-key: $YOUR_API_KEY
Разбиение на страницы
Несколько конечных точек возвращают результаты с разбиением на страницы. Разбиение на страницы использует подход на основе курсора, где ответ включает токен next_page, который вы передаёте обратно в следующем запросе для получения следующей страницы результатов.
Два необязательных параметра управляют разбиением на страницы:
limit (целое число): количество записей на странице. По умолчанию 20 для конечной точки /users и 100 для всех остальных конечных точек. Для конечных точек затрат и использования значения по умолчанию варьируются в зависимости от конечной точки и ширины сегмента — см. Конечные точки затрат и использования ниже. Максимум — 1000.
page (строка): непрозрачный токен курсора из поля next_page предыдущего ответа. Пропустите это в вашем первом запросе.
Когда больше нет результатов, next_page будет null в ответе.
Важно: не изменяйте параметры запроса в середине последовательности на конечных точках затрат и использования. Курсоры привязаны к фильтрам и диапазону дат, которые их выдали. Если вы измените products[], order_by, group_by[], диапазон дат или любой фильтр и передадите старый курсор, вы получите ошибку 400.
Ответы об ошибках
Все конечные точки возвращают стандартные коды ошибок HTTP:
Код | Значение |
400 | Параметр запроса недействителен. Распространённые причины включают недействительную дату, дату до 1/1/26 (первая доступность), дату, которая является сегодня или в будущем, или (на конечных точках затрат и использования) курсор страницы, который не соответствует текущим параметрам запроса. |
401 | Отсутствует или недействителен ключ API (конечные точки затрат и использования). |
404 | Ключ API отсутствует, недействителен или не имеет области |
410 | Курсор страницы больше не действителен. Перезагрузите разбиение на страницы с первой страницы. |
429 | Превышен лимит скорости. Слишком много запросов. |
500 | Внутренняя ошибка (конечные точки затрат и использования). |
504 | Истекло время ожидания запроса. |
Ограничение скорости
У нас есть ограничения скорости по умолчанию, которые применяются ко всем конечным точкам в этом API. Если этого недостаточно для вашего варианта использования, нам бы хотелось понять почему. При необходимости мы можем отрегулировать ограничения скорости для вашей организации — пожалуйста, обратитесь к своему CSM.
Конечные точки активности и внедрения
1. Список активности пользователя
GET /v1/organizations/analytics/users
Возвращает метрики активности для каждого пользователя за один день. Каждый элемент в ответе представляет одного пользователя и включает количество его действий в Claude (чат) и Claude Code.
Параметры запроса
Поле | Тип | Обязательно | Описание |
| строка | Да | Дата для получения метрик в формате YYYY-MM-DD. |
| целое число | Нет | Количество записей на странице (по умолчанию: 20, максимум: 1000). |
| строка | Нет | Токен курсора из поля |
Поля ответа (на пользователя)
Поле | Описание |
| Уникальный идентификатор пользователя. |
| Адрес электронной почты пользователя. |
| Количество отдельных диалогов, в частности в Claude.ai. |
| Общее количество отправленных сообщений, в частности в Claude.ai. |
| Количество созданных отдельных проектов, в частности в Claude.ai. |
| Количество использованных отдельных проектов, в частности в Claude.ai. |
| Количество загруженных отдельных файлов, в частности в Claude.ai. |
| Количество созданных отдельных артефактов, в частности в Claude.ai. |
| Количество просмотренных отдельных общих артефактов, в частности в Claude.ai. |
| Количество сообщений с расширенным размышлением, в частности в Claude.ai. |
| Количество использованных отдельных навыков, в частности в Claude.ai. |
| Общее количество вызванных соединителей, в частности в Claude.ai. |
| Количество просмотренных общих диалогов, в частности в Claude.ai. |
| Количество коммитов git, выполненных через Claude Code. |
| Количество запросов на слияние, созданных через Claude Code. |
| Всего добавлено строк кода. |
| Всего удалено строк кода. |
| Количество отдельных сеансов Claude Code. |
| Количество принятых и отклоненных действий инструмента Edit. |
| Количество принятых и отклоненных действий инструмента Multi-Edit. |
| Количество принятых и отклоненных действий инструмента Write. |
| Количество принятых и отклоненных действий инструмента Notebook Edit. |
| Общее количество вызовов инструмента веб-поиска. Это применяется как к claude.ai, так и к использованию Claude Code в вашей организации. |
Метрики Office Agent (на пользователя)
Каждая запись пользователя также включает объект office_metrics с разбивкой по продуктам для Excel и PowerPoint. Этот блок всегда присутствует в каждой записи — организации без использования Office Agent видят нулевые значения вместо null.
Объект office_metrics содержит два ключа: excel и powerpoint.
Каждый ключ содержит одинаковые шесть полей:
Поле | Описание |
| Количество отдельных сеансов Office Agent. |
| Количество отправленных сообщений (по одному за завершенный ход агента). |
| Общее количество вызовов навыков. Один навык, использованный пять раз, считается пятью. |
| Количество различных использованных навыков. |
| Общее количество вызовов соединителей. Один соединитель, использованный три раза, считается тремя. |
| Количество различных использованных соединителей. |
*Примечание: Где [product] — это один из excel или powerpoint.
Метрики Claude Cowork (на пользователя)
Каждая запись пользователя также включает объект cowork_metrics с вовлеченностью Cowork на пользователя. Этот блок всегда присутствует в каждой записи — организации без использования Cowork видят нулевые значения вместо null.
Поле | Описание |
| Количество отдельных сеансов Cowork. |
| Всего сообщений пользователя, отправленных в Cowork. |
| Успешные вызовы инструментов (Bash, Read, Edit и т. д.) |
| Завершенные ходы агента в сеансах Dispatch (фоновый агент). |
| Общее количество вызовов навыков. Один навык, использованный пять раз, считается пятью. |
| Количество используемых различных навыков. |
| Общее количество вызовов соединителя. Один соединитель, используемый три раза, считается тремя вызовами. |
| Количество используемых различных соединителей. |
Пример запроса
curl -X GET "https://api.anthropic.com/v1/organizations/analytics/users?date=2025-01-01&limit=3"
--header "x-api-key: $YOUR_API_KEY"
2. Сводка активности
GET /v1/organizations/analytics/summaries
Возвращает высокоуровневую сводку вовлечённости и использования мест в день для вашей организации за указанный диапазон дат. Ответ представляет собой список дней с агрегированными подсчётами в пределах диапазона дат. Обратите внимание, что максимальная разница между ending_date и starting_date должна быть 31 день, и существует трёхдневная задержка в доступности данных. Это полезно для отслеживания ежедневно активных пользователей, еженедельных и ежемесячных тенденций, а также распределения мест в целом.
Мы определяем «активного» пользователя, если верно хотя бы одно из следующего:
Пользователь отправил хотя бы одно сообщение в чате Claude (chat).
Пользователь имел хотя бы одну сессию Claude Code (локальную или удалённую), связанную с организацией C4E, с использованием инструментов или активностью git.
Пользователь имел хотя бы одну сессию Claude Cowork с использованием инструментов или активностью сообщений.
Параметры запроса
Поле | Тип | Обязательно | Описание |
| строка | Да | Начальная дата для получения данных в формате YYYY-MM-DD. Существует трёхдневная задержка в доступности данных, поэтому самые свежие данные, к которым вы можете получить доступ, относятся к трём дням назад. |
| строка | Нет | Дополнительная конечная дата для получения данных в формате YYYY-MM-DD. Это исключающая дата. |
Поля ответа
Поле | Описание |
| Первый день, за который агрегированы метрики, интерпретируется как дата UTC. Существует трёхдневная задержка в доступности данных, поэтому самые свежие данные, к которым вы можете получить доступ, относятся к трём дням назад. |
| Последний день (исключающий) для которого агрегированы метрики, интерпретируется как дата UTC. |
| Количество пользователей, активных в указанную дату (на основе потребления токенов). |
| Количество пользователей, активных в течение 7-дневного скользящего окна, заканчивающегося в указанную дату. |
| Количество пользователей, активных в течение 30-дневного скользящего окна, заканчивающегося в указанную дату. |
| Общее количество мест, в настоящее время назначенных в вашей организации. |
| Количество ожидающих приглашений, которые ещё не были приняты. |
| Количество пользователей с ≥1 сессией Cowork в этот день. |
| Количество пользователей с ≥1 сессией Cowork в скользящем 7-дневном периоде. |
| Количество пользователей с ≥1 сессией Cowork в скользящем 30-дневном периоде. |
Примечание: Скользящие окна для еженедельных и ежемесячных подсчётов смотрят назад от указанной даты (включительно). Если данные неполные для некоторых дней в окне (например, если дата менее 30 дней в прошлом), ежемесячный подсчёт может недоучитывать активность.
Пример запроса
curl -X GET "https://api.anthropic.com/v1/organizations/analytics/summaries?starting_date=2025-01-01"
--header "x-api-key: $YOUR_API_KEY"
3. Использование проекта чата
GET /v1/organizations/analytics/apps/chat/projects
Возвращает данные об использовании, разбитые по проектам чата за определённую дату. Проекты специфичны для Claude (чат), поэтому этот эндпоинт сосредоточен на этой поверхности. Каждый элемент показывает имя проекта, количество уникальных пользователей, взаимодействовавших с ним, и общее количество разговоров в этом проекте.
Параметры запроса
Поле | Тип | Обязательно | Описание |
| строка | Да | Дата для получения метрик в формате YYYY-MM-DD. Данные доступны с задержкой в три дня, поэтому самые свежие данные, к которым вы можете получить доступ, — это данные с трёх дней назад. |
| целое число | Нет | Количество записей на странице (по умолчанию: 100, максимум: 1000). |
| строка | Нет | Токен курсора из поля |
Поля ответа (на проект)
Поле | Описание |
| Имя проекта. |
| Помеченный идентификатор проекта, т.е. "claude_proj_{ID}" |
| Количество уникальных пользователей, использовавших этот проект в указанную дату. |
| Количество разговоров в этом проекте в указанную дату. |
| Общее количество сообщений, отправленных в этом проекте в указанную дату. |
| Временная метка создания проекта. |
|
|
Пример запроса
curl -X GET "https://api.anthropic.com/v1/organizations/analytics/apps/chat/projects?date=2025-01-01&limit=50"
--header "x-api-key: $YOUR_API_KEY"
4. Использование навыков
GET /v1/organizations/analytics/skills
Возвращает данные об использовании навыков в Claude (чат) и Claude Code в вашей организации за определённую дату. Каждый элемент представляет навык и показывает, сколько уникальных пользователей его использовали.
Параметры запроса
Поле | Тип | Обязательно | Описание |
| строка | Да | Дата для получения метрик в формате YYYY-MM-DD. Данные доступны с задержкой в три дня, поэтому самые свежие данные, которые вы можете получить, относятся к трём дням назад. |
| целое число | Нет | Количество записей на странице (по умолчанию: 100, максимум: 1000). |
| строка | Нет | Токен курсора из поля |
Поля ответа (для каждого навыка)
Поле | Описание |
| Название навыка. |
| Количество уникальных пользователей, которые использовали этот навык в указанную дату. |
| Количество отдельных диалогов, в которых навык был использован хотя бы один раз в чате. |
| Количество отдельных удалённых сеансов, в которых навык был использован хотя бы один раз в Claude Code. |
Метрики Office Agent (для каждого навыка)
Каждая запись навыка также включает объект office_metrics, который показывает, сколько сеансов Office Agent использовали навык, разбитых по продуктам. Этот блок всегда присутствует — организации без использования Office Agent видят все нулевые значения.
Поле | Описание |
| Количество отдельных сеансов Office Agent в Excel, в которых был использован этот навык. |
| Количество отдельных сеансов Office Agent в PowerPoint, в которых был использован этот навык. |
Метрики Claude Cowork (для каждого навыка)
Каждая запись навыка также включает объект cowork_metrics, который показывает, сколько сеансов Cowork использовали навык. Этот блок всегда присутствует — организации без использования Cowork видят все нулевые значения.
| Количество отдельных сеансов Cowork, в которых этот навык был использован хотя бы один раз. |
Пример запроса
curl -X GET "https://api.anthropic.com/v1/organizations/analytics/skills?date=2025-01-01"
--header "x-api-key: $YOUR_API_KEY"
5. Использование коннекторов
GET /v1/organizations/analytics/connectors
Возвращает данные об использовании MCP/коннекторов в Claude (чате) и Claude Code в вашей организации за указанную дату. Каждый элемент представляет коннектор и показывает, сколько уникальных пользователей его использовали. Названия коннекторов нормализованы из различных источников — например, «Atlassian MCP server», «mcp-atlassian» и «atlassian_MCP» будут отображаться как «atlassian».
Параметры запроса
Поле | Тип | Обязательно | Описание |
| строка | Да | Дата для получения метрик в формате YYYY-MM-DD. Данные доступны с задержкой в три дня, поэтому самые свежие данные, которые вы можете получить, относятся к трём дням назад. |
| целое число | Нет | Количество записей на странице (по умолчанию: 100, максимум: 1000). |
| строка | Нет | Токен курсора из поля |
Поля ответа (для каждого соединителя)
Поле | Описание |
| Нормализованное имя соединителя. |
| Количество уникальных пользователей, использовавших этот соединитель в указанную дату. |
| Количество отдельных диалогов, в которых соединитель использовался хотя бы один раз в чате. |
| Количество отдельных удалённых сеансов, в которых соединитель использовался хотя бы один раз в Claude Code. |
Метрики Office Agent (для каждого соединителя)
Каждая запись соединителя также включает объект office_metrics, который сообщает, сколько сеансов Office Agent использовали соединитель, разбитых по продуктам. Этот блок всегда присутствует — организации без использования Office Agent видят все нулевые значения.
Поле | Описание |
| Количество отдельных сеансов Office Agent в Excel, в которых использовался этот соединитель. |
| Количество отдельных сеансов Office Agent в PowerPoint, в которых использовался этот соединитель. |
Метрики Claude Cowork (для каждого соединителя)
Каждая запись соединителя также включает объект cowork_metrics, который сообщает, сколько сеансов Cowork использовали соединитель. Этот блок всегда присутствует — организации без использования Cowork видят все нулевые значения.
Поле | Описание |
| Количество отдельных сеансов Cowork, в которых этот соединитель использовался хотя бы один раз. |
Пример запроса
curl -X GET "https://api.anthropic.com/v1/organizations/analytics/connectors?date=2025-01-01"
--header "x-api-key: $YOUR_API_KEY"
Конечные точки затрат и использования
Примечание: Конечные точки затрат и использования применяются к планам Enterprise на основе использования. Для планов Enterprise на основе мест эти конечные точки будут отражать только кредиты использования.
Конечные точки затрат и использования (доступны сейчас в бета-версии) предоставляют вашей организации программный доступ к данным о токенах и затратах в USD для Claude (чат), Claude Code, Cowork, Office Agent и Claude в Chrome.
Есть четыре конечные точки двух типов:
Тип | Конечные точки | Возвращает |
По пользователям (одна строка на пользователя, отсортирована) | user_usage_report, user_cost_report | Пользователи, ранжированные по токенам или расходам за период времени. |
Сгруппированные (одна строка на временной интервал, опционально сгруппированные) | usage_report, cost_report | Использование или затраты во времени, разбитые по продуктам, моделям или другим измерениям. |
Используйте конечные точки по пользователям для ответа на вопрос «кто мои крупнейшие плательщики?» Используйте сгруппированные конечные точки для ответа на вопрос «как использование меняется день за днём, разбитое по продуктам?»
Свежесть и окончательность данных
Данные обычно доступны в течение четырёх часов после базового использования, но могут занять до 24 часов. Каждый ответ включает временную метку data_refreshed_at, указывающую экспорт, из которого был получен ответ; использование, произошедшее после этого водяного знака, ещё не отражено.
Значения за определённую дату могут быть пересмотрены в течение 30 дней по мере поступления поздних событий и выполнения сверок. Для итогов, пригодных для выставления счётов, запрашивайте даты, которые были по крайней мере 30 дней назад.
Когда ending_at опущен (по умолчанию «сейчас»), ответ будет включать хвост данных после data_refreshed_at, который неполный. Для стабильных результатов при повторных вызовах установите ending_at на значение, которое было или раньше ранее возвращённого data_refreshed_at.
Ограничения диапазона дат
starting_at может быть до 365 дней в прошлом, и один запрос может охватывать максимум 31 день (ending_at - starting_at). Чтобы охватить более длительный период, выполните несколько запросов с соседними окнами. Данные недоступны до 2026-01-01.
Разбиение на страницы
Все четыре конечные точки затрат и использования имеют постраничную разбивку с непрозрачным курсором. Первый запрос возвращает до limit строк плюс курсор next_page; передайте этот курсор без изменений в качестве параметра page в следующем запросе и повторяйте, пока has_more не станет false.
Рассматривайте next_page как непрозрачный: передайте его без изменений в следующем запросе и отправляйте одинаковые параметры запроса на каждой странице. Если запрос возвращает 400 или 410 с сообщением о курсоре страницы, отбросьте его и начните заново с первой страницы.
Не изменяйте параметры запроса в процессе. Курсоры привязаны к фильтрам и диапазону дат, которые их выдали. Если вы измените products[], order_by, group_by[], диапазон дат или любой фильтр и передадите старый курсор, вы получите ошибку 400.
Сериализация параметров списка
Параметры списка используют нотацию скобок: повторите имя параметра с [] для каждого значения.
products[]=chat&products[]=claude_code
Объект Actor
Каждая строка результата для каждого пользователя определяет пользователя, который создал использование.
{
"type": "user_actor",
"user_id": "user_01AbCdEfGh",
"name": "Jane Smith",
"email": "[email protected]"
}
Поле | Тип | Описание |
type | string | Всегда "user_actor". |
user_id | string | ID пользователя. То же значение, принимаемое user_ids[]. |
name | string или null | Имя пользователя. «Удалённый пользователь», если пользователь был удалён. |
string или null | Адрес электронной почты пользователя. Null при удалении пользователя. | |
deleted | boolean | True, если учётная запись была удалена. |
6. Использование токенов для каждого пользователя
GET /v1/organizations/analytics/user_usage_report
Возвращает использование токенов для каждого пользователя в диапазоне дат, отсортированное по выбранной метрике токенов.
Параметры запроса
Поле | Тип | Обязательно | По умолчанию | Описание |
starting_at | RFC 3339 datetime | Да | — | Начало диапазона, включительно. Округлено до начала часа в UTC. Должно быть в пределах последних 365 дней. |
ending_at | RFC 3339 datetime | Нет | now | Конец диапазона, исключительно. Диапазон может охватывать максимум 31 день. |
products[] | один или несколько из chat, claude_code, cowork, office_agent, claude_in_chrome, claude_design | Нет | все продукты на основе мест | Только поверхности продуктов на основе мест. Повторите параметр для нескольких значений. |
models[] | строка, макс. 100 записей | Нет | все | Фильтр по конкретным названиям моделей (например, claude-opus-4-6, claude-sonnet-4-6, claude-haiku-4-5-20251001). |
user_ids[] | строка, макс. 100 записей | Нет | все | Фильтр по конкретным пользователям. Полезно для поиска известного набора пользователей без постраничного просмотра всей организации. |
context_windows[] | один или несколько из 0-200k, 200k-1M | Нет | все | Фильтр по конкретным ценовым уровням контекстного окна. Используйте group_by[]=context_window для разбивки значений по уровням. |
inference_geos[] | один или несколько из global, us, not_available | Нет | все | Фильтр по конкретным регионам вывода. not_available соответствует строкам, где регион не установлен. Используйте group_by[]=inference_geo для разбивки значений по регионам. |
speeds[] | один или несколько из fast, standard | Нет | все | Фильтр по режиму быстрого или стандартного вывода. Используйте group_by[]=speed для разбивки значений по режимам. |
group_by[] | один или несколько из product, model, context_window, inference_geo, speed | Нет | нет | Разбить строку каждого пользователя по заданным измерениям. При наличии измерений один пользователь может занимать несколько строк. |
order_by | total_tokens, output_tokens, uncached_input_tokens | Нет | total_tokens | Метрика для сортировки. |
exclude_deleted_users | логическое значение | Нет | false | Если значение true, строки удаленных пользователей исключаются. |
order | desc, asc | Нет | desc | Направление сортировки. |
limit | целое число 1–1000 | Нет | 20 | Строк на странице. |
страница | непрозрачная строка курсора | Нет | — | Значение next_page из предыдущего ответа. |
Поля ответа
Поле | Описание |
organization_id | ID организации, к которой принадлежит ключ API. |
data | Массив записей, отсортированный по order_by в направлении сортировки. |
data[].actor | Объект Actor для пользователя, который создал использование. |
data[].product | Если group_by[] включает product, поверхность продукта. В противном случае null. |
data[].model | Если group_by[] включает model, имя модели. В противном случае null. |
data[].context_window | Если group_by[] включает context_window, уровень контекста (0-200k или 200k-1M). В противном случае null. |
data[].inference_geo | Если group_by[] включает inference_geo, регион вывода. В противном случае null. |
data[].speed | Если group_by[] включает speed: fast или standard. В противном случае null. |
data[].uncached_input_tokens | Входные токены, которые не были обслужены из кэша подсказок. |
data[].cache_creation.ephemeral_5m_input_tokens | Токены, записанные в 5-минутный кэш подсказок. |
data[].cache_creation.ephemeral_1h_input_tokens | Токены, записанные в 1-часовой кэш подсказок. |
data[].cache_read_input_tokens | Входные токены, обслуженные из кэша подсказок. |
data[].output_tokens | Сгенерированные выходные токены. |
data[].total_tokens | Сумма всех компонентов токенов выше. Сортировка по умолчанию order_by=total_tokens сортирует по этому значению. |
data[].server_tool_use.web_search_requests | Количество вызовов инструмента веб-поиска. |
data[].requests | Количество запросов API |
has_more | Существует ли другая страница. |
next_page | Непрозрачный курсор для следующей страницы; null, если has_more имеет значение false. |
data_refreshed_at | Временная метка экспорта данных, из которого был обслужен этот ответ. |
Пример запроса
curl "https://api.anthropic.com/v1/organizations/analytics/user_usage_report?starting_at=2026-03-01T00:00:00Z&products[]=claude_code&order_by=output_tokens&limit=20" \
--header "x-api-key: $YOUR_API_KEY"
7. Стоимость на пользователя
GET /v1/organizations/analytics/user_cost_report
Возвращает стоимость в USD на пользователя за диапазон дат, отсортированную по скидочной или прейскурантной сумме.
Параметры запроса
Аналогично user_usage_report, с этими отличиями:
Поле | Тип | Обязательно | По умолчанию | Описание |
order_by | amount, list_amount | Нет | amount | Метрика для сортировки. |
group_by[] | один или несколько из: product, model, context_window, inference_geo, speed, cost_type, token_type | Нет | нет | Разбить строку каждого пользователя по указанным измерениям. cost_type возвращает одну строку на компонент стоимости (токены, веб-поиск, выполнение кода); token_type возвращает одну строку на тип токена. |
Все остальные параметры (starting_at, ending_at, products[], models[], user_ids[], order, limit, page) идентичны.
Поля ответа
Поле | Описание |
organization_id | ID организации, к которой принадлежит API-ключ. |
data | Массив записей, отсортированный по order_by в направлении сортировки. |
data[].actor | Объект Actor для пользователя, который создал стоимость. |
data[].product, data[].model, data[].context_window, data[].inference_geo, data[].speed | Если установлено соответствующее значение group_by[], значение измерения. В противном случае null. |
data[].currency | Всегда "USD". |
data[].amount | Сумма в дробных центах — сырая стоимость потребления после согласованных скидок. Например, "41280.000000" это $412.80. Значение суммируется по всем продуктам в фильтре products[]. |
data[].list_amount | Сумма по прейскурантной цене (до скидки) в дробных центах, тот же формат. |
data[].cost_type | Когда group_by[] включает cost_type: один из tokens, web_search, code_execution. null, если не установлено. |
data[].token_type | Когда group_by[] включает token_type: один из uncached_input_tokens, output_tokens, cache_read_input_tokens, cache_creation.ephemeral_5m_input_tokens, cache_creation.ephemeral_1h_input_tokens. Только не null в строках, где cost_type равен tokens. |
data[].requests | Количество API-запросов |
has_more | Существует ли другая страница. |
next_page | Непрозрачный курсор для следующей страницы. |
data_refreshed_at | Временная метка экспорта данных, из которого был отправлен этот ответ. |
Анализ сумм
amount и list_amount — это десятичные строки, выраженные в центах. "41280.000000" представляет 41 280 центов (412,80 доллара США). Для преобразования в доллары разберите как десятичное число и разделите на 100. Избегайте двоичного анализа с плавающей точкой для значений, которые могут превышать несколько миллионов долларов.
Пример запроса
curl "https://api.anthropic.com/v1/organizations/analytics/user_cost_report?starting_at=2026-03-01T00:00:00Z&order_by=amount&limit=20" \
--header "x-api-key: $YOUR_API_KEY"
8. Использование токенов во времени
GET /v1/organizations/analytics/usage_report
Возвращает использование токенов во времени, сгруппированное по минутам, часам или дням, с опциональной разбивкой по продукту, модели, размеру контекста, региону вывода или скорости.
Параметры запроса
Поле | Тип | Обязательно | По умолчанию | Описание |
starting_at | RFC 3339 datetime | Да | — | Начало диапазона, включительно. Должно быть в пределах последних 365 дней. Округлено до ближайшей границы bucket_width в UTC. |
ending_at | RFC 3339 datetime | Нет | now | Конец диапазона, исключительно. Диапазон может охватывать максимум 31 день. Округлено до ближайшей границы bucket_width в UTC. |
bucket_width | 1m, 1h, 1d | Нет | 1d | Гранулярность временного интервала: минута, час или день. |
group_by[] | один или несколько из product, model, context_window, inference_geo, speed | Нет | none | Измерения для разбивки в каждом интервале. Опустите для одного агрегата на интервал. |
products[] | один или несколько из chat, claude_code, cowork, office_agent, claude_in_chrome, claude_design | Нет | all | Фильтр по определённым поверхностям продукта. |
models[] | строка, максимум 100 записей | Нет | all | Фильтр по определённым названиям моделей. |
context_windows[] | один или несколько из 0-200k, 200k-1M | Нет | all | Фильтр по определённым ценовым уровням размера контекста. Используйте group_by[]=context_window для разбивки значений по уровням. |
inference_geos[] | один или несколько из global, us, not_available | Нет | all | Фильтр по определённым регионам вывода. not_available соответствует строкам, где регион не установлен. Используйте group_by[]=inference_geo для разбивки значений по регионам. |
speeds[] | один или несколько из fast, standard | Нет | все | Фильтр по режиму быстрого или стандартного вывода. |
user_ids[] | строка, максимум 100 записей | Нет | все | Фильтр по конкретным пользователям. |
limit | целое число | Нет | варьируется | Сегментов на странице. Значения по умолчанию и максимум зависят от bucket_width: 1d → 7 (макс. 31); 1h → 24 (макс. 168); 1m → 60 (макс. 256). |
page | непрозрачная строка курсора | Нет | — | Значение next_page из предыдущего ответа. |
Поля ответа
Поле | Описание |
organization_id | ID организации, к которой принадлежит ключ API. |
data | Массив записей, по одной на временной сегмент. |
data[].starting_at | Начало сегмента. |
data[].ending_at | Конец сегмента. |
data[].results | Массив записей, по одной на группу в сегменте. Одна запись со всеми полями измерений null, если group_by[] опущен. |
data[].results[].product, .model, .context_window, .inference_geo, .speed | Значение измерения, если установлено соответствующее значение group_by[]. В противном случае null. |
data[].results[].uncached_input_tokens | Входные токены, которые не были обслужены из кэша подсказок. |
data[].results[].cache_creation.ephemeral_5m_input_tokens | Токены, записанные в кэш подсказок на 5 минут. |
data[].results[].cache_creation.ephemeral_1h_input_tokens | Токены, записанные в кэш подсказок на 1 час. |
data[].results[].cache_read_input_tokens | Входные токены, обслуженные из кэша подсказок. |
data[].results[].output_tokens | Сгенерированные выходные токены. |
data[].results[].server_tool_use.web_search_requests | Количество вызовов инструмента веб-поиска. |
has_more | Существуют ли дополнительные сегменты. |
next_page | Непрозрачный курсор для следующей страницы. |
data_refreshed_at | Временная метка экспорта данных, из которого была отправлена эта ответ. |
Пример запроса
--header "x-api-key: $YOUR_API_KEY"
9. Стоимость во времени
GET /v1/organizations/analytics/cost_report
Возвращает стоимость в USD во времени, разбитую и сгруппированную так же, как usage_report.
Параметры запроса
То же, что и usage_report (bucket_width, group_by[], filters, limit, page). Значения group_by[] дополнительно принимают cost_type и token_type на этой конечной точке.
Поля ответа
Поле | Описание |
organization_id | ID организации, к которой принадлежит ключ API. |
data | Массив записей, по одной на временной интервал. |
data[].starting_at | Начало интервала. |
data[].ending_at | Конец интервала. |
data[].results | Массив записей, по одной на группу в интервале. |
data[].results[].product, .model, .context_window, .inference_geo, .speed | Когда установлено соответствующее значение group_by[], значение измерения. В противном случае null. |
data[].results[].cost_type | Когда group_by[] включает cost_type: tokens, web_search или code_execution. null, если не установлено. |
data[].results[].token_type | Когда group_by[] включает token_type: один из типов токенов, указанных в конечной точке 7. Только для конечной точки Cost — token_type отклоняется на usage_report. |
data[].results[].currency | Всегда "USD". |
data[].results[].amount | Сумма в дробных центах — сырая стоимость потребления после согласованных скидок. |
data[].results[].list_amount | Сумма по прейскуранту (до скидки) в дробных центах. |
has_more | Существуют ли дополнительные интервалы. |
next_page | Непрозрачный курсор для следующей страницы. |
data_refreshed_at | Временная метка экспорта данных, из которого была отправлена эта ответ. |
Пример запроса
curl "https://api.anthropic.com/v1/organizations/analytics/cost_report?starting_at=2026-03-01T00:00:00Z&bucket_width=1d&group_by[]=model" \
--header "x-api-key: $YOUR_API_KEY"
