---
title: "MTE Slave Labour Register Search"
method: POST
path: "/br/mte/slave-labour-search/v1"
tags: ["Brazil", "Ministério do Trabalho e Emprego (MTE)"]
---

# MTE Slave Labour Register Search

`POST /br/mte/slave-labour-search/v1`

## Request

- Base URL: `https://api.croma.run`
- URL: `https://api.croma.run/br/mte/slave-labour-search/v1`
- Auth: HTTP bearer

Search Brazil's register of employers caught keeping workers in conditions analogous to slavery (Cadastro de Empregadores, the "Lista Suja"), and the register of employers under a conduct-adjustment agreement, by CNPJ (or its 8-character root), CPF, name, state or inspection year. Each listing carries the establishment, workers found, activity, the final decision date and every period on the register. CPFs are matched exactly and returned masked. Updated daily.

**Dataset endpoint**: answers from the whole source in milliseconds and carries `as_of`.

## Headers

- `Idempotency-Key` string

## Request body

- object
  - `query` string: Palabras a buscar en los nombres (opcional).
  - `document_number` string: CPF o CNPJ del empleador, con o sin puntuación, p. ej. `12.345.678/0001-90`, o la raíz de 8 caracteres de un CNPJ para todos sus establecimientos (opcional). Coincidencia exacta.
  - `list` '' | 'slave_labour' | 'conduct_adjustment': Registro: `slave_labour` (empleadores que sometieron trabajadores a condiciones análogas a la esclavitud) o `conduct_adjustment` (empleadores en ajuste de conducta) (opcional; por defecto ambos).
  - `party_type` '' | 'individual' | 'company': Tipo de parte: `individual` (persona) o `company` (empresa u organización) (opcional).
  - `state` string: Sigla del estado (UF) de la fiscalización, p. ej. `PA` (opcional).
  - `inspection_year` integer: Año de la fiscalización, p. ej. `2024`; `0` sin filtro (opcional).
  - `page` integer: 1-based page number for paginated results.
  - `per_page` integer: Resultados por página (1-50).

## Response `200`

Successful response

- MteSlaveLabourSearchResponse
  - `data` MteSlaveLabourSearchData, required
    - `as_of` string, nullable, required: How current the data in this response is.
    - `query` string, required
    - `list` string, nullable, required
    - `party_type` string, nullable, required
    - `state` string, nullable, required
    - `inspection_year` number, nullable, required
    - `total` number, required: Listings matching the filters, across every page, counted up to 1000.
    - `total_is_exact` boolean, required: False when more than 1000 match: `total` is then 1000, and the pages go on.
    - `page` number, required
    - `per_page` number, required
    - `total_pages` number, required: Pages over `total`; there are more when `total_is_exact` is false.
    - `count` number, required
    - `employers` object[], required
      - `id` string, required: The register and a fingerprint of the listing, e.g. `slave_labour-3f9a0c12d4e5b6a7`: the key.
      - `list` 'slave_labour' | 'conduct_adjustment', required: `slave_labour` (the register of employers caught keeping workers in conditions analogous to slavery) or `conduct_adjustment` (employers who signed a conduct-adjustment agreement instead).
      - `party_type` 'individual' | 'company', required: `individual` (listed by CPF) or `company` (by CNPJ).
      - `document_type` 'cpf' | 'cnpj', required
      - `document` string, required: A CNPJ in full (`12.345.678/0001-90`); a CPF masked (`***.456.789-**`).
      - `employer_name` string, required: The employer's name as the register prints it; a CPF inside a name is masked.
      - `establishment` string, nullable, required: The establishment inspected (a farm, a site, an address), as printed; a CPF inside it is masked.
      - `state` string, nullable, required: Two-letter state (UF) of the inspection.
      - `inspection_year` integer, nullable, required: The year of the inspection that found the workers.
      - `workers_involved` integer, nullable, required: Workers found in conditions analogous to slavery.
      - `cnae` string, nullable, required: The activity code (CNAE), e.g. `0151-2/01`.
      - `final_decision_date` string, nullable, required: `yyyy-mm-dd` the administrative decision became final.
      - `listed_on` string, required: `yyyy-mm-dd` the current listing started.
      - `listing_history` object[], required: Every period the employer has been on the register: a court can suspend a listing and it can later return.
        - `from` string, required: `yyyy-mm-dd`.
        - `to` string, nullable, required: `yyyy-mm-dd`; null while it lasts.
      - `court_order` string, nullable, required: The court decision that put the employer on the register, when a court did, as the register cites it.
      - `conduct_adjustment_on` string, nullable, required: `yyyy-mm-dd` the employer entered the conduct-adjustment register; `conduct_adjustment` only.
      - `agreement_url` string, nullable, required: Where the conduct-adjustment agreement is published; `conduct_adjustment` only.

## Other responses

- `400`: Invalid request body
- `401`: Missing or invalid API key
- `429`: Rate limit exceeded
- `500`: Internal error

---

[API](https://skmtc.dev/usecroma/apis/croma-marketplace-api.md) · [All operations](https://skmtc.dev/usecroma/apis/croma-marketplace-api/llms.txt) · [OpenAPI document](https://skmtc.dev/usecroma/apis/croma-marketplace-api/revisions/df016cdb29d7?raw)
