---
title: Recuperar transcrições de sessões
url: https://platform.claude.com/docs/pt-BR/manage-claude/compliance-sessions
description: Liste as sessões que seus usuários executam em apps e agentes do Claude, como Claude Cowork e Claude Code, e recupere suas transcrições por meio da Compliance API.
---

<Note>
  Os endpoints desta página estão disponíveis apenas para organizações Claude Enterprise. Os endpoints de sessões locais e remotas são estáveis para sessões do Cowork, do Claude Code e do Claude for Microsoft 365; a cobertura de sessões do Claude Science e do Claude in Chrome está em beta. Os endpoints funcionam com a mesma Compliance Access Key e o mesmo escopo `read:compliance_user_data` que os [endpoints de chats, arquivos e projetos](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-content-data); nenhuma nova chave, escopo, configuração ou atualização de cliente é necessária. Consulte [Configurar a Compliance API](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-api-access).
</Note>

<Check>
  **Escopo necessário:** `read:compliance_user_data` na Compliance Access Key.

  **Pré-requisito:** Nenhum para listar sessões em toda a organização. Para filtrar a lista de sessões remotas (sessões na nuvem) por usuários específicos, você precisa de IDs de usuário obtidos em [Listar usuários da organização](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-org-data#list-organization-users); a lista de sessões locais não tem filtro de usuário.
</Check>

Os endpoints desta página expõem aos revisores de conformidade as transcrições das sessões que seus usuários executam em apps e agentes do Claude (atualmente: Cowork, Claude Code, Claude Science, Claude for Microsoft 365 e Claude in Chrome) a partir das suas organizações Claude Enterprise. Cada sessão é uma única conversa com o Claude; sua transcrição é a sequência de prompts do usuário, respostas do assistente e chamadas e resultados de ferramentas nessa conversa. Os endpoints dão suporte a exportações de "electronic discovery" (descoberta eletrônica), ou eDiscovery, e à aplicação de "data loss prevention" (prevenção contra perda de dados), ou DLP.

A Compliance API agrupa as sessões em duas famílias de endpoints de acordo com onde elas são executadas: endpoints de sessões locais, para sessões nas máquinas dos usuários, e endpoints de sessões remotas, para sessões executadas na nuvem em ambientes gerenciados pela Anthropic. Ambas as famílias são somente leitura, e nenhuma delas está disponível para chaves de Admin API (`sk-ant-admin01-...`): chamadas autenticadas com uma chave de Admin API retornam [403 Forbidden](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#403-forbidden).

A tabela a seguir associa cada produto, e onde ele é executado, à família de endpoints que retorna suas sessões e ao valor de `product_surface` que as identifica nas respostas. Produtos são adicionados a esta tabela à medida que a cobertura se expande.

| Produto e onde é executado                                                                                                                     | Família de endpoints                                                 | `product_surface`                                                                                                                                    |
| ---------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| Cowork no Claude Desktop, executado na máquina do usuário                                                                                      | Endpoints de sessões locais (`/v1/compliance/apps/sessions/local`)   | `cowork`                                                                                                                                             |
| Claude Code no terminal, no Claude Desktop ou em uma extensão de IDE, executado na máquina do usuário                                          | Endpoints de sessões locais                                          | `claude_code`                                                                                                                                        |
| App desktop do Claude Science, executado na máquina do usuário                                                                                 | Endpoints de sessões locais                                          | `claude_science`                                                                                                                                     |
| Claude for Microsoft 365 (os suplementos do Claude para Excel, PowerPoint, Word e Outlook), executado nos apps desktop ou web do Microsoft 365 | Endpoints de sessões locais                                          | `office_agents/excel`, `office_agents/powerpoint`, `office_agents/word` ou `office_agents/outlook` (`office_agents` quando o app não é identificado) |
| Claude in Chrome (o chat integrado da extensão do navegador), executado na máquina do usuário                                                  | Endpoints de sessões locais                                          | `claude_in_chrome`                                                                                                                                   |
| Sessões do Cowork iniciadas no claude.ai web ou mobile, executadas na nuvem em ambientes gerenciados pela Anthropic                            | Endpoints de sessões remotas (`/v1/compliance/apps/sessions/remote`) | `cowork_remote`                                                                                                                                      |

A captura de sessões locais está vinculada à habilitação da Compliance API para sua organização e se aplica enquanto os usuários estão conectados com sua conta Claude Enterprise. Os endpoints de sessões não retornam o seguinte:

* Sessões do Claude Code autenticadas com uma chave de API do Claude Console, ou executadas por meio de uma plataforma de nuvem de terceiros, como Amazon Bedrock, Google Cloud ou Microsoft Foundry.
* [Sessões na nuvem do Claude Code](https://code.claude.com/docs/en/claude-code-on-the-web) (incluindo rotinas do Claude Code executadas na nuvem), que são executadas em infraestrutura de nuvem em vez da máquina do usuário. Essas sessões na nuvem não são sessões remotas, embora ambas sejam executadas na nuvem; os endpoints de sessões remotas retornam apenas sessões do Cowork.
* Sessões locais de produtos que não sejam o Cowork e o Claude Code em organizações com [prontidão para HIPAA](https://platform.claude.com/docs/pt-BR/manage-claude/api-and-data-retention#hipaa-readiness) habilitada. Nessas organizações, os endpoints de sessões locais retornam apenas sessões do Cowork e do Claude Code, e o conteúdo de sessão capturado é armazenado por 30 dias.
* Sessões locais para as quais a ["zero data retention" (retenção zero de dados), ou ZDR](https://platform.claude.com/docs/pt-BR/manage-claude/api-and-data-retention#zero-data-retention-zdr-scope), está em vigor. Essas sessões são excluídas dos resultados de listagem, e os endpoints de recuperação e de mensagens retornam 404 para elas.

A Anthropic recomenda a Compliance API para recuperar o conteúdo de sessões. A tabela a seguir compara [sessões locais](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-sessions#retrieve-local-sessions) e [sessões remotas](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-sessions#retrieve-remote-sessions) com as alternativas baseadas em OpenTelemetry disponíveis para o Cowork e o Claude Code: o [registro em log via OpenTelemetry do Cowork](https://support.claude.com/en/articles/14477985-monitor-claude-cowork-activity-with-opentelemetry) e o [monitoramento do Claude Code](https://code.claude.com/docs/en/monitoring-usage).

|                                                                           | Sessões locais (nas máquinas dos usuários)                                                                                                                                                                            | Sessões remotas (na nuvem)                                                                                                                                                          | Registro em log via OpenTelemetry                                                                                                   |
| ------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| Entrega                                                                   | Pull: consulta e exportação via HTTPS                                                                                                                                                                                 | Pull: consulta e exportação via HTTPS                                                                                                                                               | Push: enviado por streaming para seu coletor OTLP                                                                                   |
| Configuração                                                              | Funciona com sua Compliance Access Key existente                                                                                                                                                                      | Funciona com sua Compliance Access Key existente                                                                                                                                    | O administrador configura um endpoint OTLP e as configurações de captura de conteúdo                                                |
| Infraestrutura                                                            | Hospedada pela Anthropic                                                                                                                                                                                              | Hospedada pela Anthropic                                                                                                                                                            | Você executa o coletor e o armazenamento                                                                                            |
| Prefixo de ID                                                             | `clls_`                                                                                                                                                                                                               | `cse_`                                                                                                                                                                              | N/A                                                                                                                                 |
| Valores de `product_surface`                                              | `cowork`, `claude_code`, `claude_science`, `claude_in_chrome` e valores que começam com `office_agents`                                                                                                               | `cowork_remote`                                                                                                                                                                     | N/A                                                                                                                                 |
| Retenção                                                                  | 6 anos por padrão, ou o período de retenção de conversas personalizado da sua organização quando um período finito está definido; 30 dias em organizações com prontidão para HIPAA habilitada; mantido pela Anthropic | 6 anos, a menos que um usuário exclua a sessão antes; mantido pela Anthropic                                                                                                        | Sua infraestrutura, suas políticas                                                                                                  |
| Prompts do usuário e respostas do assistente                              | Sim                                                                                                                                                                                                                   | Sim                                                                                                                                                                                 | Sim, sujeito às configurações de captura de conteúdo                                                                                |
| Entradas de ferramentas                                                   | Truncadas em 10.000 bytes por entrada por padrão; até cerca de 1 MiB mediante solicitação                                                                                                                             | Truncadas em 10.000 bytes por entrada por padrão; até cerca de 1 MiB mediante solicitação                                                                                           | Resumos truncados                                                                                                                   |
| Conteúdo de resultados de ferramentas                                     | Cada entrada de texto truncada em 10.000 bytes por padrão; até cerca de 1 MiB mediante solicitação                                                                                                                    | Cada entrada de texto truncada em 10.000 bytes por padrão; até cerca de 1 MiB mediante solicitação                                                                                  | Metadados como tamanho e sucesso; o Claude Code também pode capturar conteúdo com uma configuração opcional e com limite de tamanho |
| Conteúdo de arquivos                                                      | Sim, por meio de chamadas de ferramentas na transcrição (somente texto; outros conteúdos aparecem como um placeholder)                                                                                                | Sim, por meio de chamadas de ferramentas na transcrição (somente texto; outros conteúdos são omitidos)                                                                              | Caminhos de arquivos; o Claude Code também pode capturar o conteúdo com uma configuração opcional e com limite de tamanho           |
| Metadados de host e dispositivo (tipo de terminal, caminhos do workspace) | Não                                                                                                                                                                                                                   | Não                                                                                                                                                                                 | Sim                                                                                                                                 |
| Uso de tokens e custo                                                     | Não; disponível por meio da [Claude Enterprise Analytics API](https://platform.claude.com/docs/pt-BR/manage-claude/analytics-api#get-access-to-the-claude-enterprise-analytics-api)                                   | Não; disponível por meio da [Claude Enterprise Analytics API](https://platform.claude.com/docs/pt-BR/manage-claude/analytics-api#get-access-to-the-claude-enterprise-analytics-api) | Sim                                                                                                                                 |

## Sessões nas máquinas dos usuários (sessões locais)

Sessões locais são executadas nas máquinas dos usuários enquanto eles estão conectados com sua conta Claude Enterprise: atualmente, o Cowork no Claude Desktop, o Claude Code (no terminal, no Claude Desktop ou em uma extensão de IDE), o app desktop do Claude Science, o Claude for Microsoft 365 (no Excel, PowerPoint, Word e Outlook) e a extensão de navegador Claude in Chrome.

A Compliance API expõe sessões locais por meio de três endpoints: `GET /v1/compliance/apps/sessions/local` lista os metadados das sessões, `GET /v1/compliance/apps/sessions/local/{session_id}` recupera os metadados de uma sessão e `GET /v1/compliance/apps/sessions/local/{session_id}/messages` retorna a transcrição de uma sessão. Os três exigem o escopo `read:compliance_user_data` e contam apenas para o "rate limit" (limite de taxa) compartilhado da Compliance API; eles não estão sujeitos ao segundo orçamento de requisições que se aplica aos endpoints de sessões remotas. Consulte [429 Too Many Requests](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#429-too-many-requests). Se as sessões locais não estiverem disponíveis para sua organização pai, os três endpoints retornam 404 com a mensagem `Local sessions are not available.` (consulte [Sessão local não encontrada](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#local-session-not-found)); enquanto as listagens de sessões ou o conteúdo capturado estiverem temporariamente indisponíveis, eles retornam 503 (consulte [Sessões locais temporariamente indisponíveis](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#local-sessions-temporarily-unavailable)).

Para sessões locais, a Anthropic registra cada conversa no lado do servidor à medida que suas requisições chegam à Claude API; nada é instalado no dispositivo, e nada é coletado além das requisições que o cliente já envia à Claude API. As transcrições de sessões locais mostram o que foi pedido ao Claude e o que ele retornou, não o que aconteceu no dispositivo. A atividade de arquivos e de rede é visível apenas por meio das chamadas e dos resultados de ferramentas na transcrição, portanto a atividade que nunca chega à API (por exemplo, arquivos locais que a sessão nunca enviou) não é capturada.

Em organizações que usam [chaves de criptografia gerenciadas pelo cliente](https://platform.claude.com/docs/pt-BR/manage-claude/cmek), as transcrições de sessões locais são criptografadas com sua chave gerenciada pelo cliente e retornadas normalmente. Enquanto essa chave não puder ser usada (por exemplo, porque você a desabilitou ou revogou, ou porque ela não pode ser acessada), o endpoint de mensagens retorna [503 Service Unavailable](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#local-sessions-temporarily-unavailable) para as páginas afetadas em vez do conteúdo da transcrição. Essas mensagens nunca são relatadas como `not_captured` (consulte [Recuperar a transcrição de uma sessão local](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-sessions#retrieve-a-local-session-transcript)). A listagem de sessões e a recuperação de metadados de sessões não são afetadas.

O endpoint de listagem retorna metadados de sessões, sem conteúdo de transcrição, para todas as organizações vinculadas que sua chave pode ler. Diferentemente da lista de sessões remotas, ele não tem filtros de organização ou de usuário: delimite os resultados no tempo com `created_at.gte`, `created_at.gt`, `created_at.lt` e `created_at.lte`. Cada um aceita um timestamp RFC 3339 com um deslocamento UTC obrigatório. Quando você fornece um limite inferior e um superior, o limite superior deve ser posterior ao inferior (ou igual a ele, se você usar `created_at.gte` com `created_at.lte`), caso contrário a requisição retorna [400 Bad Request](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#400-bad-request). Um filtro de tempo separado, `updated_at.gte`, delimita pela última atividade em vez da primeira: ele retorna sessões cuja última chamada de inferência ocorreu no horário informado ou depois dele e se combina com os filtros `created_at` sem alterar a ordenação ou a paginação. Use-o para consultar periodicamente sessões ativas desde uma passagem anterior, conforme descrito mais adiante nesta seção. Novas sessões e mensagens aparecem nos resultados após um curto atraso de processamento, normalmente em poucos minutos; uma sessão ausente logo após seu início não necessariamente deixou de ser capturada. A requisição a seguir lista as sessões criadas desde uma determinada data.

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

```json Response
{
  "data": [
    {
      "type": "compliance_local_session",
      "id": "clls_01HxKpLmNoPqRsTuVwXyZaBc",
      "organization_uuid": "9a1e0000-0000-0000-0000-000000000000",
      "workspace_id": "wrkspc_01SvYKoWVRVHoEbwESNvzYdR",
      "user": {
        "id": "user_01GpKpLmNoPqRsTuVwXyZaBc",
        "email_address": "engineer@example.com"
      },
      "product_surface": "cowork",
      "created_at": "2026-07-09T14:02:11Z",
      "updated_at": "2026-07-09T14:02:38Z"
    },
    {
      "type": "compliance_local_session",
      "id": "clls_01HyLqMnOpQrStUvWxYzAbCd",
      "organization_uuid": "9a1e0000-0000-0000-0000-000000000000",
      "workspace_id": null,
      "user": {
        "id": "user_01HqRsTuVwXyZaBcDeFgHiJk",
        "email_address": null
      },
      "product_surface": "claude_code",
      "created_at": "2026-07-08T09:15:43Z",
      "updated_at": "2026-07-08T09:52:10Z"
    }
  ],
  "next_page": "page_AAEfQx7mPdLkq9Rt2VwHbZk"
}
```

Os resultados são ordenados em ordem cronológica inversa (mais recentes primeiro) por `created_at`, com empates resolvidos em uma ordem fixa no lado do servidor, e limitados a `limit` resultados por resposta (padrão 100, máximo 500). O endpoint pagina apenas para frente com os tokens `page` e `next_page` (consulte [Paginar resultados](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-activity-feed#paginate-results)): passe o valor de `next_page` da resposta como o parâmetro de consulta `page` na próxima requisição e pare quando `next_page` for `null`. A resposta não tem um campo `has_more`. Conclua o percurso de uma lista em até 24 horas após iniciá-la; um cursor de lista mais antigo ainda é aceito, mas é reavaliado em relação ao limite de retenção atual, de modo que sessões cuja atividade retida mais antiga está prestes a sair do período de retenção podem ser ignoradas.

Em cada objeto de sessão, `user.id` está sempre definido e persiste após a exclusão da conta; `user.email_address` é `null` quando a conta do usuário foi excluída ou quando o usuário não é mais membro de uma organização que sua chave pode ler. `workspace_id` é `null` quando a sessão não estava associada a um workspace. Uma sessão local corresponde a um ID de sessão do cliente: iniciar uma nova conversa no cliente, ou limpar seu contexto, inicia um novo registro de sessão. Para o Claude Science, a lista também pode incluir sessões separadas para o trabalho em segundo plano do próprio app (por exemplo, nomear a conversa; em versões mais recentes do app, também suas trilhas de revisão e delegação), e em versões mais antigas do app parte desse trabalho em segundo plano aparece como mensagens extras dentro da própria transcrição da conversa. Uma conversa do Claude Science que continua ao longo de algumas atualizações do app aparece como duas sessões. Esses comportamentos são esperados. Trate os valores de `id` como strings opacas; o formato pode mudar sem aviso prévio.

Para o Claude for Microsoft 365, a exclusão de uma conversa no suplemento acontece apenas no cliente, portanto não é refletida na API: sessões locais não têm um campo `deleted_at`, e a sessão permanece listada até que a retenção a remova.

Sessões locais têm um `updated_at`, mas nenhum `status`: uma sessão local não tem status de ciclo de vida no lado do servidor, e sua visibilidade é regida pela retenção. Uma sessão local é capturada como a série de chamadas à Claude API (chamadas de inferência) que o cliente faz durante a sessão, e a retenção se aplica a cada chamada capturada individualmente. `created_at` é o timestamp da chamada retida mais antiga da sessão e `updated_at` o timestamp da última, ambos em UTC. À medida que chamadas mais antigas ultrapassam o período de retenção, `created_at` avança de acordo e, quando todas as chamadas de uma sessão tiverem expirado, a sessão deixa de ser retornada; `updated_at` acompanha a chamada mais recente e não é afetado até então. Como `created_at` pode mudar entre execuções, elimine duplicatas por `id` ao percorrer a lista novamente ao longo do tempo. Para manter as transcrições atualizadas à medida que as sessões ganham mensagens, consulte periodicamente com o filtro `updated_at.gte`, sobrepondo janelas consecutivas. No endpoint de listagem, `updated_at` é um limite inferior: para uma sessão ainda ativa no limite de uma página ou no extremo superior de uma janela `created_at`, ele pode momentaneamente ficar atrás da verdadeira última atividade da sessão, e uma nova chamada só se torna consultável após o curto atraso de processamento mencionado anteriormente. Por causa desse atraso, defina o `updated_at.gte` de cada execução alguns minutos antes do horário de início da execução anterior, e não exatamente no horário da execução anterior. Um limite definido exatamente no horário anterior descarta de forma silenciosa e permanente uma sessão cuja chamada final ainda estava sendo indexada naquele momento, porque, uma vez que o limite avança além dessa chamada, nenhuma execução posterior a retorna. Elimine duplicatas das sessões retornadas por `id`, busque novamente suas transcrições e elimine duplicatas das mensagens por `id`. Recuperar uma sessão, ou suas mensagens, sempre reflete exatamente a última chamada retida, portanto uma passagem periódica de reconciliação sobre uma janela mais antiga é uma alternativa mais completa do que ampliar a sobreposição.

A lista é construída a partir de metadados de atividade das sessões, portanto pode incluir sessões cujo conteúdo de transcrição não foi capturado, por exemplo, sessões executadas antes do início da captura para sua organização (até onde seu período de retenção permitir); a transcrição de uma sessão desse tipo retorna cada mensagem com seu conteúdo marcado como indisponível (consulte [Recuperar a transcrição de uma sessão local](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-sessions#retrieve-a-local-session-transcript)).

O conteúdo capturado de sessões locais é armazenado por 6 anos a partir da captura, por padrão. Se a organização que executou a sessão tiver definido um período de retenção de conversas personalizado e finito em [claude.ai > Organization settings > Data and privacy](https://claude.ai/admin-settings/data-privacy-controls), esse período se aplica em vez do padrão, seja ele mais curto ou mais longo; quando a organização tem mais de um período de retenção personalizado configurado, aplica-se o mais curto. Uma alteração nessa configuração tem efeito de duas maneiras diferentes: os endpoints deixam de retornar atividades mais antigas que o período atual da organização assim que a configuração muda, enquanto cada mensagem capturada é armazenada pelo período que estava em vigor quando foi capturada, de modo que aumentar o período posteriormente não restaura conteúdo que já expirou. Em organizações com [prontidão para HIPAA](https://platform.claude.com/docs/pt-BR/manage-claude/api-and-data-retention#hipaa-readiness) habilitada, o conteúdo capturado de sessões locais é armazenado por 30 dias a partir da captura, ou pelo período de retenção de conversas personalizado da organização quando este for mais curto; o padrão de 6 anos não se aplica.

Para buscar diretamente os metadados de uma sessão, passe seu ID para `GET /v1/compliance/apps/sessions/local/{session_id}`. A resposta é o mesmo objeto de sessão que o endpoint de listagem retorna, sem envelope e sem conteúdo de transcrição. Um ID de sessão malformado retorna [400 Bad Request](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#400-bad-request). Um único [404 Not Found](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#404-not-found) abrange quatro casos que a resposta não distingue: a sessão não está em uma organização que sua chave pode ler (incluindo sessões sob outra organização pai), ela não existe, a retenção zero de dados está em vigor para ela, ou todas as chamadas nela ultrapassaram a retenção.

`product_surface` (string ou `null`) identifica o produto que criou a sessão: `cowork` (Cowork no Claude Desktop na máquina do usuário), `claude_code` (Claude Code), `claude_science` (Claude Science), `claude_in_chrome` (o chat integrado da extensão de navegador Claude in Chrome) ou um de `office_agents/excel`, `office_agents/powerpoint`, `office_agents/word` e `office_agents/outlook` (Claude for Microsoft 365, por app; apenas `office_agents` quando o app não é identificado). Novos valores aparecem à medida que a cobertura se expande.

<Note>
  **Crie handlers compatíveis com versões futuras.** Repasse valores de `product_surface` não reconhecidos e ignore campos que seu handler não espera, para que sua integração continue funcionando à medida que novas superfícies de produto forem lançadas.
</Note>

### Recuperar a transcrição de uma sessão local

O endpoint de mensagens retorna a transcrição da sessão, reconstruída a partir das chamadas capturadas à Claude API: prompts do usuário, texto do assistente, chamadas de ferramentas e as partes de texto dos resultados de ferramentas, todos retornados como foram enviados, exceto pelo truncamento de tamanho. Nada mascara URLs, credenciais ou dados pessoais nesse conteúdo, portanto trate as transcrições como sensíveis. A transcrição omite ou substitui o seguinte:

* Blocos de pensamento nunca são incluídos.
* O "system prompt" (prompt do sistema) da requisição nunca é retornado. Uma mensagem marcadora com o texto `[system prompt content not shown]` o substitui (normalmente uma vez por sessão; uma sessão sem conteúdo capturado não tem marcador).
* Definições de ferramentas e a configuração de servidores MCP não fazem parte da transcrição.
* Imagens, PDFs e outros blocos binários ou estruturados não são retornados. Cada um aparece como um bloco `text` com o texto `[<block type> content not shown]` (por exemplo, `[image content not shown]`) com `truncated` definido como `true`. Itens que não são texto dentro de um resultado de ferramenta, como resultados de [pesquisa na web](https://platform.claude.com/docs/pt-BR/agents-and-tools/tool-use/web-search-tool) ou a saída da [ferramenta de execução de código](https://platform.claude.com/docs/pt-BR/agents-and-tools/tool-use/code-execution-tool), são substituídos por uma entrada `[N non-text item(s) not shown]`, e o `truncated` do bloco de resultado da ferramenta é `true`. A chamada de ferramenta correspondente, com a consulta de pesquisa ou o código em seu `input`, ainda é retornada.
* Metadados de citação em blocos `text`, como as citações de fontes em uma resposta que se baseia em resultados de pesquisa na web, são omitidos. O texto em si é retornado, e o bloco tem `truncated` definido como `true`.

Arquivos de instruções de projeto, como `CLAUDE.md`, aparecem como conteúdo comum com papel de usuário. O conteúdo de skills aparece quando o cliente o envia como conteúdo de mensagem e não é distinguido de outros textos do usuário. Para um resumo da cobertura, consulte as [Perguntas frequentes sobre a Compliance API](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-faq#data-coverage-and-retention); para uma tabela que compara sessões locais com sessões remotas e com o registro em log via OpenTelemetry, consulte a introdução desta página.

```bash cURL
session_id="clls_01HxKpLmNoPqRsTuVwXyZaBc"

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

```json Response
{
  "session": {
    "type": "compliance_local_session",
    "id": "clls_01HxKpLmNoPqRsTuVwXyZaBc",
    "organization_uuid": "9a1e0000-0000-0000-0000-000000000000",
    "workspace_id": "wrkspc_01SvYKoWVRVHoEbwESNvzYdR",
    "user": {
      "id": "user_01GpKpLmNoPqRsTuVwXyZaBc",
      "email_address": null
    },
    "product_surface": "cowork",
    "created_at": "2026-07-09T14:02:11Z",
    "updated_at": "2026-07-09T14:02:38Z"
  },
  "data": [
    {
      "type": "compliance_local_session_message",
      "id": "clsm_01J4KpLmNoPqRsTuVwXyZaBa",
      "role": "user",
      "model": null,
      "created_at": "2026-07-09T14:02:11Z",
      "provenance": {
        "type": "synthetic_marker"
      },
      "content": [
        {
          "type": "text",
          "text": "[system prompt content not shown]",
          "truncated": true
        }
      ]
    },
    {
      "type": "compliance_local_session_message",
      "id": "clsm_01J4KpLmNoPqRsTuVwXyZaBc",
      "role": "user",
      "model": null,
      "created_at": "2026-07-09T14:02:11Z",
      "provenance": null,
      "content": [
        {
          "type": "text",
          "text": "Fix the failing test in tests/auth_test.py",
          "truncated": false
        }
      ]
    },
    {
      "type": "compliance_local_session_message",
      "id": "clsm_01J4KpLmNoPqRsTuVwXyZaBd",
      "role": "assistant",
      "model": "claude-opus-5-5",
      "created_at": "2026-07-09T14:02:11Z",
      "provenance": null,
      "content": [
        {
          "type": "text",
          "text": "I'll read the test file first.",
          "truncated": false
        },
        {
          "type": "tool_use",
          "id": "toolu_01AbCdEfGhIjKlMnOpQrSt",
          "name": "Read",
          "input": "{\"file_path\":\"tests/auth_test.py\"}",
          "truncated": false
        }
      ]
    },
    {
      "type": "compliance_local_session_message",
      "id": "clsm_01J4KpLmNoPqRsTuVwXyZaBe",
      "role": "user",
      "model": null,
      "created_at": "2026-07-09T14:02:38Z",
      "provenance": null,
      "content": [
        {
          "type": "tool_result",
          "tool_use_id": "toolu_01AbCdEfGhIjKlMnOpQrSt",
          "name": "Read",
          "is_error": false,
          "content": [
            {
              "type": "text",
              "text": "def test_login_expiry():\n    ..."
            }
          ],
          "truncated": false
        }
      ]
    },
    {
      "type": "compliance_local_session_message",
      "id": "clsm_01J4KpLmNoPqRsTuVwXyZaBf",
      "role": "assistant",
      "model": "claude-opus-5-5",
      "created_at": "2026-07-09T14:02:38Z",
      "provenance": null,
      "content": [
        {
          "type": "text",
          "text": "The test was asserting on a stale expiry timestamp. I've updated it.",
          "truncated": false
        }
      ]
    }
  ],
  "next_page": null
}
```

A resposta incorpora um envelope `session` ao lado do array paginado `data`. O primeiro registro neste exemplo é o marcador que substitui o prompt do sistema da requisição; sua `provenance` é descrita mais adiante nesta seção. Neste endpoint, `user.email_address` é sempre `null`: o endpoint de mensagens não resolve endereços de e-mail, portanto um `null` aqui não significa que a conta do usuário foi excluída. Para atribuir uma sessão a um endereço de e-mail, relacione `user.id` com o [endpoint de listagem](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-sessions#retrieve-local-sessions) ou com o endpoint de recuperação (`GET /v1/compliance/apps/sessions/local/{session_id}`).

As mensagens são retornadas das mais antigas para as mais recentes por padrão; passe `order=desc` para inverter. A paginação usa o mesmo esquema `page`/`next_page` do endpoint de listagem, com `limit` padrão de 100 e máximo de 1.000. Uma página pode terminar antes quando a resposta atinge seu limite de tamanho, portanto uma página com menos de `limit` mensagens não significa que você chegou ao fim; continue paginando até que `next_page` seja `null`. Os cursores de página estão vinculados à sessão e à ordem de classificação sob as quais foram emitidos, e os cursores de um percurso expiram 24 horas após sua primeira página: um cursor expirado retorna [400 Bad Request](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#400-bad-request) informando que você deve reiniciar sem o parâmetro `page`, e o percurso reiniciado reflete o limite de retenção atual. Um cursor emitido para uma sessão ou `order` diferente também retorna 400, como um cursor inválido.

Em uma sessão muito grande, o endpoint de mensagens pode retornar um 400 para uma página, com uma mensagem dizendo que a página é grande demais para ser lida; consulte [Página de transcrição grande demais](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#transcript-page-too-large). Não tente essa requisição novamente. Se ela usou `order=desc`, leia essa sessão das mensagens mais antigas para as mais recentes a partir da primeira página, sem `order` e sem `page`, e defina o tempo limite de requisição do seu cliente para pelo menos 5 minutos. Se uma página em ordem das mais antigas para as mais recentes retornar o mesmo erro, essa entrada do guia de erros informa o que fazer.

Em uma sessão muito grande, o endpoint de mensagens também pode retornar um 429 cujo `error.details.error_code` é `transcript_read_server_busy`. Isso não significa que sua organização excedeu um limite de taxa. Diferentemente do 400, tente novamente: aguarde o número de segundos indicado no cabeçalho `retry-after` e, em seguida, envie a mesma requisição novamente, sem alterações (com o mesmo valor de `page`, se houver). Consulte [Servidor ocupado lendo transcrições grandes](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#server-busy-reading-large-transcripts).

Cada mensagem tem um `role` (`user` ou `assistant`) e um array `content` de blocos `text`, `tool_use` e `tool_result`. Ela também tem um `model`: em um turno do assistente capturado da Claude API, este é o modelo que atendeu o turno, e ele é `null` em mensagens do usuário e em qualquer mensagem do assistente cuja `provenance` esteja definida, porque o histórico declarado pelo cliente e os marcadores sintéticos não foram produzidos por um modelo, e o modelo que atendeu é desconhecido para conteúdo indisponível. Um bloco `text` tem `text` e `truncated`. Um bloco `tool_use` tem `id`, `name`, `input` e `truncated`, em que `input` é uma string codificada em JSON em vez de um objeto. Um bloco `tool_result` tem `tool_use_id`, `name`, `is_error`, um array `content` de entradas `text` e `truncated`. Chamadas e resultados de ferramentas MCP, e a maioria das chamadas e resultados de ferramentas de servidor, são normalizados nesses mesmos formatos `tool_use` e `tool_result`; qualquer outro tipo de bloco aparece como um placeholder `[<block type> content not shown]`. O `id` de uma mensagem é estável enquanto o turno estiver retido. Todas as mensagens reconstruídas a partir da mesma chamada de inferência têm o timestamp dessa chamada, portanto mensagens consecutivas frequentemente compartilham um valor de `created_at`; preserve a ordem retornada em vez de reordenar por timestamp.

Cada mensagem também tem um campo `provenance` que descreve como seu conteúdo foi capturado. `provenance` é `null` para conteúdo verificado capturado pela Claude API, que é o caso comum. Caso contrário, é um objeto cujo `type` indica a exceção:

* `content_unavailable` significa que o conteúdo não pode ser retornado. O array `content` está vazio, e `provenance.reason` informa o motivo. `not_captured` significa que nenhum conteúdo está disponível para o turno. Isso não prova que nenhum registro foi armazenado: o conteúdo que as políticas de tratamento de dados da Anthropic retêm da Compliance API é relatado com o mesmo motivo, assim como turnos individuais dentro de uma sessão capturada de outra forma que estejam indisponíveis por esses motivos. Uma chave gerenciada pelo cliente inutilizável é a única exceção e retorna [503 Service Unavailable](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#local-sessions-temporarily-unavailable) em vez disso. `client_aborted` significa que o cliente fechou a conexão ou cancelou a requisição antes que a resposta fosse concluída, portanto a resposta do turno não foi capturada; qualquer saída parcial já enviada por streaming ao cliente não é incluída, e esse motivo se aplica apenas a turnos com papel de assistente. `cmek_key_revoked` é reservado para conteúdo criptografado com a chave gerenciada pelo cliente da sua organização quando essa chave está indisponível (por exemplo, revogada). Ele não é retornado atualmente, porque uma chave inutilizável produz um 503 em vez disso, mas trate-o para compatibilidade com versões futuras. `retention_elapsed` significa que o conteúdo ultrapassou a retenção. `oversize` significa que uma única mensagem excedeu o limite de tamanho por mensagem; a mensagem ainda é retornada, com um array `content` vazio.
* `client_asserted` marca mensagens do assistente que o cliente forneceu como histórico de conversa e que não puderam ser associadas a uma resposta capturada; sua autoria não é verificada.
* `synthetic_marker` marca registros gerados pelo próprio endpoint, como o marcador que substitui o prompt do sistema. Quando o cliente reescreve ou compacta seu histórico de conversa no meio da sessão (por exemplo, após a compactação de contexto), a transcrição insere uma mensagem marcadora nesse ponto e continua com o novo conteúdo que o cliente enviou. Quando sua organização tem um período de retenção finito e esse novo conteúdo inclui mensagens do assistente, a transcrição retém o novo conteúdo até sua última mensagem do assistente, inclusive (um segundo marcador indica isso), e mostra apenas as mensagens do usuário após esse ponto, seguidas pelo restante da sessão.

Mensagens marcadoras e declaradas pelo cliente começam com um bloco `text` explicativo entre colchetes sinalizado com `truncated: true`, por exemplo `[system prompt content not shown]`. Trate esses registros como presentes, mas indisponíveis ou não verificados, em vez de ausentes, e tolere tipos e motivos de `provenance` não reconhecidos.

Dois parâmetros limitam quantos bytes de cada bloco de ferramenta são retornados: `tool_use_input_max_bytes` e `tool_result_max_bytes`, ambos com padrão de 10.000 bytes. Passe `-1` para o máximo do servidor (cerca de 1 MiB por string); `0` retorna [400 Bad Request](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#400-bad-request), e valores acima do máximo são ajustados para ele. Uma string cortada por qualquer um dos limites é cortada em um limite de caractere e recebe um sufixo embutido (por exemplo, `…[truncated; pass tool_result_max_bytes=-1 for the server max]`), e seu bloco tem `"truncated": true`. Um `input` de `tool_use` truncado, portanto, não é mais um JSON válido, então analise entradas de ferramentas apenas a partir de blocos não truncados (ou aumente o limite e busque novamente). Blocos do tipo `text` são sempre limitados ao mesmo máximo do servidor de cerca de 1 MiB; nenhum parâmetro o aumenta, e um bloco `text` no limite também tem `"truncated": true`.

O Claude Science chama conectores (servidores MCP) a partir de código que ele executa por meio de sua ferramenta `repl`, e não como ferramentas nomeadas separadamente, portanto nenhum bloco em uma transcrição do Claude Science recebe o nome de um conector. Cada chamada de conector aparece no código dentro do `input` de um bloco `tool_use` de `repl` (por exemplo, uma chamada `host.mcp("<server>", "<tool>", ...)`), e a saída do conector aparece no `tool_result` correspondente apenas onde esse código a imprimiu. As sessões do Cowork e do Claude Code são diferentes: elas chamam cada ferramenta de conector pelo seu próprio nome `mcp__<server>__<tool>`, que é o `name` do bloco `tool_use`. Para monitorar o uso de conectores em sessões do Claude Science, analise a string `input` e faça a correspondência com o código que ela contém, em vez de com um nome de ferramenta. Passe `tool_use_input_max_bytes=-1` para essas sessões, para que uma entrada de código longa seja retornada até o máximo do servidor em vez de ser cortada no padrão de 10.000 bytes antes que a chamada do conector apareça.

O conteúdo da transcrição respeita o período de retenção descrito em [Sessões nas máquinas dos usuários](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-sessions#retrieve-local-sessions). Quando o início de uma sessão ultrapassou esse período, a transcrição começa com um único placeholder `content_unavailable` com `reason` igual a `retention_elapsed`, seguido pelas mensagens retidas. Quando todas as chamadas de uma sessão tiverem expirado, o endpoint de mensagens retorna [404 Not Found](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#404-not-found), assim como faz para sessões em organizações que sua chave não pode ler, sessões que não existem e sessões para as quais a retenção zero de dados está em vigor. Um ID de sessão malformado retorna [400 Bad Request](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#400-bad-request).

## Sessões na nuvem (sessões remotas)

As sessões do Cowork iniciadas no claude.ai pela web ou pelo celular são executadas na nuvem, em ambientes gerenciados pela Anthropic. A Compliance API expõe essas sessões remotas por meio de dois endpoints: `GET /v1/compliance/apps/sessions/remote` lista os metadados das sessões, e `GET /v1/compliance/apps/sessions/remote/{session_id}/messages` retorna a transcrição de uma sessão. Ambos exigem o escopo `read:compliance_user_data`, e ambos contam para o "rate limit" (limite de taxa) compartilhado da Compliance API, além de um segundo orçamento de requisições específico desses endpoints; consulte [429 Too Many Requests](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#429-too-many-requests).

O endpoint de listagem usa por padrão o escopo de toda a organização: omita `organization_ids[]` para incluir todas as organizações do claude.ai que sua chave pode ler, ou passe até 500 valores para restringir o escopo. Para restringir a listagem a usuários específicos, passe de 1 a 10 valores de `user_ids[]` (obtenha os IDs em [Listar usuários da organização](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-org-data#list-organization-users)); o filtro corresponde ao usuário proprietário da sessão, portanto sessões pertencentes a agentes são excluídas sempre que `user_ids[]` estiver definido. Limite os resultados no tempo com os parâmetros de intervalo de `created_at` (`gte`, `gt`, `lt`, `lte`, no formato RFC 3339). Não há filtro `updated_at`. A requisição a seguir lista as sessões criadas desde uma determinada data.

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

```json Response
{
  "data": [
    {
      "id": "cse_01WpQrStUvXyZaBcDeFgHjK6",
      "organization_uuid": "91012d09-e48b-438e-a489-1bebfd8fa6f9",
      "user": {
        "id": "user_01XyDMpzjS89pFZXqSFUBDr6",
        "email_address": "user@example.com"
      },
      "agent_id": null,
      "started_by_user": null,
      "status": "active",
      "created_at": "2026-07-01T17:04:05Z",
      "updated_at": "2026-07-01T18:00:41Z",
      "product_surface": "cowork_remote",
      "claude_project_id": "claude_proj_01KGp4eZNug9ri4kE35RSppq"
    },
    {
      "id": "cse_01TkNpRsUvWxYzAbCdEfGhJ4",
      "organization_uuid": "91012d09-e48b-438e-a489-1bebfd8fa6f9",
      "user": null,
      "agent_id": "cagt_01MnPqRsTuVwXyZaBcDeFgH8",
      "started_by_user": {
        "id": "user_01XyDMpzjS89pFZXqSFUBDr6",
        "email_address": "user@example.com"
      },
      "status": "archived",
      "created_at": "2026-06-28T09:15:22Z",
      "updated_at": "2026-06-28T09:47:10Z",
      "product_surface": "cowork_remote",
      "claude_project_id": null
    }
  ],
  "next_page": "page_AAEfMk93cXpYdGxrZXk"
}
```

Os resultados são ordenados em ordem cronológica inversa (mais recentes primeiro) por `created_at` e limitados a `limit` resultados por resposta (padrão 100, máximo 500). O endpoint pagina com os tokens `page` e `next_page` (consulte [Paginar resultados](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-activity-feed#paginate-results)): passe o valor `next_page` da resposta como o parâmetro de consulta `page` na próxima requisição e pare quando `next_page` for `null`.

Uma sessão pertence a um usuário ou a um agente, nunca a ambos. Para sessões pertencentes a usuários, `user` contém o ID e o endereço de e-mail do proprietário (`email_address` é `null` quando o usuário não é mais membro de uma organização que sua chave pode ler) e `agent_id` é `null`. Para sessões pertencentes a agentes (por exemplo, execuções de uma tarefa agendada do Cowork na nuvem), `user` é `null`, `agent_id` contém o ID do agente (prefixo `cagt_`) e `started_by_user` identifica a pessoa que iniciou a execução; em sessões pertencentes a usuários, `started_by_user` é `null`. Cada execução de uma tarefa agendada é uma sessão separada, e nenhum campo da sessão contém o nome ou o agendamento da tarefa.

`claude_project_id` é o ID do [projeto](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-content-data#retrieve-projects-and-attachments) do claude.ai ao qual a sessão pertence (prefixo `claude_proj_`), ou `null` quando a sessão não está em um projeto.

`status` é um dos valores `pending`, `active`, `paused`, `archived` ou `failed`. Uma sessão fica `pending` enquanto está sendo provisionada; uma sessão `pending` ainda não tem transcrição, e o endpoint de mensagens retorna 404 para ela até que o provisionamento seja concluído. Sessões que foram excluídas nunca são retornadas.

`product_surface` (string ou `null`) identifica o produto que criou a sessão. Atualmente, o endpoint retorna apenas sessões com `product_surface` igual a `cowork_remote`: sessões do Cowork iniciadas no claude.ai pela web ou pelo celular.

Para recuperar um chat na experiência unificada do Claude, incluindo a parte que foi executada na nuvem, use os endpoints de chat ([Obter mensagens do chat](https://platform.claude.com/docs/pt-BR/api/compliance/apps/chats/messages/list)), e não os endpoints de sessões remotas.

<Note>
  **Crie handlers compatíveis com versões futuras.** Repasse valores de `status` e `product_surface` não reconhecidos e ignore campos que seu handler não espera, para que sua integração continue funcionando à medida que novos status e superfícies de produto forem lançados.
</Note>

### Recuperar a transcrição de uma sessão remota

O endpoint de mensagens retorna a transcrição da sessão: prompts do usuário, respostas do assistente e chamadas e resultados de ferramentas. Blocos de pensamento e imagens não são incluídos. Para um resumo da cobertura, consulte as [Perguntas frequentes da Compliance API](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-faq#data-coverage-and-retention). Para uma tabela que compara as sessões remotas com as sessões locais e com o registro em log via OpenTelemetry do Cowork, consulte a introdução desta página.

```bash cURL
session_id="cse_01WpQrStUvXyZaBcDeFgHjK6"

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

```json Response
{
  "session": {
    "id": "cse_01WpQrStUvXyZaBcDeFgHjK6",
    "organization_uuid": "91012d09-e48b-438e-a489-1bebfd8fa6f9",
    "user": {
      "id": "user_01XyDMpzjS89pFZXqSFUBDr6",
      "email_address": null
    },
    "agent_id": null,
    "started_by_user": null,
    "status": "active",
    "created_at": "2026-07-01T17:04:05Z",
    "updated_at": "2026-07-01T18:00:41Z",
    "product_surface": "cowork_remote",
    "claude_project_id": null
  },
  "data": [
    {
      "id": "csev_01HjKmNpQrStUvWxYzAbCdE2",
      "role": "user",
      "created_at": "2026-07-01T17:04:05Z",
      "content": [
        {
          "type": "text",
          "text": "Summarize the customer feedback in the attached spreadsheet.",
          "truncated": false
        }
      ],
      "sent_by_user_id": null,
      "content_unavailable": false
    },
    {
      "id": "csev_01BcDeFgHjKmNpQrStUvWxY4",
      "role": "assistant",
      "created_at": "2026-07-01T17:04:06Z",
      "content": [
        {
          "type": "text",
          "text": "I'll start by reading the spreadsheet...",
          "truncated": false
        }
      ],
      "sent_by_user_id": null,
      "content_unavailable": false
    }
  ],
  "next_page": null
}
```

A resposta incorpora um envelope `session` junto com o array paginado `data`. Neste endpoint, o envelope sempre tem `user.email_address`, `started_by_user` e `claude_project_id` definidos como `null`. Obtenha esses valores pelo endpoint de listagem.

Por padrão, as mensagens são retornadas das mais antigas para as mais recentes; passe `order=desc` para inverter a ordem. A paginação usa o mesmo esquema `page`/`next_page` do endpoint de listagem, com `limit` padrão de 100 e máximo de 1.000. Uma página pode terminar antes quando a resposta atinge seu limite de tamanho. Portanto, uma página com menos de `limit` mensagens não significa que você chegou ao fim; continue paginando até que `next_page` seja `null`.

Cada mensagem contém um `role` (`user` ou `assistant`) e um array `content` de blocos `text`, `tool_use` e `tool_result`. Os valores de `created_at` das mensagens são timestamps de commit. Mensagens consecutivas podem compartilhar o mesmo timestamp ou aparecer levemente invertidas, então preserve a ordem retornada em vez de reordenar por `created_at`. Em sessões pertencentes a agentes, `sent_by_user_id` registra o usuário que enviou uma determinada mensagem de usuário, quando for possível atribuí-la. Caso contrário, o campo é `null`, inclusive em todas as mensagens do assistente. Quando o conteúdo de uma mensagem não pode ser retornado de forma alguma (por exemplo, porque excede os limites de tamanho), a mensagem contém `content_unavailable` definido como `true`.

Dois parâmetros limitam quantos bytes de cada bloco de ferramenta são retornados: `tool_use_input_max_bytes` e `tool_result_max_bytes`, ambos com padrão de 10.000 bytes. Passe `-1` para usar o máximo do servidor (cerca de 1 MiB por string); `0` retorna [400 Bad Request](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#400-bad-request). Um bloco cortado por qualquer um desses limites contém `"truncated": true`. Uma entrada de `tool_use` truncada deixa de ser um JSON válido, portanto analise as entradas de ferramentas apenas a partir de blocos não truncados (ou aumente o limite e busque novamente).

O endpoint de mensagens retorna [404 Not Found](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors#404-not-found) nos seguintes casos: sessões `pending`, sessões que não existem ou foram excluídas e sessões em organizações que sua chave não pode ler.

## Retenção e exclusão

Os endpoints de sessões são somente leitura; sessões locais e remotas não podem ser excluídas pela Compliance API. As transcrições de sessões locais são retidas por 6 anos por padrão, ou pelo período de retenção de conversas personalizado da sua organização quando um período finito estiver definido, ou por 30 dias em organizações com a prontidão para HIPAA habilitada, conforme descrito em [Sessões nas máquinas dos usuários](https://platform.claude.com/docs/pt-BR/manage-claude/compliance-sessions#retrieve-local-sessions). As transcrições de sessões remotas são retidas por 6 anos, a menos que um usuário exclua a sessão antes. Os endpoints de sessões remotas deixam de retornar uma sessão assim que um usuário a exclui, e sua transcrição não pode ser recuperada pela Compliance API. Para saber como esses períodos se relacionam com os outros arranjos de retenção da Anthropic, consulte [API e retenção de dados](https://platform.claude.com/docs/pt-BR/manage-claude/api-and-data-retention).

## Próximos passos

<CardGroup cols={2}>
  <Card title="Recuperar e excluir chats, arquivos e projetos" href="https://platform.claude.com/docs/pt-BR/manage-claude/compliance-content-data">
    Acesse o conteúdo de chats, os anexos de arquivos e os projetos do claude.ai com a mesma Compliance Access Key.
  </Card>

  <Card title="Perguntas frequentes da Compliance API" href="https://platform.claude.com/docs/pt-BR/manage-claude/compliance-faq#data-coverage-and-retention">
    Um resumo, campo a campo, do que as transcrições de sessões incluem, além de outras perguntas comuns.
  </Card>

  <Card title="Tratar erros da Compliance API" href="https://platform.claude.com/docs/pt-BR/manage-claude/compliance-errors">
    Payloads de erro literais e a correção para cada um.
  </Card>

  <Card title="Referência da API" href="https://platform.claude.com/docs/pt-BR/api/compliance/apps">
    Caminhos de endpoints, parâmetros e esquemas de resposta da Compliance API.
  </Card>
</CardGroup>
