Skip to main content
GET
Search companies
The data is Brazil’s public company registry, from Receita Federal’s monthly open data; a record that was looked up by CNPJ may have been refreshed in real time since. Each result’s refDate is the month of the registry data it reflects. The search covers the stored records only — it never looks a company up. The data is the same for every organization — nothing in it belongs to yours. Every filter is optional and they combine. legalName matches the beginning of the legal name only (at least 3 characters), never the middle. mainActivity is a CNAE code, matched exactly when it has 7 digits and as a prefix when shorter. companyDocument lists every establishment of one company. Page with limit (up to 100) and next: pass the next cursor of one page to get the following one; the last page answers next as null. A result carries the registry’s codes (statusReason, legalNature, …); GET /realms/{realmId}/organizations/{organizationId}/companies/{document} adds their text.

Path Parameters

realmId
string<uuid>
required

ID of your realm.

Format: UUID

organizationId
string<uuid>
required

ID of the organization making the request.

Format: UUID

Query Parameters

mainActivity
string

Main economic activity (CNAE code). A 7-digit code matches that activity exactly; a shorter code, from 2 to 6 digits, matches every activity that starts with it (62 is the whole division).

Pattern: ^\d{2,7}$
status
enum<string>[]

Only establishments in one of these registration statuses.


Example (comma-separated list): ?status=ACTIVE,SUSPENDED

Available options:
ANNULLED,
ACTIVE,
ACTIVE_IRREGULAR,
SUSPENDED,
INAPT,
CLOSED

Only companies whose legal name starts with this text (case-insensitive, at least 3 characters). It matches the beginning of the name, never the middle.

Required string length: 3 - 120

Only companies of one of these legal natures (4-digit codes of Receita Federal's table).


Example (comma-separated list): ?legalNature=2046,2062

Maximum array length: 20
Pattern: ^\d{4}$
companyDocument
string

The first 8 characters of a CNPJ, which identify one company: lists the headquarters and every branch of it.

Pattern: ^[A-Za-z0-9]{8}$
next
string

Cursor returned as next by the previous page. Omit it to get the first page.

Maximum string length: 64
limit
integer

Page size, from 1 to 100. Defaults to 15.

Required range: 1 <= x <= 100

Response

Successful response

A page of establishments.

items
object[]
required

The establishments of this page, in CNPJ order.

next
string | null
required

Cursor for the next page: pass it as next to get it. null on the last page.

Example:

"MTEyMjIzMzMwMDAxODE"