Claude Platform Docs
AmministrazioneCompliance API

Interrogare l'Activity Feed

Recupera, filtra e impagina l'Activity Feed della Compliance API della tua organizzazione.

L'Activity Feed (feed delle attività) registra le attività di autenticazione, chat, file, progetti, amministrazione e piattaforma in tutta la tua organizzazione e le restituisce in ordine cronologico inverso. Le attività sono interrogabili entro 1 minuto dal loro verificarsi e vengono conservate per 6 anni. La registrazione non è retroattiva: inizia quando la Compliance API viene abilitata per la prima volta per la tua organizzazione, e le attività precedenti all'abilitazione non vengono recuperate retroattivamente.

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"
}

Filtrare le attività

Filtra per organizzazione, attore, tipo di attività o una finestra temporale created_at usando i sotto-parametri con notazione a punto created_at.gte, .gt, .lte e .lt. Consulta il riferimento API per il tipo e i valori accettati di ciascun parametro.

I parametri ripetibili usano la sintassi di query con parentesi quadre: passa activity_types[]=..., actor_ids[]=... o organization_ids[]=... una volta per ciascun valore.

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"

L'Activity Feed produce centinaia di tipi di attività distinti. Consulta Interrogare le attività di conformità nel riferimento API per l'elenco completo dei valori accettati da activity_types[].

Impaginare i risultati

Le attività vengono restituite dalla più recente, con i pareggi in created_at risolti in base all'ID dell'attività, e limitate a limit risultati in ciascuna risposta (predefinito 100, massimo 5.000). Consulta il riferimento API per lo schema completo della risposta.

La Compliance API usa due schemi di "pagination" (impaginazione) a seconda della famiglia di endpoint:

Famiglia di endpointOrdinamentoSchemaParametri
AttivitàDalla più recenteCursoreafter_id, before_id (restituiti come first_id, last_id)
Chat e messaggi delle chatDalla più vecchiaCursoreafter_id, before_id (restituiti come first_id, last_id)
Organizzazioni, progetti, allegati dei progetti, utenti, ruoli, permessi dei ruoli, gruppi, membri dei gruppiSpecifico dell'endpointToken di paginapage (restituito come next_page)
Sessioni locali e remote e messaggi delle sessioniSessioni dalla più recente; messaggi dal più vecchio per impostazione predefinitaToken di paginapage (restituito come next_page)

I file non vengono impaginati: vengono recuperati singolarmente per ID.

I cursori di impaginazione e i token di pagina sono stringhe opache: ripassali invariati. Il loro formato interno non è stabile e il loro parsing smetterà di funzionare senza preavviso. In ciascuna richiesta può essere impostato solo uno tra after_id e before_id, ed entrambi gli schemi restituiscono has_more così da sapere quando fermarti. Gli endpoint delle sessioni (locali e remote) sono l'eccezione: restituiscono next_page senza has_more, quindi fermati quando next_page è null.

Per scorrere le pagine delle attività:

  • Passa il last_id della risposta come after_id per avanzare alla pagina successiva nell'ordine dei risultati. Con le attività ordinate dalla più recente, la pagina successiva contiene voci più vecchie.
  • Passa first_id come before_id per tornare alla pagina precedente.
  • Fermati quando has_more è false.

Il parametro cursore stabilisce la direzione della pagina; l'ordinamento dell'endpoint stabilisce la direzione temporale. Lo stesso parametro after_id qui raggiunge le attività più vecchie. Le chat sono ordinate dalla più vecchia; consulta Recuperare ed eliminare chat, file e progetti per la semantica dei cursori in quel contesto.

cURL
# Recupera la prima pagina (attività più recenti per prime) e acquisisci il cursore finale.
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')

# Ripassa il cursore invariato per recuperare la pagina successiva (più vecchia).
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}"

Un ciclo di backfill (recupero retroattivo) in produzione scorre le attività più vecchie guidando l'iterazione tramite has_more e last_id:

  1. Parti dal tuo cursore memorizzato (oppure ometti after_id per partire dall'inizio).
  2. Scorri le pagine con after_id=<last_id> finché has_more è false.
  3. Rendi persistente il last_id finale solo dopo aver memorizzato ogni pagina che copre.
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)

Comprendere l'oggetto Activity

Ogni voce in data è un'Activity con questa struttura di primo livello:

CampoTipoDescrizione
idstringIdentificatore univoco dell'attività.
created_atstringa RFC 3339Quando si è verificata l'attività.
organization_idstring o nullOrganizzazione in cui si è verificata l'attività, oppure null per eventi non legati a un'organizzazione (accesso, disconnessione, chiamate alla Compliance API).
organization_uuidstring o nullStesso ambito di organization_id, espresso come UUID.
actorunione ActorChi o cosa ha eseguito l'attività. Consulta la tabella degli attori seguente.
typestringIl tipo di attività, ad esempio claude_chat_created.
campi aggiuntivivariabileCampi specifici del tipo, ad esempio claude_chat_id sugli eventi delle chat o filename sugli eventi dei file. Consulta Interrogare le attività di conformità nel riferimento API per l'elenco dei campi per tipo.

Il campo actor è una "discriminated union" (unione discriminata). Il discriminatore type indica quali altri campi sono presenti:

actor.typeQuando compareCampi principali
user_actorUn utente autenticato di claude.ai o Claude Console ha eseguito l'azione.email_address, user_id, ip_address, user_agent
api_actorUna richiesta ha chiamato la Claude API o la Compliance API con una chiave API emessa dal cliente. Le chiamate alla Compliance API producono questo tipo di attore sia per le Compliance Access Key sia per le chiavi Admin API.api_key_id, ip_address, user_agent
admin_api_key_actorUn amministratore dell'organizzazione ha usato una chiave Admin API per gestire utenti, inviti, workspace o chiavi API.admin_api_key_id, ip_address, user_agent
unauthenticated_user_actorUn'azione si è verificata prima del completamento dell'accesso, ad esempio sso_login_initiated.unauthenticated_email_address, ip_address, user_agent
anthropic_actorAnthropic ha agito sull'organizzazione, ad esempio tramite strumenti interni.email_address (sempre null; presente per coerenza di struttura con user_actor, poiché gli operatori Anthropic non sono rappresentati da email individuali)
scim_directory_sync_actorUn identity provider (come Okta, Microsoft Entra ID o JumpCloud) ha propagato una modifica tramite la sincronizzazione della directory SCIM.workos_event_id, directory_id, idp_connection_type (nullable; ad esempio OktaSCIMV2, AzureSCIMV2)

Un'attività claude_*_viewed significa che un'app Claude ha caricato un contenuto, non che una persona lo abbia visualizzato. Tipi come claude_chat_viewed, claude_file_viewed e claude_project_viewed vengono registrati ogni volta che un'app Claude carica la chat, il file o il progetto dai server di Anthropic. I caricamenti ripetuti non vengono deduplicati. Le app web, desktop e mobile caricano i contenuti in momenti diversi, talvolta in background, e possono mostrare una copia in cache senza caricarla. Di conseguenza i conteggi di queste attività variano in base alla piattaforma e non corrispondono ai messaggi inviati o alle schermate visualizzate.

Passaggi successivi

Lo schema completo di richiesta e risposta per GET /v1/compliance/activities, incluso ogni valore activity_types[] supportato.

Interroga ed elimina i contenuti sottostanti alle attività che trovi nel feed (Compliance Access Key richiesta).

Scegli un modello di consumo a polling o batch e pianifica la correlazione SIEM.

Il catalogo completo degli errori.

Was this page helpful?