Claude Platform Docs

Запросы к ленте активности

Получение, фильтрация и постраничная навигация по ленте активности Compliance API вашей организации.

Лента активности фиксирует события аутентификации, чатов, файлов, проектов, административные действия и активность платформы по всей вашей организации и возвращает их в обратном хронологическом порядке. Действия становятся доступны для запросов в течение 1 минуты после их совершения и хранятся 6 лет. Запись не ведётся ретроактивно: она начинается с момента первого включения Compliance API для вашей организации, а активность до включения не восполняется.

cURL
curl --fail-with-body -sS \
  "https://api.anthropic.com/v1/compliance/activities?limit=1" \
  --header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY"
Response
{
  "data": [
    {
      "id": "activity_01XyDMpzjS89pFZXqSFUBDr6",
      "created_at": "2026-04-10T08:09:10Z",
      "organization_id": "org_01Wv6QeBcDfGhJkLmNpQrSt8",
      "organization_uuid": "abcdef01-2345-6789-abcd-ef0123456789",
      "actor": {
        "type": "user_actor",
        "email_address": "user@example.com",
        "user_id": "user_01TuVwXyZaBcDeFgH2JkLmN4",
        "ip_address": "192.0.2.34",
        "user_agent": "Mozilla/5.0..."
      },
      "type": "claude_chat_created",
      "claude_chat_id": "claude_chat_01XyDMpzjS89pFZXqSFUBDr6",
      "claude_project_id": "claude_proj_01KGp4eZNug9ri4kE35RSppq"
    }
  ],
  "has_more": true,
  "first_id": "activity_01XyDMpzjS89pFZXqSFUBDr6",
  "last_id": "activity_01XyDMpzjS89pFZXqSFUBDr6"
}

Фильтрация действий

Фильтруйте по организации, субъекту (actor), типу действия или временному окну created_at, используя точечные подпараметры created_at.gte, .gt, .lte и .lt. Тип и допустимые значения каждого параметра см. в справочнике API.

Повторяемые параметры используют синтаксис запроса с квадратными скобками массива: передавайте activity_types[]=..., actor_ids[]=... или organization_ids[]=... по одному разу для каждого значения.

cURL
curl --fail-with-body -sS -G \
  "https://api.anthropic.com/v1/compliance/activities" \
  --data-urlencode "activity_types[]=claude_file_uploaded" \
  --data-urlencode "activity_types[]=claude_chat_created" \
  --data-urlencode "created_at.gte=2026-04-01T00:00:00Z" \
  --header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY"

Лента активности формирует сотни различных типов действий. Полный список значений, которые принимает activity_types[], см. в разделе Запрос действий соответствия справочника API.

Постраничная навигация по результатам

Действия возвращаются начиная с самых новых; при совпадении created_at порядок определяется идентификатором действия, а количество результатов в каждом ответе ограничено значением limit (по умолчанию 100, максимум 5 000). Полную схему ответа см. в справочнике API.

Compliance API использует две схемы «pagination» (постраничной навигации) в зависимости от семейства конечных точек:

Семейство конечных точекПорядок сортировкиСхемаПараметры
ДействияСначала новыеКурсорafter_id, before_id (возвращаются как first_id, last_id)
Чаты и сообщения чатовСначала старыеКурсорafter_id, before_id (возвращаются как first_id, last_id)
Организации, проекты, вложения проектов, пользователи, роли, разрешения ролей, группы, участники группЗависит от конечной точкиТокен страницыpage (возвращается как next_page)
Локальные и удалённые сеансы и сообщения сеансовСеансы — сначала новые; сообщения — по умолчанию сначала старыеТокен страницыpage (возвращается как next_page)

Файлы не разбиваются на страницы: они извлекаются по отдельности по идентификатору.

Курсоры постраничной навигации и токены страниц — это непрозрачные строки: передавайте их обратно без изменений. Их внутренний формат нестабилен, и попытка их разбора перестанет работать без предупреждения. В каждом запросе может быть задан только один из параметров after_id или before_id, и обе схемы возвращают has_more, чтобы вы знали, когда остановиться. Исключение составляют конечные точки сеансов (локальных и удалённых): они возвращают next_page без has_more, поэтому останавливайтесь, когда next_page равен null.

Чтобы пролистать действия по страницам:

  • Передайте last_id из ответа в качестве after_id, чтобы перейти к следующей странице в порядке результатов. Поскольку действия отсортированы начиная с новых, следующая страница содержит более старые записи.
  • Передайте first_id в качестве before_id, чтобы вернуться к предыдущей странице.
  • Остановитесь, когда has_more равно false.

