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" \
  --header "anthropic-version: 2023-06-01"
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" \
  --header "anthropic-version: 2023-06-01"

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 salva 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" \
  --header "anthropic-version: 2023-06-01" | 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" \
  --header "anthropic-version: 2023-06-01" \
  --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 negli eventi delle chat o claude_file_id negli eventi dei file. Consulta Interrogare le attività di conformità nel riferimento API per l'elenco dei campi per ciascun 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 di claude.ai o della Claude Console che ha effettuato l'accesso ha eseguito l'azione, oppure l'ha eseguita un processo che Anthropic esegue per conto di quell'utente (consulta il paragrafo dopo questa tabella).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 di Anthropic non sono rappresentati da un'email individuale)
system_actorElaborazione automatica in background eseguita dai sistemi di Anthropic, che agiscono senza credenziali di un utente o di un cliente.service (nullable; il nome del processo automatico che ha eseguito l'azione, quando noto)
scim_directory_sync_actorUn provider di identità (come Okta, Microsoft Entra ID o JumpCloud) ha inviato una modifica tramite la sincronizzazione della directory SCIM.workos_event_id, directory_id, idp_connection_type (nullable; ad esempio OktaSCIMV2, AzureSCIMV2)

Un'attività user_actor non significa sempre che l'utente abbia eseguito l'azione. I processi che Anthropic esegue per conto di un utente possono attualmente comparire come user_actor per l'utente interessato anziché come system_actor, e questa attribuzione potrebbe cambiare. Ad esempio, le attività di memoria derivanti da una migrazione, come platform_memory_store_created, platform_memory_created e platform_memory_deleted, vengono attribuite in questo modo. Le attività di memoria possono mostrare un ip_address pari a 0.0.0.0 indipendentemente da chi le abbia eseguite, quindi questo valore da solo non identifica un'attività proveniente da un processo della piattaforma.

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.

Le attività relative a un file, a un documento di progetto o a un artifact non includono il relativo nome o titolo. A partire dal 24 settembre 2026, i campi filename e title di queste attività sono sempre null, una stringa vuota oppure omessi, anche nelle attività registrate prima di tale data. Per cercare un nome o un titolo, passa l'ID claude_file_*, claude_proj_doc_* o claude_artifact_version_* dell'attività all'endpoint dei metadati corrispondente in Recuperare file e artifact, usando una Compliance Access Key con lo scope read:compliance_user_data. Non puoi cercare un nome o un titolo dopo che il file, il documento o l'artifact è stato eliminato, né quando l'attività non ha un ID di questo tipo.

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?