---
title: Recuperare ed eliminare chat, file e progetti
url: https://platform.claude.com/docs/it/manage-claude/compliance-content-data
description: Accedi al contenuto delle chat, agli allegati e ai progetti delle organizzazioni claude.ai tramite la Compliance API.
---

<Note>
  Gli endpoint di questa pagina sono disponibili solo per le organizzazioni Claude Enterprise. Recuperano ed eliminano chat, file e progetti di claude.ai; le trascrizioni delle sessioni in app come Cowork e Claude Code sono trattate in [Recuperare le trascrizioni delle sessioni](https://platform.claude.com/docs/it/manage-claude/compliance-sessions). Consulta [Configurare la Compliance API](https://platform.claude.com/docs/it/manage-claude/compliance-api-access).
</Note>

<Check>
  **Scope richiesto:** `read:compliance_user_data` sulla Compliance Access Key. Gli endpoint di eliminazione richiedono anche `delete:compliance_user_data`.

  **Prerequisito:** Nessuno per elencare le chat a livello di organizzazione. Per filtrare l'elenco delle chat su utenti specifici, ti servono gli ID utente ottenuti da [Elencare gli utenti dell'organizzazione](https://platform.claude.com/docs/it/manage-claude/compliance-org-data#list-organization-users). Gli altri endpoint di questa pagina accettano direttamente gli ID delle risorse.
</Check>

Gli endpoint di questa pagina espongono ai revisori della conformità il contenuto delle chat, i file caricati, i progetti e gli allegati dei progetti di Claude Enterprise. Supportano le esportazioni di eDiscovery (electronic discovery, ovvero indagine elettronica), l'applicazione delle policy di "data loss prevention" (prevenzione della perdita di dati), o DLP, e le risposte alle richieste di eliminazione degli account. Il contenuto di chat, file e progetti viene conservato per tutto il tempo consentito dalla policy di conservazione della tua organizzazione. Quando un utente elimina una chat in claude.ai, il contenuto dei suoi messaggi, i file allegati, i file generati dagli strumenti e gli artifact vengono eliminati insieme a essa. La Compliance API continua a elencare la chat, con `deleted_at` popolato e un `name` vuoto, e restituisce i suoi messaggi senza il loro contenuto. Le chat che sono state eliminate definitivamente (hard-deleted), tramite la Compliance API stessa o dopo la scadenza della finestra di conservazione dell'organizzazione, non sono recuperabili.

Entrambi gli scope vengono concessi solo sulle Compliance Access Key (`sk-ant-api01-...`) create in claude.ai; consulta [Configurare la Compliance API](https://platform.claude.com/docs/it/manage-claude/compliance-api-access) per crearne una. Lo scope `read:compliance_user_data` copre il recupero; `delete:compliance_user_data` è richiesto solo per gli endpoint di eliminazione. Gli endpoint per chat, file, progetti e allegati non sono disponibili per le chiavi Admin API (`sk-ant-admin01-...`); le chiamate autenticate con una chiave Admin API restituiscono [403 Forbidden](https://platform.claude.com/docs/it/manage-claude/compliance-errors#403-forbidden).

Gli endpoint di questa pagina effettuano la paginazione in due modi; consulta [Paginare i risultati](https://platform.claude.com/docs/it/manage-claude/compliance-activity-feed#paginate-results) per il riferimento completo. Ogni sezione indica quale schema si applica.

## Recuperare chat e messaggi

Usa [Elencare le chat](https://platform.claude.com/docs/it/api/compliance/apps/chats/list) per scorrere le pagine dei metadati delle chat, quindi [Ottenere i messaggi di una chat](https://platform.claude.com/docs/it/api/compliance/apps/chats/messages/list) per recuperare il contenuto completo dei messaggi di una chat.

Le chat nell'esperienza Claude unificata vengono restituite da questi endpoint come qualsiasi altra chat: una chat che prosegue in una sessione nel cloud viene restituita come un'unica chat. Il lavoro che Claude svolge lì compare nel `content` di ogni messaggio come blocchi `tool_use` (il `name` e l'`input` dello strumento) e blocchi `tool_result` (il suo output, associato tramite `tool_use_id`). La copertura di queste chat è in beta.

L'endpoint dell'elenco delle chat usa per impostazione predefinita l'ambito dell'intera organizzazione: ometti `user_ids[]` per includere tutte le chat della tua organizzazione principale. Aggiungi `order_by=updated_at` per ordinare in base all'ora dell'ultimo aggiornamento. Questa combinazione è il modo consigliato per esportare le chat e mantenere aggiornata un'esportazione, perché un unico ciclo paginato rileva le nuove chat, le chat con nuovi messaggi e le chat eliminate in claude.ai per tutti gli utenti, senza dover prima enumerare gli utenti. La richiesta seguente elenca le chat aggiornate a partire da una determinata data.

```bash cURL
curl --fail-with-body -sS -G \
  "https://api.anthropic.com/v1/compliance/apps/chats" \
  --header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
  --header "anthropic-version: 2023-06-01" \
  --data-urlencode "order_by=updated_at" \
  --data-urlencode "updated_at.gte=2025-06-01T00:00:00Z" \
  --data-urlencode "limit=100"
```

```json Response
{
  "data": [
    {
      "id": "claude_chat_01H5CWunD7RpVJ5bHa8RCkja",
      "name": "Product Requirements Discussion",
      "created_at": "2026-04-10T08:09:10Z",
      "updated_at": "2026-04-10T09:10:11Z",
      "deleted_at": null,
      "href": "https://claude.ai/chat/abcdef01-2345-6789-abcd-ef0123456789",
      "model": "claude-opus-5-5",
      "organization_uuid": "91012d09-e48b-438e-a489-1bebfd8fa6f9",
      "project_id": "claude_proj_01KGp4eZNug9ri4kE35RSppq",
      "user": {
        "id": "user_01XyDMpzjS89pFZXqSFUBDr6",
        "email_address": "user@example.com"
      }
    }
  ],
  "has_more": true,
  "first_id": "eyJrIjogInVwZGF0ZWRfYXQiLCAidCI6ICIyMDI2LTA0LTEwVDA5OjEwOjExKzAwOjAwIiwgImlkIjogImFiY2RlZjAxLS4uLiJ9",
  "last_id": "eyJrIjogInVwZGF0ZWRfYXQiLCAidCI6ICIyMDI2LTA0LTEwVDA5OjEwOjExKzAwOjAwIiwgImlkIjogImFiY2RlZjAxLS4uLiJ9"
}
```

I risultati sono ordinati in modo crescente in base al campo `order_by`, a partire dal più vecchio, con i pareggi risolti tramite `id`. La paginazione usa i campi "cursor" (cursore) standard `first_id`/`last_id`/`has_more` descritti in [Paginare i risultati](https://platform.claude.com/docs/it/manage-claude/compliance-activity-feed#paginate-results). Per avanzare verso le chat più recenti, passa il `last_id` della risposta come `after_id` nella richiesta successiva.

Questo avanzamento è anche il modo in cui mantieni aggiornata un'esportazione tra un'esecuzione e l'altra: salva il `last_id` dell'ultima pagina e riprendi da esso come `after_id` nell'esecuzione successiva. Poiché l'elenco è ordinato per `updated_at`, una chat ricompare dopo il cursore salvato quando riceve un nuovo messaggio, viene spostata all'interno o all'esterno di un progetto oppure viene eliminata in claude.ai. Ogni esecuzione incrementale restituisce quindi sia le chat completamente nuove sia le chat meno recenti che nel frattempo sono cambiate in uno di questi modi. Altre modifiche, come una ridenominazione, non garantiscono che una chat ricompaia. Elabora i risultati in modo idempotente, usando come chiave l'`id` della chat, per gestire queste ricomparse. Una chat che ricompare con `deleted_at` valorizzato non ha più contenuti da recuperare, quindi trattala come eliminata anziché come aggiornata.

A queste query sull'intera organizzazione si applicano alcuni vincoli. I cursori sono opachi e legati alla chiave di ordinamento, quindi un `after_id` emesso con un valore di `order_by` viene rifiutato con un errore 400 se usato con l'altro. Anche i limiti del filtro temporale devono corrispondere alla chiave di ordinamento: abbina i limiti `updated_at.*` a `order_by=updated_at` e i limiti `created_at.*` al valore predefinito `order_by=created_at`. La paginazione all'indietro con `before_id` non è supportata e il filtro `project_ids[]` non è disponibile. Consulta [Elencare le chat](https://platform.claude.com/docs/it/api/compliance/apps/chats/list) per il riferimento completo dei filtri.

Per limitare invece l'elenco a utenti specifici (ad esempio, per un "legal hold" (blocco legale) su custodi designati), passa da 1 a 10 valori `user_ids[]`. Ottieni gli ID da [Elencare gli utenti dell'organizzazione](https://platform.claude.com/docs/it/manage-claude/compliance-org-data#list-organization-users). Le query filtrate per utente ordinano sempre per `created_at` (passare `order_by=updated_at` restituisce un errore 400) e supportano sia `after_id` sia `before_id`. Il filtro per `project_ids[]` è disponibile solo in questa forma filtrata per utente. La combinazione di `user_ids[]` con qualsiasi limite `updated_at.*` è deprecata e verrà rifiutata con un errore 400 dopo il 2026-09-22; per mantenere aggiornato un insieme di custodi in base all'ora di aggiornamento, esegui l'avanzamento sull'intera organizzazione con `order_by=updated_at` senza `user_ids[]` e seleziona dai risultati le chat dei custodi, e mantieni l'elenco filtrato per utente per le esportazioni ordinate per `created_at`.

```bash cURL
curl --fail-with-body -sS -G \
  "https://api.anthropic.com/v1/compliance/apps/chats" \
  --header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
  --header "anthropic-version: 2023-06-01" \
  --data-urlencode "user_ids[]=user_01XyDMpzjS89pFZXqSFUBDr6" \
  --data-urlencode "created_at.gte=2025-06-01T00:00:00Z" \
  --data-urlencode "limit=100"
```

La risposta dell'elenco contiene solo i metadati delle chat. Per ottenere il contenuto effettivo delle chat, i file allegati e gli artifact inline (documenti strutturati che Claude genera all'interno di una chat), prosegui con l'endpoint dei messaggi per ciascun ID di chat:

```bash cURL
chat_id="claude_chat_01H5CWunD7RpVJ5bHa8RCkja"

curl --fail-with-body -sS \
  "https://api.anthropic.com/v1/compliance/apps/chats/$chat_id/messages" \
  --header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
  --header "anthropic-version: 2023-06-01"
```

L'endpoint dei messaggi restituisce i metadati della chat e un array `chat_messages` ordinato per `created_at`. Quando `limit` è omesso, l'intero insieme di messaggi viene restituito in un'unica risposta; passa `limit`, `after_id` o `before_id` per scorrere le pagine di chat molto lunghe. L'endpoint accetta anche limiti di intervallo `created_at.*` e `updated_at.*` (`gt`, `gte`, `lt`, `lte`) e un parametro `order` (`asc` o `desc`). Consulta [Ottenere i messaggi di una chat](https://platform.claude.com/docs/it/api/compliance/apps/chats/messages/list) per l'elenco completo dei parametri. Per i messaggi dell'utente, `created_at` indica quando il messaggio è stato inviato; per i messaggi dell'assistente, indica quando Claude ha terminato di generare il messaggio. Ogni messaggio contiene il proprio contenuto testuale e, se presenti, gli eventuali file caricati (tipicamente nei messaggi dell'utente), gli eventuali file generati dagli strumenti e gli eventuali artifact che l'assistente ha prodotto o aggiornato (tipicamente nei messaggi dell'assistente):

```json Response
{
  "id": "claude_chat_01H5CWunD7RpVJ5bHa8RCkja",
  "name": "Product Requirements Discussion",
  "created_at": "2026-04-10T08:09:10Z",
  "updated_at": "2026-04-10T09:10:11Z",
  "deleted_at": null,
  "href": "https://claude.ai/chat/abcdef01-2345-6789-abcd-ef0123456789",
  "model": "claude-opus-5-5",
  "organization_uuid": "91012d09-e48b-438e-a489-1bebfd8fa6f9",
  "project_id": "claude_proj_01KGp4eZNug9ri4kE35RSppq",
  "user": {
    "id": "user_01XyDMpzjS89pFZXqSFUBDr6",
    "email_address": "user@example.com"
  },
  "chat_messages": [
    {
      "id": "claude_chat_msg_01VnBPkLmtj7YdW5QrXKEA8c",
      "role": "user",
      "created_at": "2026-04-10T08:09:10Z",
      "content": [
        {
          "type": "text",
          "text": "Can you help me draft requirements for our new dashboard feature?"
        }
      ],
      "files": [
        {
          "id": "claude_file_01UaT9wBcDfGhJkLmNpQrSv7",
          "filename": "dashboard_mockup_v1.pdf",
          "mime_type": "application/pdf",
          "size_bytes": 482133,
          "md5": "56367e4d2705cc9c025ad07424e944f0",
          "created_at": "2026-04-10T08:09:10Z"
        }
      ]
    },
    {
      "id": "claude_chat_msg_01M8tFcHwbQ2kY6NpEjRZv4D",
      "role": "assistant",
      "created_at": "2026-04-10T08:09:11Z",
      "content": [
        {
          "type": "text",
          "text": "I'd be happy to help you draft requirements for your dashboard feature..."
        }
      ],
      "generated_files": [
        {
          "id": "claude_gen_file_01TbR8wAcCeFhJkLnPqStUvX",
          "filename": "requirements_summary.csv",
          "mime_type": "text/csv",
          "size_bytes": 2048,
          "md5": "89968669461d95416549937168269d6b"
        }
      ],
      "artifacts": [
        {
          "id": "claude_artifact_01HqRsTuVwXyZa2BcDeFgH4J",
          "version_id": "claude_artifact_version_01KmNpQrSt3UvWxYz5AbCdEfG",
          "title": "Dashboard Requirements Draft",
          "artifact_type": "text/markdown"
        }
      ]
    }
  ],
  "has_more": false,
  "first_id": "eyJtc2dfdXVpZCI6ICIwZjcwYjA2Ni0uLi4ifQ==",
  "last_id": "eyJtc2dfdXVpZCI6ICJhNGUwYjE3Mi0uLi4ifQ=="
}
```

`files`, `generated_files` e `artifacts` possono ciascuno essere `null` in un determinato messaggio. `files` sono i file e gli allegati di testo (ad esempio PDF, immagini, fogli di calcolo, documenti e testo incollato) che l'utente ha allegato al messaggio, così come claude.ai li ha memorizzati. `generated_files` sono file binari (ad esempio PDF, fogli di calcolo o presentazioni) che l'assistente ha creato durante la conversazione tramite il "tool use" (uso degli strumenti). `artifacts` sono documenti con versioni (ad esempio codice o markdown) che l'assistente ha generato o aggiornato nella propria risposta; un artifact può essere revisionato in più turni dell'assistente nella stessa chat, e ogni revisione compare come un nuovo `version_id` sotto lo stesso `id` dell'artifact. Passa l'`id` di ciascuna voce (o il `version_id` per gli artifact) all'endpoint di contenuto corrispondente in [Recuperare file e artifact](https://platform.claude.com/docs/it/manage-claude/compliance-content-data#retrieve-files-and-artifacts) per scaricarla.

## Recuperare file e artifact

File e artifact vengono scaricati tramite ID. Ad eccezione dei documenti di Claude Docs (vedi la fine di questa sezione), non vengono elencati in modo indipendente. Gli ID provengono dall'endpoint dei messaggi delle chat in [Recuperare chat e messaggi](https://platform.claude.com/docs/it/manage-claude/compliance-content-data#retrieve-chats-and-messages) (gli array `files`, `generated_files` e `artifacts` di ciascun messaggio) oppure, per i caricamenti a livello di progetto, dall'[endpoint degli allegati del progetto](https://platform.claude.com/docs/it/manage-claude/compliance-content-data#retrieve-projects-and-attachments).

Scegli l'endpoint che corrisponde al tuo tipo di ID e ai dati di cui hai bisogno. Lo stesso endpoint di contenuto dei file serve sia i file delle chat sia i file dei progetti.

| Hai                            | Vuoi                                                       | Usa questo endpoint                                                                                                                      |
| ------------------------------ | ---------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| ID `claude_file_*`             | Il contenuto del file                                      | [Scaricare il contenuto di un file](https://platform.claude.com/docs/it/api/compliance/apps/chats/files/download)                        |
| ID `claude_file_*`             | Solo i metadati del file                                   | [Ottenere i metadati di un file](https://platform.claude.com/docs/it/api/compliance/apps/chats/files/retrieve)                           |
| ID `claude_gen_file_*`         | Il contenuto binario di un file generato da uno strumento  | [Scaricare un file generato da Claude](https://platform.claude.com/docs/it/api/compliance/apps/chats/generated_files/download)           |
| ID `claude_gen_file_*`         | Solo i metadati di un file generato da uno strumento       | [Ottenere i metadati di un file generato](https://platform.claude.com/docs/it/api/compliance/apps/chats/generated_files/retrieve)        |
| ID `claude_artifact_version_*` | Il testo di una versione di artifact                       | [Scaricare il contenuto di un artifact](https://platform.claude.com/docs/it/api/compliance/apps/artifacts/download)                      |
| ID `claude_artifact_version_*` | Solo i metadati della versione di artifact                 | [Ottenere i metadati di un artifact](https://platform.claude.com/docs/it/api/compliance/apps/artifacts/retrieve)                         |
| ID `claude_proj_doc_*`         | Il contenuto in testo semplice di un documento di progetto | [Ottenere il contenuto di un documento di progetto](https://platform.claude.com/docs/it/api/compliance/apps/projects/documents/retrieve) |
| ID `claude_proj_doc_*`         | Solo i metadati di un documento di progetto                | [Ottenere i metadati di un documento di progetto](https://platform.claude.com/docs/it/api/compliance/apps/projects/documents/metadata)   |

L'endpoint di contenuto dei file trasmette in streaming il contenuto che claude.ai ha archiviato per il file come risposta binaria a blocchi (chunked). Tale contenuto non è sempre identico al file caricato dall'utente. Le immagini possono essere servite come copia elaborata anziché come byte caricati. Alcuni documenti allegati alle chat (ad esempio file Word, file PowerPoint e alcuni PDF) vengono archiviati come il testo che claude.ai ha estratto da essi. Per questi documenti, l'endpoint restituisce il testo estratto con il nome del file originale, e il documento originale non è disponibile tramite la Compliance API. I campi `size_bytes` e `md5` descrivono il contenuto archiviato anziché il file caricato. Il nome del file e il `mime_type` possono comunque indicare il formato del documento caricato. Identifica il formato di un file dai byte restituiti, non dal suo nome o dal tipo dichiarato.

La risposta contiene queste intestazioni:

* `Content-Disposition: attachment; filename*=utf-8''<percent-encoded filename>` contiene il nome del file caricato originale nella forma estesa RFC 5987. La forma estesa viene usata per ogni nome di file, non solo per quelli non ASCII.
* `Content-Type` contiene il tipo MIME registrato per il contenuto archiviato, che per un documento archiviato come testo estratto può comunque indicare il formato del documento originale.
* `Content-MD5` contiene il digest MD5 dei byte serviti, codificato in base64 come specificato nella RFC 1864.
* `Transfer-Encoding: chunked` è sempre impostato.

```bash cURL
file_id="claude_file_01UaT9wBcDfGhJkLmNpQrSv7"

curl --fail-with-body -sS \
  "https://api.anthropic.com/v1/compliance/apps/chats/files/$file_id/content" \
  --header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
  --header "anthropic-version: 2023-06-01" \
  --output "dashboard_mockup_v1.pdf"
```

In curl, l'opzione `--remote-header-name` (`-J`), che normalmente salva un download con il nome di file indicato in `Content-Disposition`, non legge la forma `filename*`, quindi assegna tu il nome al file salvato con `--output`. In uno script, prendi il nome dal campo `filename` del file nella risposta dei messaggi della chat o di [Ottieni i metadati del file](https://platform.claude.com/docs/it/api/compliance/apps/chats/files/retrieve), oppure decodifica `filename*`. In entrambi i casi, si tratta del nome che l'utente ha dato al file caricato, quindi consideralo non attendibile prima di usarlo come percorso di output: mantieni solo il nome base, consenti solo caratteri sicuri per il tuo filesystem e rifiuta i nomi che iniziano con `-` o `.`.

A differenza dell'endpoint del contenuto dei file, l'endpoint del contenuto degli artifact restituisce un oggetto JSON. Passa il `version_id` di una delle voci nell'array `artifacts` di un messaggio dell'assistente, non l'`id` stabile dell'artifact; ogni nuova versione di un artifact ha il proprio `version_id`. Il campo `content` della risposta contiene esattamente il testo di quella versione, e i suoi campi `title` e `artifact_type` descrivono l'artifact. [Ottieni i metadati dell'artifact](https://platform.claude.com/docs/it/api/compliance/apps/artifacts/retrieve) calcola `size_bytes` e `md5` sulla codifica UTF-8 di quel testo, quindi confrontali con il valore di `content` anziché con l'intero corpo della risposta.

I documenti di Claude Docs vengono elencati separatamente, da [Elencare gli artifact di codice](https://platform.claude.com/docs/it/api/compliance/code/artifacts/list), con `artifact_type` impostato su `claude_docs`. L'elenco `versions` di un documento è vuoto e il suo `published_version_id` è `null`. Per scaricare il testo corrente di un documento, chiama `GET /v1/compliance/apps/code/artifacts/{artifact_id}/content?multi_file_format=zip`. Restituisce un archivio ZIP con un file Word (.docx) per ogni scheda che contiene testo. Commenti, file caricati e cronologia delle modifiche non sono inclusi. Il download di Claude Docs tramite la Compliance API è in beta.

## Recuperare progetti e allegati

I progetti raggruppano chat correlate insieme a istruzioni personalizzate, contenuti della knowledge base e file o documenti di testo allegati. La Compliance API espone i metadati dei progetti, i dettagli dei progetti e l'elenco degli allegati appartenenti a un progetto.

* [Elencare i progetti](https://platform.claude.com/docs/it/api/compliance/apps/projects/list)
* [Ottenere i dettagli di un progetto](https://platform.claude.com/docs/it/api/compliance/apps/projects/retrieve)
* [Elencare gli allegati di un progetto](https://platform.claude.com/docs/it/api/compliance/apps/projects/attachments/list)
* [Ottenere il contenuto di un documento di progetto](https://platform.claude.com/docs/it/api/compliance/apps/projects/documents/retrieve)

I risultati dei progetti sono ordinati per data di creazione in modo crescente. I risultati degli allegati sono ordinati per `created_at` in modo crescente, con i pareggi risolti tramite `id`. Le risposte dell'elenco dei progetti e dell'elenco degli allegati effettuano la paginazione con un token di pagina opaco `next_page` invece dei cursori `first_id`/`last_id` usati dalle chat e dall'Activity Feed. Passa il token come parametro di query `page` nella richiesta successiva.

### File di progetto e documenti di progetto

Un allegato di progetto ha una di due forme distinte, identificate dal discriminatore `type` di ogni voce:

Le voci con `type` uguale a `project_file` sono file caricati (PDF, immagini, fogli di calcolo) i cui ID iniziano con `claude_file_`; scaricali con [Scaricare il contenuto di un file](https://platform.claude.com/docs/it/api/compliance/apps/chats/files/download). Le voci con `type` uguale a `project_doc` sono documenti in testo semplice (sempre `text/plain`) i cui ID iniziano con `claude_proj_doc_`, inclusi documenti come i file Word che claude.ai converte in testo quando vengono aggiunti a un progetto; recuperali con [Ottenere il contenuto di un documento di progetto](https://platform.claude.com/docs/it/api/compliance/apps/projects/documents/retrieve).

Un consumer che scorre l'elenco degli allegati deve diramare in base a `type` e chiamare l'endpoint di contenuto corrispondente per ogni voce. La richiesta seguente elenca una pagina di allegati; effettua la paginazione passando `next_page` come parametro `page` finché `has_more` non è `false`.

```bash cURL
project_id="claude_proj_01KGp4eZNug9ri4kE35RSppq"

curl --fail-with-body -sS -G \
  "https://api.anthropic.com/v1/compliance/apps/projects/$project_id/attachments" \
  --header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
  --header "anthropic-version: 2023-06-01"
```

```json Response
{
  "data": [
    {
      "id": "claude_file_01UaT9wBcDfGhJkLmNpQrSv7",
      "created_at": "2026-04-10T08:09:10Z",
      "filename": "dashboard_mockup_v1.pdf",
      "mime_type": "application/pdf",
      "size_bytes": 482133,
      "md5": "56367e4d2705cc9c025ad07424e944f0",
      "type": "project_file"
    },
    {
      "id": "claude_proj_doc_01YnT8sBcWvUtXzQpMkRfDgH",
      "created_at": "2026-04-10T08:09:11Z",
      "filename": "requirements.md",
      "mime_type": "text/plain",
      "type": "project_doc"
    }
  ],
  "has_more": false,
  "next_page": null
}
```

## Eliminare contenuti

<Warning>
  Ogni eliminazione riuscita è permanente e immediata. Non esiste una finestra di recupero.
</Warning>

La Compliance API espone endpoint di eliminazione definitiva (hard-delete) per chat, file, documenti di progetto e interi progetti. Una chat eliminata definitivamente non può essere ripristinata e in seguito smette di comparire nelle risposte degli elenchi.

* [Eliminare una chat](https://platform.claude.com/docs/it/api/compliance/apps/chats/delete): rimuove anche i messaggi della chat e gli eventuali file allegati a tali messaggi.
* [Eliminare un file](https://platform.claude.com/docs/it/api/compliance/apps/chats/files/delete): gestisce sia i file delle chat sia i file dei progetti.
* [Eliminare un documento di progetto](https://platform.claude.com/docs/it/api/compliance/apps/projects/documents/delete): rimuove un singolo documento di progetto per ID.
* [Eliminare un progetto](https://platform.claude.com/docs/it/api/compliance/apps/projects/delete): consulta [Scollegare le chat prima di eliminare un progetto](https://platform.claude.com/docs/it/manage-claude/compliance-content-data#detach-chats-before-deleting-a-project).

Per una chat nell'esperienza Claude unificata, [Eliminare una chat](https://platform.claude.com/docs/it/api/compliance/apps/chats/delete) elimina anche le sessioni nel cloud avviate per la chat. Non elimina le sessioni avviate da tali sessioni.

Tutti e quattro gli endpoint richiedono lo scope `delete:compliance_user_data`, che viene concesso separatamente dallo scope di lettura al momento della creazione della Compliance Access Key.

La richiesta seguente elimina una chat. Lo stesso schema si applica agli altri endpoint di eliminazione; cambia solo l'URL.

```bash cURL
# ATTENZIONE: questa operazione elimina DEFINITIVAMENTE la chat, tutti i suoi messaggi
# e gli eventuali file allegati. L'eliminazione è immediata e irreversibile.
# Richiede lo scope `delete:compliance_user_data`, concesso separatamente
# da `read:compliance_user_data` alla creazione della Compliance Access Key.
# Assicurati di avere un'autorizzazione esplicita prima di eseguirla.

chat_id="claude_chat_01H5CWunD7RpVJ5bHa8RCkja"

curl --fail-with-body -sS -X DELETE \
  "https://api.anthropic.com/v1/compliance/apps/chats/$chat_id" \
  --header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
  --header "anthropic-version: 2023-06-01"
```

```json Response
{
  "id": "claude_chat_01H5CWunD7RpVJ5bHa8RCkja",
  "type": "claude_chat_deleted"
}
```

Ogni eliminazione riuscita restituisce un piccolo involucro di conferma con un `id` e un discriminatore `type`. L'endpoint delle chat restituisce `claude_chat_deleted`; controlla il campo `type` prima di considerare confermata l'eliminazione. Consulta lo schema di risposta nella pagina di [riferimento API](https://platform.claude.com/docs/it/api/compliance/apps) di ciascun endpoint di eliminazione per il valore esatto di `type` restituito dagli altri endpoint.

### Scollegare le chat prima di eliminare un progetto

Un progetto non può essere eliminato finché vi rimangono chat collegate. L'API restituisce 409 con questo corpo:

```json
{
  "error": {
    "type": "invalid_request_error",
    "message": "The \"claude_proj_01KGp4eZNug9ri4kE35RSppq\" project cannot be deleted as it has chats attached to it. Delete or detach all chats, and try deleting the project again."
  }
}
```

Per risolvere, elenca le chat del progetto con `GET /v1/compliance/apps/chats?user_ids[]={user_id}&project_ids[]={project_id}` (il filtro `project_ids[]` richiede almeno un valore `user_ids[]`; enumera gli ID tramite [Elencare gli utenti dell'organizzazione](https://platform.claude.com/docs/it/manage-claude/compliance-org-data#list-organization-users)), elimina ciascuna con `DELETE /v1/compliance/apps/chats/{claude_chat_id}` (oppure spostala fuori dal progetto da claude.ai), quindi riprova l'eliminazione del progetto.

## Passaggi successivi

<CardGroup cols={2}>
  <Card title="Riferimento API" href="https://platform.claude.com/docs/it/api/compliance/apps">
    Lo schema completo di richiesta e risposta per ogni endpoint di chat, file, progetti e artifact.
  </Card>

  <Card title="Recuperare le trascrizioni delle sessioni" href="https://platform.claude.com/docs/it/manage-claude/compliance-sessions">
    Elenca le sessioni che i tuoi utenti eseguono nelle app e negli agenti Claude, come Cowork e Claude Code, e recupera le loro trascrizioni.
  </Card>

  <Card title="Elencare organizzazioni, utenti, ruoli, gruppi e impostazioni" href="https://platform.claude.com/docs/it/manage-claude/compliance-org-data">
    Enumera le persone e i team associati alle chat e ai progetti di questa pagina.
  </Card>
</CardGroup>
