> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usecroma.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Sanções CGU

> Os cadastros federais de integridade do Brasil: busque toda empresa e pessoa sancionada no CEIS, CNEP, CEAF, CEPIM e nos acordos de leniência por nome, CNPJ ou CPF, e leia o registro completo de uma sanção.

A Controladoria-Geral da União mantém os cadastros federais de integridade do
Brasil, que todo comprador público e a maioria das equipes de compliance
consultam antes de negociar com uma empresa: o CEIS, as empresas e pessoas
impedidas de contratar com a administração pública por qualquer órgão federal,
estadual ou municipal; o CNEP, as empresas punidas pela Lei Anticorrupção
(12.846/2013); o CEAF, os servidores públicos federais expulsos; o CEPIM, as
entidades sem fins lucrativos impedidas de receber transferências federais; e
os acordos de leniência que as empresas firmaram com a CGU. Cerca de 33.000
sanções no total.

Uma única busca sobre os cinco cadastros, por nome, CNPJ ou CPF, cadastro,
tipo de parte e estado do órgão sancionador, atualizada todos os dias. Uma
sanção que a CGU retira deixa de aparecer no mesmo dia.

<Note>
  A fonte inteira, organizada e pronta para consultar: cada endpoint desta página responde em milissegundos. Cada resposta traz `as_of`: o quão atuais são os dados. [Como funcionam os datasets](/pt/datasets).
</Note>

## Buscar sanções

`POST /br/cgu/sanctions-search/v1` <a className="dataset-pill" href="/pt/datasets">Dataset</a>

Busca nos cinco cadastros por qualquer combinação de nome, CNPJ ou CPF,
cadastro, tipo de parte e estado do órgão sancionador.

| Campo                    | Tipo    | Notas                                                                                                                                                                                        |
| ------------------------ | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`                  | string  | Opcional. Palavras de qualquer um dos nomes da parte. Todas devem coincidir; sem stemming.                                                                                                   |
| `document_number`        | string  | Opcional. Um CNPJ ou CPF, com ou sem pontuação, p. ex. `12.345.678/0001-90`. Correspondência exata. Os CPFs de servidores expulsos são publicados mascarados e não podem ser buscados assim. |
| `list`                   | enum    | Opcional. `ceis`, `cnep`, `ceaf`, `cepim` ou `leniency`.                                                                                                                                     |
| `party_type`             | enum    | Opcional. `individual` ou `company`.                                                                                                                                                         |
| `sanctioning_body_state` | string  | Opcional. Sigla do estado do órgão que impôs a sanção, p. ex. `SP`. Não é o estado da parte.                                                                                                 |
| `page`                   | integer | Opcional. Página, começa em 1. Por padrão `1`.                                                                                                                                               |
| `per_page`               | integer | Opcional. Resultados por página, 1-50. Por padrão `20`.                                                                                                                                      |

```bash theme={"dark"}
curl https://api.croma.run/br/cgu/sanctions-search/v1 \
  -H "Authorization: Bearer $CROMA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "query": "construtora", "list": "ceis", "per_page": 10 }'
```

Retorna `as_of` (o quão atuais são os dados), os filtros aplicados, `total` (correspondências em todas as páginas), `page`, `per_page`, `total_pages`, `count` e `sanctions[]`, por nome. Uma parte com várias sanções tem várias.

Cada sanção traz `id` (a chave, p. ex. `ceis-72529`), `list` (`ceis`, `cnep`, `ceaf`, `cepim` ou `leniency`), `sanction_code` (o código da própria CGU), `party_type` (`individual` ou `company`), `document_type` (`cpf`, `cnpj` ou `foreign`), `document` (um CNPJ completo, um CPF mascarado como a CGU o mascara, `***.456.789-**`), `name`, `names[]` (todos os nomes que o cadastro dá à parte), `sanction_type`, `start_date`, `end_date`, `publication_date`, `final_judgment_date`, `information_date` (todas `yyyy-mm-dd`), `publication`, `publication_detail`, `scope`, `sanctioning_body`, `sanctioning_body_state` (o estado do órgão, não o da parte), `sanctioning_body_sphere` (`federal`, `state` ou `municipal`), `legal_basis`, `process_number`, `information_source`, `notes`, `fine_amount` (reais, multas do CNEP), `reason` (por que uma entidade sem fins lucrativos está impedida), `public_servant` (`{ position, role, unit, act_number }`, só CEAF) e `agreement` (`{ status, terms, effects[] }`, só acordos de leniência).

Os campos vazios são `null`. Os valores ficam em português, como a CGU os escreve.

<Note>
  `query` cobre todos os nomes que o cadastro dá à parte (como foi sancionada,
  como o órgão sancionador a informou, e a razão social e o nome fantasia da
  empresa), palavra por palavra e sem stemming. `document_number` é uma
  correspondência exata sobre um CNPJ ou um CPF; os CPFs voltam mascarados.
  Atualizado diariamente.
</Note>

<Note>
  Uma sanção no cadastro está vigente: a CGU a retira quando termina, e ela
  deixa de aparecer aqui no mesmo dia. Um `end_date` passado não significa que
  tenha terminado; uma declaração de inidoneidade, por exemplo, dura até a
  reabilitação da empresa.
</Note>

## Uma sanção

`POST /br/cgu/sanction/v1` <a className="dataset-pill" href="/pt/datasets">Dataset</a>

Resolve uma sanção pelo seu id e retorna o registro completo.

| Campo | Tipo   | Notas                                                                                                                            |
| ----- | ------ | -------------------------------------------------------------------------------------------------------------------------------- |
| `id`  | string | **Obrigatório.** Id da sanção, o cadastro e o código da CGU unidos por um hífen, p. ex. `ceis-72529`, como retornado pela busca. |

```bash theme={"dark"}
curl https://api.croma.run/br/cgu/sanction/v1 \
  -H "Authorization: Bearer $CROMA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "id": "ceis-72529" }'
```

Retorna `found`, `id`, `as_of` e `sanction` (null quando não encontrada).

Cada sanção traz `id` (a chave, p. ex. `ceis-72529`), `list` (`ceis`, `cnep`, `ceaf`, `cepim` ou `leniency`), `sanction_code` (o código da própria CGU), `party_type` (`individual` ou `company`), `document_type` (`cpf`, `cnpj` ou `foreign`), `document` (um CNPJ completo, um CPF mascarado como a CGU o mascara, `***.456.789-**`), `name`, `names[]` (todos os nomes que o cadastro dá à parte), `sanction_type`, `start_date`, `end_date`, `publication_date`, `final_judgment_date`, `information_date` (todas `yyyy-mm-dd`), `publication`, `publication_detail`, `scope`, `sanctioning_body`, `sanctioning_body_state` (o estado do órgão, não o da parte), `sanctioning_body_sphere` (`federal`, `state` ou `municipal`), `legal_basis`, `process_number`, `information_source`, `notes`, `fine_amount` (reais, multas do CNEP), `reason` (por que uma entidade sem fins lucrativos está impedida), `public_servant` (`{ position, role, unit, act_number }`, só CEAF) e `agreement` (`{ status, terms, effects[] }`, só acordos de leniência).

Os campos vazios são `null`. Os valores ficam em português, como a CGU os escreve.

<Note>
  Um id que nenhum cadastro tem retorna `found: false` com HTTP 200, não um
  erro. Essa é também a resposta para uma sanção que a CGU retirou.
</Note>

<Card title="Referência completa" icon="code" href="/pt/api-reference/overview">
  Esquemas, todos os campos de resposta e um playground interativo.
</Card>
