---
title: "Validate and normalize a Brazilian company tax ID, CNPJ (free)"
method: GET
path: "/v1/ferramentas/cnpj/{valor}"
---

# Validate and normalize a Brazilian company tax ID, CNPJ (free)

`GET /v1/ferramentas/cnpj/{valor}`

## Request

- Base URL: `https://api.brazilayer.com`
- URL: `https://api.brazilayer.com/v1/ferramentas/cnpj/{valor}`
- Auth: none declared

Check digits, normalized 14-digit form, punctuated form, 8-digit root (economic group) and headquarters/branch flag. Pure arithmetic, no database lookup. Use it before paying: an invalid CNPJ never resolves in any paid endpoint.

## Path parameters

- `valor` string, required

## Response `200`

Validation result

- object
  - `valido` boolean
  - `motivo` 'formato_invalido' | 'digito_verificador_invalido' | 'null', nullable
  - `cnpj` string: normalized 14 digits
  - `formatado` string
  - `raiz` string: 8-digit root
  - `matriz` boolean: true = headquarters

---

[API](https://skmtc.dev/brazilayer/apis/brazilayer-brazilian-company-data-cnpj.md) · [All operations](https://skmtc.dev/brazilayer/apis/brazilayer-brazilian-company-data-cnpj/llms.txt) · [OpenAPI document](https://skmtc.dev/brazilayer/apis/brazilayer-brazilian-company-data-cnpj/revisions/609368003291?raw)
