---
title: Récupérer et supprimer des chats, des fichiers et des projets
url: https://platform.claude.com/docs/fr/manage-claude/compliance-content-data
description: Accédez au contenu des chats, aux pièces jointes et aux projets des organisations claude.ai via la Compliance API.
---

<Note>
  Les points de terminaison de cette page sont disponibles uniquement pour les organisations Claude Enterprise. Ils récupèrent et suppriment les chats, fichiers et projets claude.ai ; les transcriptions de sessions dans des applications telles que Cowork et Claude Code sont traitées dans [Récupérer les transcriptions de sessions](https://platform.claude.com/docs/fr/manage-claude/compliance-sessions). Consultez [Configurer la Compliance API](https://platform.claude.com/docs/fr/manage-claude/compliance-api-access).
</Note>

<Check>
  **Portée requise :** `read:compliance_user_data` sur la Compliance Access Key. Les points de terminaison de suppression nécessitent également `delete:compliance_user_data`.

  **Prérequis :** Aucun pour lister les chats à l'échelle de l'organisation. Pour filtrer la liste des chats sur des utilisateurs spécifiques, vous avez besoin des identifiants d'utilisateurs obtenus via [Lister les utilisateurs de l'organisation](https://platform.claude.com/docs/fr/manage-claude/compliance-org-data#list-organization-users). Les autres points de terminaison de cette page acceptent directement des identifiants de ressources.
</Check>

Les points de terminaison de cette page exposent le contenu des chats, les fichiers téléversés, les projets et les pièces jointes de projets Claude Enterprise aux responsables de la conformité. Ils prennent en charge les exports d'« eDiscovery » (investigation électronique), l'application de la « data loss prevention » (prévention des pertes de données), ou DLP, et les réponses aux demandes de suppression de compte. Le contenu des chats, fichiers et projets est conservé aussi longtemps que la politique de rétention de votre organisation le permet. Lorsqu'un utilisateur supprime un chat dans claude.ai, le contenu de ses messages, les fichiers joints, les fichiers générés par des outils et les artifacts sont supprimés avec lui. La Compliance API liste toujours le chat, avec `deleted_at` renseigné et un `name` vide, et renvoie ses messages sans leur contenu. Les chats qui ont été supprimés définitivement (via la Compliance API elle-même, ou après expiration de la fenêtre de rétention de l'organisation) ne sont pas récupérables.

