Os endpoints nesta página recuperam e excluem conteúdo do claude.ai, que está disponível apenas para organizações no plano Claude Enterprise. A Compliance API é habilitada mediante solicitação. Consulte Obter acesso à Compliance API.
Escopo necessário: read:compliance_user_data na Compliance Access Key. Os endpoints de exclusão também exigem delete:compliance_user_data.
Pré-requisito: Para listar chats, pelo menos um ID de usuário de Listar usuários da organização. Os outros endpoints nesta página recebem IDs de recursos diretamente.
Os endpoints nesta página expõem conteúdo de chats do claude.ai, uploads de arquivos, projetos e anexos de projetos para revisores de compliance. Eles dão suporte a exportações de "eDiscovery" (descoberta eletrônica), aplicação de "data loss prevention" (prevenção de perda de dados), ou DLP, e respostas a solicitações de exclusão de conta. O conteúdo é retido pelo tempo permitido pela política de retenção da sua organização. Chats que um usuário excluiu de forma reversível (soft delete) no claude.ai permanecem visíveis através da Compliance API com deleted_at preenchido; chats que foram excluídos permanentemente (hard delete) — através da própria Compliance API ou após a expiração da janela de retenção da organização — não são recuperáveis.
Ambos os escopos são concedidos apenas em Compliance Access Keys (sk-ant-api01-...) criadas no claude.ai; consulte Obter acesso à Compliance API para provisionar uma. O escopo read:compliance_user_data cobre a recuperação; delete:compliance_user_data é necessário apenas para os endpoints de exclusão. Os endpoints de chat, arquivo, projeto e anexo não estão disponíveis para chaves de Admin API (sk-ant-admin01-...); chamadas autenticadas com uma chave de Admin API retornam 403 Forbidden.
Os endpoints nesta página paginam de duas maneiras; consulte Paginar resultados para a referência completa. Cada seção indica qual esquema se aplica.
Use Listar chats para percorrer páginas de metadados de chats e, em seguida, Obter mensagens de chat para buscar o conteúdo completo das mensagens de um chat.
O endpoint de listagem de chats exige pelo menos um valor user_ids[] (e aceita até 10 em uma única requisição), portanto enumere os IDs de usuário primeiro com Listar usuários da organização e, em seguida, liste os chats de cada usuário ou de cada lote de usuários. A requisição a seguir lista chats pertencentes a um usuário específico desde uma determinada data.
curl --fail-with-body -sS -G \
"https://api.anthropic.com/v1/compliance/apps/chats" \
--header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
--data-urlencode "user_ids[]=user_01XyDMpzjS89pFZXqSFUBDr6" \
--data-urlencode "organization_ids[]=91012d09-e48b-438e-a489-1bebfd8fa6f9" \
--data-urlencode "created_at.gte=2025-06-01T00:00:00Z" \
--data-urlencode "limit=100"{
"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-4-8",
"organization_uuid": "91012d09-e48b-438e-a489-1bebfd8fa6f9",
"project_id": "claude_proj_01KGp4eZNug9ri4kE35RSppq",
"user": {
"id": "user_01XyDMpzjS89pFZXqSFUBDr6",
"email_address": "[email protected]"
}
}
],
"has_more": true,
"first_id": "claude_chat_01H5CWunD7RpVJ5bHa8RCkja",
"last_id": "claude_chat_01H5CWunD7RpVJ5bHa8RCkja"
}A listagem de chats retorna apenas metadados. Consulte Listar chats para a lista completa de filtros; além do user_ids[] obrigatório, os limites updated_at.* são úteis para revisão incremental de chats que mudaram desde uma exportação anterior.
Os resultados de chats são ordenados por created_at em ordem crescente (mais antigos primeiro), com empates resolvidos por id. A paginação usa os mesmos campos de cursor first_id/last_id/has_more descritos em Paginar resultados; passe last_id como after_id para avançar em direção a chats mais recentes, ou first_id como before_id para retroceder em direção a chats mais antigos.
Para obter o conteúdo real do chat, arquivos anexados e artifacts inline (documentos estruturados que o Claude gera dentro de um chat), faça uma chamada subsequente ao endpoint de mensagens para cada ID de chat:
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"O endpoint de mensagens retorna os metadados do chat mais um array chat_messages ordenado por created_at. Quando limit é omitido, o conjunto completo de mensagens é retornado em uma única resposta; passe limit, after_id ou before_id para paginar chats muito longos. O endpoint também aceita limites de intervalo created_at.* e updated_at.* (gt, gte, lt, lte) e um parâmetro order (asc ou desc). Consulte Obter mensagens de chat para a lista completa de parâmetros. Para mensagens de usuário, created_at é o momento em que a mensagem foi enviada; para mensagens do assistente, é o momento em que o Claude terminou de gerar a mensagem. Cada mensagem contém seu conteúdo de texto e, quando presentes, quaisquer arquivos enviados (normalmente em mensagens de usuário), quaisquer arquivos gerados por ferramentas e quaisquer artifacts que o assistente produziu ou atualizou (normalmente em mensagens do assistente):
{
"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-4-8",
"organization_uuid": "91012d09-e48b-438e-a489-1bebfd8fa6f9",
"project_id": "claude_proj_01KGp4eZNug9ri4kE35RSppq",
"user": {
"id": "user_01XyDMpzjS89pFZXqSFUBDr6",
"email_address": "[email protected]"
},
"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"
}
]
},
{
"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"
}
],
"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 podem ser null em uma determinada mensagem. files são uploads binários (PDFs, imagens, planilhas) que o usuário anexou à mensagem. generated_files são arquivos binários que o assistente criou durante a conversa por meio de uso de ferramentas (por exemplo, PDFs, planilhas ou apresentações de slides). artifacts são documentos versionados (por exemplo, código ou markdown) que o assistente gerou ou atualizou em sua resposta; um artifact pode ser revisado ao longo de vários turnos do assistente no mesmo chat, e cada revisão aparece como um novo version_id sob o mesmo id de artifact. Passe o id de cada entrada (ou version_id para artifacts) ao endpoint de conteúdo correspondente em Recuperar arquivos e artifacts para baixá-lo.
Arquivos e artifacts são baixados por ID, não listados de forma independente. Os IDs vêm do endpoint de mensagens de chat em Recuperar chats e mensagens (os arrays files, generated_files e artifacts em cada mensagem) ou, para uploads no nível de projeto, do endpoint de anexos de projeto.
Escolha o endpoint que corresponde ao seu tipo de ID e aos dados de que você precisa. O mesmo endpoint de conteúdo de arquivo atende tanto arquivos de chat quanto arquivos de projeto.
| Você tem | Você quer | Use este endpoint |
|---|---|---|
ID claude_file_* | O conteúdo binário do arquivo | Baixar conteúdo de arquivo |
ID claude_file_* | Apenas os metadados do arquivo | Obter metadados de arquivo |
ID claude_gen_file_* | O conteúdo binário de um arquivo gerado por ferramenta | Baixar um arquivo gerado pelo Claude |
ID claude_gen_file_* | Apenas os metadados de um arquivo gerado por ferramenta | Obter metadados de arquivo gerado |
ID claude_artifact_version_* | O texto de uma versão de artifact | Baixar conteúdo de artifact |
ID claude_artifact_version_* | Apenas os metadados da versão do artifact | Obter metadados de artifact |
ID claude_proj_doc_* | O conteúdo em texto simples de um documento de projeto | Obter conteúdo de documento de projeto |
ID claude_proj_doc_* | Apenas os metadados de um documento de projeto | Obter metadados de documento de projeto |
O endpoint de conteúdo de arquivo transmite o upload original como uma resposta binária em chunks com estes cabeçalhos:
Content-Disposition: attachment; filename*=utf-8''<percent-encoded filename> contém o nome original do arquivo enviado no formato estendido da RFC 5987. O formato estendido é usado para todos os nomes de arquivo, não apenas os que contêm caracteres não ASCII.Content-Type contém o tipo MIME do upload.Content-MD5 contém o digest MD5 do arquivo, codificado em base64 conforme especificado na RFC 1864.Transfer-Encoding: chunked é sempre definido.file_id="claude_file_01UaT9wBcDfGhJkLmNpQrSv7"
curl --fail-with-body -sS -OJ \
--header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
"https://api.anthropic.com/v1/compliance/apps/chats/files/$file_id/content"As flags -OJ instruem o curl a salvar a resposta com o nome de arquivo de Content-Disposition, que é o nome original do arquivo que o usuário enviou.
O endpoint de conteúdo de artifact retorna o corpo de texto de uma versão de artifact. Passe o version_id de uma das entradas no array artifacts de uma mensagem do assistente, não o id estável do artifact. Cada nova versão de um artifact tem seu próprio version_id, e a Compliance API serve os bytes exatos dessa versão.
Projetos agrupam chats relacionados junto com instruções personalizadas, conteúdo de base de conhecimento e arquivos ou documentos de texto anexados. A Compliance API expõe metadados de projeto, detalhes de projeto e a lista de anexos pertencentes a um projeto.
Os resultados de projetos são ordenados por data de criação em ordem crescente. Os resultados de anexos são ordenados por created_at em ordem crescente, com empates resolvidos por id. As respostas de listagem de projetos e de listagem de anexos paginam com um token de página opaco next_page em vez dos cursores first_id/last_id usados por chats e pelo Activity Feed. Passe o token de volta como o parâmetro de query page na próxima requisição.
Um anexo de projeto tem uma de duas formas distintas, identificadas pelo discriminador type em cada entrada:
Entradas com type igual a project_file são uploads binários (PDFs, imagens, planilhas) cujos IDs começam com claude_file_; baixe-os com Baixar conteúdo de arquivo. Entradas com type igual a project_doc são documentos de texto simples (sempre text/plain) cujos IDs começam com claude_proj_doc_; busque-os com Obter conteúdo de documento de projeto.
Um consumidor que percorre a lista de anexos deve ramificar com base em type e chamar o endpoint de conteúdo correspondente para cada entrada. A requisição a seguir lista uma página de anexos; pagine passando next_page de volta como o parâmetro page até que has_more seja false.
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"{
"data": [
{
"id": "claude_file_01UaT9wBcDfGhJkLmNpQrSv7",
"created_at": "2026-04-10T08:09:10Z",
"filename": "dashboard_mockup_v1.pdf",
"mime_type": "application/pdf",
"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
}Toda exclusão bem-sucedida é permanente e imediata. Não há janela de recuperação.
A Compliance API expõe endpoints de exclusão permanente (hard delete) para chats, arquivos, documentos de projeto e projetos inteiros. Um chat excluído permanentemente não pode ser restaurado e deixa de aparecer nas respostas de listagem depois disso (enquanto um chat excluído de forma reversível no claude.ai ainda aparece com deleted_at preenchido).
Todos os quatro endpoints exigem o escopo delete:compliance_user_data, que é concedido separadamente do escopo de leitura quando a Compliance Access Key é criada.
A requisição a seguir exclui um chat. O mesmo padrão se aplica aos outros endpoints de exclusão; apenas a URL muda.
# AVISO: Esta operação exclui PERMANENTEMENTE o chat, todas as suas mensagens
# e quaisquer arquivos anexados. A exclusão é imediata e não pode ser desfeita.
# Ela requer o escopo `delete:compliance_user_data`, que é concedido separadamente
# de `read:compliance_user_data` quando a Compliance Access Key é criada.
# Certifique-se de ter autorização explícita antes de executar isto.
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"{
"id": "claude_chat_01H5CWunD7RpVJ5bHa8RCkja",
"type": "claude_chat_deleted"
}Cada exclusão bem-sucedida retorna um pequeno envelope de confirmação com um id e um discriminador type. O endpoint de chat retorna claude_chat_deleted; verifique o campo type antes de tratar a exclusão como confirmada. Consulte o esquema de resposta na página de referência da API de cada endpoint de exclusão para o valor exato de type que os outros endpoints retornam.
Um projeto não pode ser excluído enquanto houver chats vinculados a ele. A API retorna 409 com este corpo:
{
"error": {
"type": "conflict_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."
}
}Para resolver, liste os chats do projeto com GET /v1/compliance/apps/chats?user_ids[]={user_id}&project_ids[]={project_id} (o endpoint de listagem de chats exige pelo menos um valor user_ids[]; enumere IDs através de Listar usuários da organização), exclua cada um com DELETE /v1/compliance/apps/chats/{claude_chat_id} (ou mova-o para fora do projeto a partir do claude.ai) e, em seguida, tente novamente a exclusão do projeto.
O esquema completo de requisição e resposta para cada endpoint de chat, arquivo, projeto e artifact.
Enumere as pessoas e equipes associadas aos chats e projetos desta página.
Was this page helpful?