Параметр курсора задаёт направление листания страниц; порядок сортировки конечной точки задаёт направление во времени. Здесь тот же параметр after_id ведёт к более старым действиям. Чаты сортируются начиная со старых; семантику курсоров для них см. в разделе Получение и удаление чатов, файлов и проектов.

cURL
# Получаем первую страницу (сначала самые новые действия) и сохраняем её конечный курсор.
last_id=$(curl --fail-with-body -sS \
  "https://api.anthropic.com/v1/compliance/activities?limit=2" \
  --header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" | jq -er '.last_id')

# Передаём курсор обратно без изменений, чтобы получить следующую (более старую) страницу.
curl --fail-with-body -sS -G \
  "https://api.anthropic.com/v1/compliance/activities" \
  --header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
  --data-urlencode "limit=2" \
  --data-urlencode "after_id=${last_id}"

Производственный цикл восполнения (backfill) листает более старые действия, управляя итерацией на основе has_more и last_id:

  1. Начните с сохранённого курсора (или опустите after_id, чтобы начать с начала).
  2. Листайте страницы с after_id=<last_id>, пока has_more не станет false.
  3. Сохраняйте итоговый last_id только после того, как сохранили все страницы, которые он охватывает.
cursor = stored_cursor
loop:
  if cursor is not null:
    page = GET /v1/compliance/activities?after_id={cursor}&limit=100
  else:
    page = GET /v1/compliance/activities?limit=100
  store(page.data)
  if page.last_id is not null:
    cursor = page.last_id
  if not page.has_more: break
persist(cursor)

Структура объекта Activity

Каждая запись в data — это объект Activity со следующей структурой верхнего уровня:

ПолеТипОписание
idstringУникальный идентификатор действия.
created_atстрока RFC 3339Когда произошло действие.
organization_idstring или nullОрганизация, в которой произошло действие, или null для событий, не привязанных к организации (вход, выход, вызовы Compliance API).
organization_uuidstring или nullТа же область, что и у organization_id, выраженная в виде UUID.
actorобъединение ActorКто или что выполнило действие. См. таблицу субъектов ниже.
typestringТип действия, например claude_chat_created.
дополнительные поляразличаетсяПоля, зависящие от типа, например claude_chat_id для событий чата или filename для событий файлов. Список полей по типам см. в разделе Запрос действий соответствия справочника API.

Поле actor — это размеченное объединение (discriminated union). Дискриминатор type указывает, какие другие поля присутствуют:

actor.typeКогда появляетсяКлючевые поля
user_actorДействие выполнил вошедший в систему пользователь claude.ai или Claude Console.email_address, user_id, ip_address, user_agent
api_actorЗапрос обратился к Claude API или Compliance API с ключом API, выданным клиентом. Вызовы Compliance API формируют этот тип субъекта как для ключей Compliance Access Key, так и для ключей Admin API.api_key_id, ip_address, user_agent
admin_api_key_actorАдминистратор организации использовал ключ Admin API для управления пользователями, приглашениями, рабочими пространствами или ключами API.admin_api_key_id, ip_address, user_agent
unauthenticated_user_actorДействие произошло до завершения входа, например sso_login_initiated.unauthenticated_email_address, ip_address, user_agent
anthropic_actorAnthropic выполнила действие в отношении организации, например через внутренние инструменты.email_address (всегда null; присутствует для единообразия структуры с user_actor, поскольку операторы Anthropic не представлены индивидуальными адресами электронной почты)
scim_directory_sync_actorПоставщик удостоверений (например, Okta, Microsoft Entra ID или JumpCloud) передал изменение через синхронизацию каталога SCIM.workos_event_id, directory_id, idp_connection_type (может быть null; например OktaSCIMV2, AzureSCIMV2)

Действие claude_*_viewed означает, что приложение Claude загрузило содержимое, а не то, что его просмотрел человек. Такие типы, как claude_chat_viewed, claude_file_viewed и claude_project_viewed, записываются каждый раз, когда приложение Claude загружает чат, файл или проект с серверов Anthropic. Повторные загрузки не дедуплицируются. Веб-, настольное и мобильное приложения загружают содержимое в разные моменты, иногда в фоновом режиме, и могут отображать кэшированную копию без её загрузки. В результате количество таких действий различается в зависимости от платформы и не соответствует числу отправленных сообщений или просмотренных экранов.

Следующие шаги

Полная схема запроса и ответа для GET /v1/compliance/activities, включая все поддерживаемые значения activity_types[].

Запрашивайте и удаляйте исходное содержимое для действий, найденных в ленте (требуется ключ Compliance Access Key).

Выберите схему потребления — опрос или пакетную обработку — и спланируйте корреляцию с SIEM.

Полный каталог ошибок.

Was this page helpful?