Les deux portées ne sont accordées que sur les Compliance Access Keys (`sk-ant-api01-...`) créées dans claude.ai ; consultez [Configurer la Compliance API](https://platform.claude.com/docs/fr/manage-claude/compliance-api-access) pour en provisionner une. La portée `read:compliance_user_data` couvre la récupération ; `delete:compliance_user_data` n'est requise que pour les points de terminaison de suppression. Les points de terminaison de chats, fichiers, projets et pièces jointes ne sont pas disponibles pour les clés Admin API (`sk-ant-admin01-...`) ; les appels authentifiés avec une clé Admin API renvoient [403 Forbidden](https://platform.claude.com/docs/fr/manage-claude/compliance-errors#403-forbidden).

Les points de terminaison de cette page paginent de deux manières ; consultez [Paginer les résultats](https://platform.claude.com/docs/fr/manage-claude/compliance-activity-feed#paginate-results) pour la référence complète. Chaque section indique quel schéma s'applique.

## Récupérer les chats et les messages

Utilisez [Lister les chats](https://platform.claude.com/docs/fr/api/compliance/apps/chats/list) pour parcourir les métadonnées des chats page par page, puis [Obtenir les messages d'un chat](https://platform.claude.com/docs/fr/api/compliance/apps/chats/messages/list) pour récupérer le contenu complet des messages d'un chat.

Les chats de l'expérience Claude unifiée sont renvoyés par ces points de terminaison comme n'importe quel autre chat : un chat qui se poursuit dans une session dans le cloud est renvoyé comme un seul chat. Le travail que Claude y effectue apparaît dans le `content` de chaque message sous forme de blocs `tool_use` (le `name` et l'`input` de l'outil) et de blocs `tool_result` (sa sortie, associée par `tool_use_id`). La couverture de ces chats est en bêta.

Par défaut, le point de terminaison de liste des chats couvre toute l'organisation : omettez `user_ids[]` pour inclure tous les chats de votre organisation parente. Ajoutez `order_by=updated_at` pour trier par date de dernière mise à jour. Cette combinaison est la méthode recommandée pour exporter les chats et maintenir un export à jour. En effet, une seule boucle paginée récupère, pour tous les utilisateurs, les nouveaux chats, les chats ayant reçu de nouveaux messages et les chats supprimés dans claude.ai, sans avoir à énumérer les utilisateurs au préalable. La requête suivante liste les chats mis à jour depuis une date donnée.

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

Les résultats sont triés par ordre croissant selon le champ `order_by`, les plus anciens en premier, les égalités étant départagées par `id`. La pagination utilise les champs de curseur standard `first_id`/`last_id`/`has_more` décrits dans [Paginer les résultats](https://platform.claude.com/docs/fr/manage-claude/compliance-activity-feed#paginate-results). Pour avancer vers les chats plus récents, repassez le `last_id` de la réponse comme `after_id` dans la requête suivante.

Ce parcours vers l'avant permet aussi de maintenir un export à jour d'une exécution à l'autre : conservez le `last_id` de la dernière page et reprenez à partir de celui-ci comme `after_id` lors de l'exécution suivante. Comme la liste est triée par `updated_at`, un chat réapparaît après votre curseur enregistré lorsqu'il reçoit un nouveau message, lorsqu'il est déplacé dans un projet ou hors d'un projet, ou lorsqu'il est supprimé dans claude.ai. Chaque exécution incrémentale renvoie donc à la fois les tout nouveaux chats et les chats plus anciens qui ont depuis changé de l'une de ces manières. Les autres modifications, comme un renommage, ne garantissent pas la réapparition d'un chat. Traitez les résultats de manière idempotente, en utilisant l'`id` du chat comme clé, pour gérer ces réapparitions. Un chat qui revient avec `deleted_at` renseigné n'a plus de contenu à récupérer : traitez-le donc comme supprimé plutôt que comme mis à jour.

Quelques contraintes s'appliquent à ces requêtes à l'échelle de l'organisation. Les curseurs sont opaques et liés à la clé de tri, de sorte qu'un `after_id` émis sous une valeur de `order_by` est rejeté avec une erreur 400 sous l'autre. Les bornes de filtre temporel doivent également correspondre à la clé de tri : associez les bornes `updated_at.*` à `order_by=updated_at`, et les bornes `created_at.*` à la valeur par défaut `order_by=created_at`. La pagination arrière avec `before_id` n'est pas prise en charge, et le filtre `project_ids[]` n'est pas disponible. Consultez [Lister les chats](https://platform.claude.com/docs/fr/api/compliance/apps/chats/list) pour la référence complète des filtres.

Pour restreindre la liste à des utilisateurs spécifiques (par exemple, une conservation légale visant des dépositaires nommés), passez de 1 à 10 valeurs `user_ids[]`. Obtenez les identifiants via [Lister les utilisateurs de l'organisation](https://platform.claude.com/docs/fr/manage-claude/compliance-org-data#list-organization-users). Les requêtes filtrées par utilisateur sont toujours triées par `created_at` (passer `order_by=updated_at` renvoie une erreur 400) et prennent en charge à la fois `after_id` et `before_id`. Le filtrage par `project_ids[]` n'est disponible que sous cette forme filtrée par utilisateur. La combinaison de `user_ids[]` avec une borne `updated_at.*` quelconque est dépréciée et sera rejetée avec une erreur 400 après le 2026-09-22 ; pour maintenir un ensemble de dépositaires à jour par date de mise à jour, exécutez le parcours à l'échelle de l'organisation avec `order_by=updated_at` sans `user_ids[]` et sélectionnez les chats des dépositaires dans ses résultats, et réservez la liste filtrée par utilisateur aux exports ordonnés par `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 réponse de liste ne contient que les métadonnées des chats. Pour extraire le contenu réel des chats, les fichiers joints et les artifacts en ligne (documents structurés que Claude génère à l'intérieur d'un chat), poursuivez avec le point de terminaison des messages pour chaque identifiant de 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"
```

Le point de terminaison des messages renvoie les métadonnées du chat ainsi qu'un tableau `chat_messages` trié par `created_at`. Lorsque `limit` est omis, l'ensemble complet des messages est renvoyé en une seule réponse ; passez `limit`, `after_id` ou `before_id` pour parcourir page par page les chats très longs. Le point de terminaison accepte également des bornes de plage `created_at.*` et `updated_at.*` (`gt`, `gte`, `lt`, `lte`) ainsi qu'un paramètre `order` (`asc` ou `desc`). Consultez [Obtenir les messages d'un chat](https://platform.claude.com/docs/fr/api/compliance/apps/chats/messages/list) pour la liste complète des paramètres. Pour les messages utilisateur, `created_at` correspond au moment où le message a été envoyé ; pour les messages de l'assistant, il correspond au moment où Claude a terminé de générer le message. Chaque message contient son contenu textuel et, le cas échéant, les fichiers téléversés (généralement sur les messages utilisateur), les fichiers générés par des outils et les artifacts que l'assistant a produits ou mis à jour (généralement sur les messages de l'assistant) :

```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` et `artifacts` peuvent chacun être `null` sur un message donné. `files` désigne les fichiers et pièces jointes textuelles (par exemple, PDF, images, feuilles de calcul, documents et texte collé) que l'utilisateur a joints au message, tels que claude.ai les a stockés. `generated_files` désigne les fichiers binaires que l'assistant a créés au cours de la conversation via l'utilisation d'outils (par exemple, PDF, feuilles de calcul ou présentations). `artifacts` désigne les documents versionnés (par exemple, du code ou du markdown) que l'assistant a générés ou mis à jour dans sa réponse ; un artifact peut être révisé sur plusieurs tours de l'assistant dans le même chat, et chaque révision apparaît comme un nouveau `version_id` sous le même `id` d'artifact. Passez l'`id` de chaque entrée (ou le `version_id` pour les artifacts) au point de terminaison de contenu correspondant dans [Récupérer les fichiers et les artifacts](https://platform.claude.com/docs/fr/manage-claude/compliance-content-data#retrieve-files-and-artifacts) pour le télécharger.

## Récupérer les fichiers et les artifacts

Les fichiers et les artifacts sont téléchargés par identifiant. À l'exception des documents Claude Docs (voir la fin de cette section), ils ne sont pas listés indépendamment. Les identifiants proviennent du point de terminaison des messages de chat dans [Récupérer les chats et les messages](https://platform.claude.com/docs/fr/manage-claude/compliance-content-data#retrieve-chats-and-messages) (les tableaux `files`, `generated_files` et `artifacts` de chaque message) ou, pour les fichiers téléversés au niveau du projet, du [point de terminaison des pièces jointes de projet](https://platform.claude.com/docs/fr/manage-claude/compliance-content-data#retrieve-projects-and-attachments).

Choisissez le point de terminaison qui correspond à votre type d'identifiant et aux données dont vous avez besoin. Le même point de terminaison de contenu de fichier sert à la fois les fichiers de chat et les fichiers de projet.

| Vous avez                               | Vous voulez                                                 | Utilisez ce point de terminaison                                                                                                       |
| --------------------------------------- | ----------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| Identifiant `claude_file_*`             | Le contenu du fichier                                       | [Télécharger le contenu d'un fichier](https://platform.claude.com/docs/fr/api/compliance/apps/chats/files/download)                    |
| Identifiant `claude_file_*`             | Les métadonnées du fichier uniquement                       | [Obtenir les métadonnées d'un fichier](https://platform.claude.com/docs/fr/api/compliance/apps/chats/files/retrieve)                   |
| Identifiant `claude_gen_file_*`         | Le contenu binaire d'un fichier généré par un outil         | [Télécharger un fichier généré par Claude](https://platform.claude.com/docs/fr/api/compliance/apps/chats/generated_files/download)     |
| Identifiant `claude_gen_file_*`         | Les métadonnées d'un fichier généré par un outil uniquement | [Obtenir les métadonnées d'un fichier généré](https://platform.claude.com/docs/fr/api/compliance/apps/chats/generated_files/retrieve)  |
| Identifiant `claude_artifact_version_*` | Le texte d'une version d'artifact                           | [Télécharger le contenu d'un artifact](https://platform.claude.com/docs/fr/api/compliance/apps/artifacts/download)                     |
| Identifiant `claude_artifact_version_*` | Les métadonnées de la version d'artifact uniquement         | [Obtenir les métadonnées d'un artifact](https://platform.claude.com/docs/fr/api/compliance/apps/artifacts/retrieve)                    |
| Identifiant `claude_proj_doc_*`         | Le contenu en texte brut d'un document de projet            | [Obtenir le contenu d'un document de projet](https://platform.claude.com/docs/fr/api/compliance/apps/projects/documents/retrieve)      |
| Identifiant `claude_proj_doc_*`         | Les métadonnées d'un document de projet uniquement          | [Obtenir les métadonnées d'un document de projet](https://platform.claude.com/docs/fr/api/compliance/apps/projects/documents/metadata) |

Le point de terminaison de contenu de fichier diffuse en streaming le contenu que claude.ai a stocké pour le fichier sous forme de réponse binaire fragmentée. Ce contenu n'est pas toujours identique au fichier que l'utilisateur a téléversé. Les images peuvent être servies sous forme de copie traitée plutôt que sous forme des octets téléversés. Certains documents joints aux chats (par exemple, les fichiers Word, les fichiers PowerPoint et certains PDF) sont stockés sous forme du texte que claude.ai en a extrait. Pour ces documents, le point de terminaison renvoie le texte extrait sous le nom de fichier d'origine, et le document d'origine n'est pas disponible via la Compliance API. Les champs `size_bytes` et `md5` décrivent le contenu stocké plutôt que le fichier téléversé. Le nom de fichier et le `mime_type` peuvent toujours désigner le format du document téléversé. Identifiez le format d'un fichier à partir des octets renvoyés, et non à partir de son nom ou de son type déclaré.

La réponse contient les en-têtes suivants :

* `Content-Disposition: attachment; filename*=utf-8''<percent-encoded filename>` contient le nom de fichier d'origine du téléversement sous la forme étendue RFC 5987. La forme étendue est utilisée pour tous les noms de fichiers, et pas seulement pour les noms non ASCII.
* `Content-Type` contient le type MIME enregistré pour le contenu stocké, qui, pour un document stocké sous forme de texte extrait, peut toujours désigner le format du document d'origine.
* `Content-MD5` contient l'empreinte MD5 des octets servis, encodée en base64 comme spécifié dans la RFC 1864.
* `Transfer-Encoding: chunked` est toujours défini.

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

Dans curl, l'option `--remote-header-name` (`-J`), qui enregistre normalement un téléchargement sous le nom de fichier indiqué par `Content-Disposition`, ne lit pas la forme `filename*` ; nommez donc vous-même le fichier enregistré avec `--output`. Dans un script, récupérez le nom à partir du champ `filename` du fichier dans la réponse des messages de conversation ou de [Obtenir les métadonnées d'un fichier](https://platform.claude.com/docs/fr/api/compliance/apps/chats/files/retrieve), ou décodez `filename*`. Dans les deux cas, il s'agit du nom que l'utilisateur a donné au fichier téléversé ; considérez-le donc comme non fiable avant de l'utiliser comme chemin de sortie : ne conservez que le nom de base, n'autorisez que les caractères sûrs pour votre système de fichiers et refusez les noms commençant par `-` ou `.`.

Contrairement au point de terminaison de contenu de fichier, le point de terminaison de contenu d'artifact renvoie un objet JSON. Transmettez le `version_id` de l'une des entrées du tableau `artifacts` d'un message de l'assistant, et non l'`id` stable de l'artifact ; chaque nouvelle version d'un artifact possède son propre `version_id`. Le champ `content` de la réponse contient exactement le texte de cette version, et ses champs `title` et `artifact_type` décrivent l'artifact. [Obtenir les métadonnées d'un artifact](https://platform.claude.com/docs/fr/api/compliance/apps/artifacts/retrieve) calcule `size_bytes` et `md5` sur l'encodage UTF-8 de ce texte ; comparez-les donc avec la valeur de `content` plutôt qu'avec le corps complet de la réponse.

Les documents Claude Docs sont listés séparément, par [Lister les artifacts de code](https://platform.claude.com/docs/fr/api/compliance/code/artifacts/list), avec `artifact_type` défini sur `claude_docs`. La liste `versions` d'un document est vide et son `published_version_id` vaut `null`. Pour télécharger le texte actuel d'un document, appelez `GET /v1/compliance/apps/code/artifacts/{artifact_id}/content?multi_file_format=zip`. Cet appel renvoie une archive ZIP contenant un fichier Word (.docx) pour chaque onglet contenant du texte. Les commentaires, les fichiers téléversés et l'historique des modifications ne sont pas inclus. Le téléchargement de Claude Docs via la Compliance API est en bêta.

## Récupérer les projets et les pièces jointes

Les projets regroupent des chats liés avec des instructions personnalisées, du contenu de base de connaissances et des fichiers ou documents texte joints. La Compliance API expose les métadonnées des projets, les détails des projets et la liste des pièces jointes appartenant à un projet.

* [Lister les projets](https://platform.claude.com/docs/fr/api/compliance/apps/projects/list)
* [Obtenir les détails d'un projet](https://platform.claude.com/docs/fr/api/compliance/apps/projects/retrieve)
* [Lister les pièces jointes d'un projet](https://platform.claude.com/docs/fr/api/compliance/apps/projects/attachments/list)
* [Obtenir le contenu d'un document de projet](https://platform.claude.com/docs/fr/api/compliance/apps/projects/documents/retrieve)

Les résultats de projets sont triés par date de création croissante. Les résultats de pièces jointes sont triés par `created_at` croissant, les égalités étant départagées par `id`. Les réponses de liste de projets et de liste de pièces jointes paginent avec un jeton de page opaque `next_page` au lieu des curseurs `first_id`/`last_id` utilisés par les chats et l'Activity Feed. Repassez le jeton comme paramètre de requête `page` dans la requête suivante.

### Fichiers de projet et documents de projet

Une pièce jointe de projet prend l'une de deux formes distinctes, identifiées par le discriminateur `type` de chaque entrée :

Les entrées dont le `type` est `project_file` sont des fichiers téléversés (PDF, images, feuilles de calcul) dont les identifiants commencent par `claude_file_` ; téléchargez-les avec [Télécharger le contenu d'un fichier](https://platform.claude.com/docs/fr/api/compliance/apps/chats/files/download). Les entrées dont le `type` est `project_doc` sont des documents en texte brut (toujours `text/plain`) dont les identifiants commencent par `claude_proj_doc_`, y compris des documents tels que des fichiers Word que claude.ai convertit en texte lorsqu'ils sont ajoutés à un projet ; récupérez-les avec [Obtenir le contenu d'un document de projet](https://platform.claude.com/docs/fr/api/compliance/apps/projects/documents/retrieve).

Un consommateur qui parcourt la liste des pièces jointes doit effectuer un branchement sur `type` et appeler le point de terminaison de contenu correspondant pour chaque entrée. La requête suivante liste une page de pièces jointes ; paginez en repassant `next_page` comme paramètre `page` jusqu'à ce que `has_more` soit `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
}
```

## Supprimer du contenu

<Warning>
  Toute suppression réussie est permanente et immédiate. Il n'existe aucune fenêtre de récupération.
</Warning>

La Compliance API expose des points de terminaison de suppression définitive pour les chats, les fichiers, les documents de projet et les projets entiers. Un chat supprimé définitivement ne peut pas être restauré, et il cesse ensuite d'apparaître dans les réponses de liste.

* [Supprimer un chat](https://platform.claude.com/docs/fr/api/compliance/apps/chats/delete) : supprime également les messages du chat et tous les fichiers joints à ces messages.
* [Supprimer un fichier](https://platform.claude.com/docs/fr/api/compliance/apps/chats/files/delete) : gère à la fois les fichiers de chat et les fichiers de projet.
* [Supprimer un document de projet](https://platform.claude.com/docs/fr/api/compliance/apps/projects/documents/delete) : supprime un seul document de projet par identifiant.
* [Supprimer un projet](https://platform.claude.com/docs/fr/api/compliance/apps/projects/delete) : consultez [Détacher les chats avant de supprimer un projet](https://platform.claude.com/docs/fr/manage-claude/compliance-content-data#detach-chats-before-deleting-a-project).

Pour un chat de l'expérience Claude unifiée, [Supprimer un chat](https://platform.claude.com/docs/fr/api/compliance/apps/chats/delete) supprime également les sessions dans le cloud qui ont été démarrées pour le chat. Ce point de terminaison ne supprime pas les sessions démarrées par ces sessions.

Les quatre points de terminaison nécessitent la portée `delete:compliance_user_data`, qui est accordée séparément de la portée de lecture lors de la création de la Compliance Access Key.

La requête suivante supprime un chat. Le même schéma s'applique aux autres points de terminaison de suppression ; seule l'URL change.

```bash cURL
# AVERTISSEMENT : cette opération supprime DÉFINITIVEMENT la conversation, tous ses messages,
# ainsi que les fichiers joints. La suppression est immédiate et irréversible. Elle
# nécessite la portée `delete:compliance_user_data`, accordée séparément
# de `read:compliance_user_data` lors de la création de la Compliance Access Key.
# Assurez-vous de disposer d'une autorisation explicite avant de l'exécuter.

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

Chaque suppression réussie renvoie une petite enveloppe de confirmation avec un `id` et un discriminateur `type`. Le point de terminaison de chat renvoie `claude_chat_deleted` ; vérifiez le champ `type` avant de considérer la suppression comme confirmée. Consultez le schéma de réponse sur la page de [référence API](https://platform.claude.com/docs/fr/api/compliance/apps) de chaque point de terminaison de suppression pour connaître la valeur exacte de `type` renvoyée par les autres points de terminaison.

### Détacher les chats avant de supprimer un projet

Un projet ne peut pas être supprimé tant que des chats y restent attachés. L'API renvoie 409 avec ce corps :

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

Pour résoudre ce problème, listez les chats du projet avec `GET /v1/compliance/apps/chats?user_ids[]={user_id}&project_ids[]={project_id}` (le filtre `project_ids[]` nécessite au moins une valeur `user_ids[]` ; énumérez les identifiants via [Lister les utilisateurs de l'organisation](https://platform.claude.com/docs/fr/manage-claude/compliance-org-data#list-organization-users)), supprimez chacun d'eux avec `DELETE /v1/compliance/apps/chats/{claude_chat_id}` (ou déplacez-le hors du projet depuis claude.ai), puis réessayez la suppression du projet.

## Étapes suivantes

<CardGroup cols={2}>
  <Card title="Référence API" href="https://platform.claude.com/docs/fr/api/compliance/apps">
    Le schéma complet des requêtes et des réponses pour chaque point de terminaison de chat, de fichier, de projet et d'artifact.
  </Card>

  <Card title="Récupérer les transcriptions de sessions" href="https://platform.claude.com/docs/fr/manage-claude/compliance-sessions">
    Listez les sessions que vos utilisateurs exécutent dans les applications et agents Claude, tels que Cowork et Claude Code, et récupérez leurs transcriptions.
  </Card>

  <Card title="Lister les organisations, utilisateurs, rôles, groupes et paramètres" href="https://platform.claude.com/docs/fr/manage-claude/compliance-org-data">
    Énumérez les personnes et les équipes associées aux chats et aux projets de cette page.
  </Card>
</CardGroup>
