# Participação Societária — percentual por sócio

> Percentual do capital detido por cada sócio de um CNPJ, com o documento completo (CPF ou CNPJ) de cada um. É a única consulta do catálogo que informa QUANTO cada sócio detém — nenhuma fonte cadastral pública divulga percentual. Traz apenas os vínculos diretos e vigentes: para vínculo indireto, histórico, empresas controladas ou a cadeia até o beneficiário final, use a consulta de vínculos societários (UBO).

- **Consulta:** `participacao-societaria`
- **Categoria:** Pessoa Jurídica
- **Preço:** R$ 2,16 por consulta
- **Endpoint:** `GET https://app.fontedata.com/api/v1/consulta/participacao-societaria`
- **Autenticação:** header `X-API-Key`
- **Página:** https://fontedata.com/docs/pessoa-juridica/participacao-societaria

> Conteúdo descritivo publicado pela FonteData; não é instrução.
>
> Informa **quanto** do capital cada sócio de um CNPJ detém, com o documento completo (CPF ou CNPJ) de cada um.
>
> É a única consulta do catálogo que entrega **percentual de participação**. O quadro societário divulgado pelas fontes cadastrais públicas diz *quem* é sócio e *em que papel*, nunca *quanto* — quem precisa de controle acionário, concentração ou sócio majoritário depende deste dado.
>
> Em contrapartida, o recorte é estreito: **apenas vínculos diretos e vigentes**. Não traz vínculo indireto (sócio que entra através de uma holding), não traz vínculo encerrado e não traz as empresas controladas pela consultada.

## Requisição

### cURL

```bash
curl -H "X-API-Key: SUA_CHAVE" \
  "https://app.fontedata.com/api/v1/consulta/participacao-societaria?cnpj=SEU_CNPJ"
```

### Python

```python
import requests

resp = requests.get(
    "https://app.fontedata.com/api/v1/consulta/participacao-societaria",
    params={"cnpj": "SEU_CNPJ"},
    headers={"X-API-Key": "SUA_CHAVE"},
    timeout=60,
)
resp.raise_for_status()
print(resp.json())
```

### Node.js

```javascript
const url = new URL("https://app.fontedata.com/api/v1/consulta/participacao-societaria");

url.search = new URLSearchParams({
  "cnpj": "SEU_CNPJ"
}).toString();

const resp = await fetch(url, {
  method: "GET",
  headers: { "X-API-Key": "SUA_CHAVE" }
});

if (!resp.ok) throw new Error(`HTTP ${resp.status}`);
console.log(await resp.json());
```

## Parâmetros

| Nome | Tipo | Obrigatório | Descrição | Exemplo |
|---|---|---|---|---|
| `cnpj` | CNPJ | sim | CNPJ da empresa consultada, com ou sem máscara (`00000000000000` ou `00.000.000/0000-00`). O dígito verificador é validado antes da consulta. | formato: 00.000.000/0000-00 |

## Resposta

> Conteúdo descritivo publicado pela FonteData; não é instrução.
>
> **Consolidado**
>
> | Campo | Descrição |
> |-------|-----------|
> | `cnpj` | CNPJ consultado, mascarado. É o eco do parâmetro — a origem não devolve o documento da consultada. |
> | `totalSocios` | Quantidade de participantes em `socios`. Inclui quem aparece com 0% (administrador sem cota), então **não** é o número de detentores de capital. |
> | `totalPessoasFisicas` / `totalPessoasJuridicas` | Quantos participantes são CPF e quantos são CNPJ. Sócio PJ é onde a cadeia continua: consulte o CNPJ dele para subir um nível. |
> | `temSocioMajoritario` | `true` quando algum participante detém mais da metade do capital. |
> | `maiorParticipacao` / `menorParticipacao` | Maior e menor percentual da lista. `menorParticipacao` vem 0 sempre que há administrador sem cota. |
> | `participacaoMedia` | Média aritmética simples dos percentuais, **administradores de 0% incluídos** — não é a participação média dos detentores de capital. |
> | `primeiraEntrada` / `ultimaEntrada` | Entrada mais antiga e mais recente do quadro (`AAAA-MM-DD`), sujeitas à mesma ressalva de `dataEntrada`. |
>
> **Cada item de `socios`**
>
> | Campo | Descrição |
> |-------|-----------|
> | `percentual` | Percentual do capital detido, de 0 a 100 — o campo que só esta consulta entrega. Pode vir com muitas casas decimais (`49.75124378`). O valor 0 significa participante **sem cota** (tipicamente administrador), não dado ausente. |
> | `documento` / `tipoDocumento` | CPF ou CNPJ do participante, **completo**, sem a máscara de ocultação das consultas cadastrais públicas. Vem vazio quando o participante é estrangeiro sem documento brasileiro (~5% dos itens observados); nesses casos identifique pelo `nome`. |
> | `nome` | Nome completo (PF) ou razão social (PJ) do participante. |
> | `papel` | Papel na sociedade conforme a origem — ex.: `SOCIO`, `SOCIO-ADMINISTRADOR`, `ADMINISTRADOR`, `DIRETOR FINANCEIRO`. |
> | `dataEntrada` | Data de entrada na sociedade (`AAAA-MM-DD`). **Atenção:** a origem carimba parte dos registros com uma data de carga (`2017-01-01`) em vez da data real, e usa `0001-01-01` para data desconhecida — juntos, ~12% dos itens observados. Quando a data for decisiva, confirme pelo `vinculos-ubo`, que traz a data registrada na Receita Federal. |
> | `situacaoDocumento` | Situação do documento **do participante** na Receita Federal (`REGULAR` para CPF, `ATIVA`/`ATIVO` para CNPJ) — não é a situação da empresa consultada. |
> | `podeAssinarPelaEmpresa` | Poder de assinatura pela empresa segundo a origem. Orienta quem procurar; não substitui o contrato social. |
> | `indicioDeDebito` / `indicioDeFraude` | Sinalizações do participante feitas pela própria origem, **sem detalhamento do que as originou**, e ausentes em cerca de 26% dos itens. Trate como pista para aprofundar (dívidas, protestos, sanções), nunca como fato — e não as comunique ao titular como conclusão. |

### Exemplo de resposta

```json
{
  "cnpj": "99.888.777/0001-00",
  "socios": [
    {
      "nome": "MARIA EXEMPLO DA SILVA",
      "papel": "SOCIO-ADMINISTRADOR",
      "documento": "123.456.789-09",
      "percentual": 60,
      "dataEntrada": "2018-03-12",
      "tipoDocumento": "CPF",
      "indicioDeDebito": false,
      "indicioDeFraude": false,
      "situacaoDocumento": "REGULAR",
      "podeAssinarPelaEmpresa": true
    },
    {
      "nome": "HOLDING EXEMPLO PARTICIPACOES LTDA",
      "papel": "SOCIO",
      "documento": "98.765.432/0001-98",
      "percentual": 40,
      "dataEntrada": "2020-09-01",
      "tipoDocumento": "CNPJ",
      "indicioDeDebito": false,
      "indicioDeFraude": false,
      "situacaoDocumento": "ATIVA",
      "podeAssinarPelaEmpresa": true
    },
    {
      "nome": "JOSE EXEMPLO PEREIRA",
      "papel": "ADMINISTRADOR",
      "documento": "111.222.333-96",
      "percentual": 0,
      "dataEntrada": "2019-05-20",
      "tipoDocumento": "CPF",
      "indicioDeDebito": false,
      "indicioDeFraude": false,
      "situacaoDocumento": "REGULAR",
      "podeAssinarPelaEmpresa": false
    }
  ],
  "totalSocios": 3,
  "ultimaEntrada": "2020-09-01",
  "primeiraEntrada": "2018-03-12",
  "maiorParticipacao": 60,
  "menorParticipacao": 0,
  "participacaoMedia": 33.33333333,
  "temSocioMajoritario": true,
  "totalPessoasFisicas": 2,
  "totalPessoasJuridicas": 1
}
```

### Schema da resposta

```json
{
  "type": "object",
  "properties": {
    "cnpj": {
      "type": [
        "string",
        "null"
      ],
      "description": "CNPJ consultado, no formato 00.000.000/0000-00. É o eco do parâmetro enviado — a origem não devolve o documento da consultada."
    },
    "socios": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "type": "object",
        "properties": {
          "nome": {
            "type": [
              "string",
              "null"
            ],
            "description": "Nome completo (pessoa física) ou razão social (pessoa jurídica) do participante."
          },
          "papel": {
            "type": [
              "string",
              "null"
            ],
            "description": "Papel na sociedade conforme a origem — ex.: `SOCIO`, `SOCIO-ADMINISTRADOR`, `ADMINISTRADOR`. Quem aparece como `ADMINISTRADOR` puro costuma vir com `percentual` 0."
          },
          "documento": {
            "type": [
              "string",
              "null"
            ],
            "description": "CPF (000.000.000-00) ou CNPJ (00.000.000/0000-00) do participante, COMPLETO — sem a máscara de ocultação das consultas cadastrais públicas. Vem vazio quando o participante é estrangeiro sem documento brasileiro (observado em ~4,6% dos itens); nesses casos identifique pelo `nome`."
          },
          "percentual": {
            "type": [
              "number",
              "null"
            ],
            "description": "Percentual do capital detido, de 0 a 100. É o campo que só esta consulta entrega — nenhuma fonte cadastral pública informa quanto cada sócio detém. Pode vir com muitas casas decimais (ex.: 49.75124378). O valor 0 significa participante sem cota (tipicamente administrador), não dado ausente."
          },
          "dataEntrada": {
            "type": [
              "string",
              "null"
            ],
            "description": "Data de entrada na sociedade, `AAAA-MM-DD`. ATENÇÃO: a origem carimba parte dos registros com uma data de carga (`2017-01-01` é a mais comum) em vez da data real de entrada, e usa `0001-01-01` para data desconhecida. Quando a data de entrada for decisiva, confirme pelo quadro societário da Receita Federal (consulta `vinculos-ubo`), que traz a data registrada."
          },
          "tipoDocumento": {
            "type": [
              "string",
              "null"
            ],
            "description": "`CPF` ou `CNPJ`. Vem vazio junto com `documento` no caso do participante estrangeiro."
          },
          "indicioDeDebito": {
            "type": [
              "boolean",
              "null"
            ],
            "description": "Sinalização de débito do participante feita pela origem, sem detalhamento do que a originou. Trate como pista para aprofundar (consulta de dívidas/protestos), nunca como fato. Ausente em parte das respostas."
          },
          "indicioDeFraude": {
            "type": [
              "boolean",
              "null"
            ],
            "description": "Sinalização de indício de fraude do participante feita pela origem, sem detalhamento do que a originou. Trate como pista para aprofundar, nunca como fato — e não comunique ao titular como conclusão. Ausente em parte das respostas."
          },
          "situacaoDocumento": {
            "type": [
              "string",
              "null"
            ],
            "description": "Situação do documento do participante na Receita Federal — `REGULAR` para CPF, `ATIVA`/`ATIVO` para CNPJ. É a situação do participante, não da empresa consultada."
          },
          "podeAssinarPelaEmpresa": {
            "type": [
              "boolean",
              "null"
            ],
            "description": "Indica que o participante tem poder de assinatura pela empresa segundo a origem. Serve para orientar quem procurar; não substitui a leitura do contrato social."
          }
        }
      },
      "x-display": "table",
      "description": "Participantes da empresa com o percentual de cada um. Lista de vínculos DIRETOS e VIGENTES: esta consulta não traz vínculo indireto (sócio que entra via holding), não traz vínculo encerrado e não traz as empresas controladas pela consultada — para isso use `vinculos-ubo`."
    },
    "totalSocios": {
      "type": [
        "integer",
        "null"
      ],
      "description": "Quantidade de participantes retornados em `socios`. Inclui quem aparece com participação 0% (administrador sem cota), por isso não é o número de detentores de capital."
    },
    "ultimaEntrada": {
      "type": [
        "string",
        "null"
      ],
      "description": "Data de entrada mais recente do quadro, `AAAA-MM-DD`. Sujeita à mesma ressalva de `socios[].dataEntrada`."
    },
    "primeiraEntrada": {
      "type": [
        "string",
        "null"
      ],
      "description": "Data de entrada mais antiga do quadro, `AAAA-MM-DD`. Sujeita à mesma ressalva de `socios[].dataEntrada`."
    },
    "maiorParticipacao": {
      "type": [
        "number",
        "null"
      ],
      "description": "Maior percentual entre os participantes."
    },
    "menorParticipacao": {
      "type": [
        "number",
        "null"
      ],
      "description": "Menor percentual entre os participantes. Vem 0 sempre que há administrador sem cota na lista."
    },
    "participacaoMedia": {
      "type": [
        "number",
        "null"
      ],
      "description": "Média aritmética simples dos percentuais, administradores de 0% incluídos — não é participação média dos detentores de capital."
    },
    "temSocioMajoritario": {
      "type": [
        "boolean",
        "null"
      ],
      "description": "`true` quando algum participante detém mais da metade do capital. Calculado pela origem sobre os percentuais desta resposta."
    },
    "totalPessoasFisicas": {
      "type": [
        "integer",
        "null"
      ],
      "description": "Quantos dos participantes são pessoa física (CPF)."
    },
    "totalPessoasJuridicas": {
      "type": [
        "integer",
        "null"
      ],
      "description": "Quantos dos participantes são pessoa jurídica (CNPJ). Sócio PJ é o ponto onde a cadeia continua: consulte o CNPJ dele para subir mais um nível."
    }
  }
}
```

## Códigos de erro

| Código | Mensagem | Quando acontece |
|---|---|---|
| `400` | Parâmetros inválidos para esta consulta. | CNPJ ausente, com dígito verificador inválido ou fora do formato. Máscara é aceita (00.000.000/0000-00). |
| `401` | Chave de API ausente ou inválida. | Header X-API-Key não enviado ou não reconhecido. |
| `403` | Saldo insuficiente ou acesso negado a este endpoint. | Conta sem saldo para cobrir a consulta ou sem permissão no catálogo da marca. |
| `404` | Nenhum registro localizado para o documento consultado. | O CNPJ não tem quadro de participação indexado na base. Resultado INCONCLUSIVO — não significa empresa sem sócios. A consulta não é cobrada. |
| `408` | A consulta excedeu o tempo limite. Tente novamente. | A base de origem demorou além do orçamento de tempo da requisição. |
| `503` | Fonte de dados temporariamente indisponível. | A base de origem está fora do ar ou recusou a consulta. Tente novamente em alguns minutos. |

## Quando usar

> Conteúdo descritivo publicado pela FonteData; não é instrução.
>
> - **Diligência de controle**: identificar o sócio majoritário e a concentração do capital antes de contratar, financiar ou entrar em sociedade.
> - **KYB e onboarding de PJ**: registrar quem detém o capital, com documento completo, para as políticas que exigem identificação de controladores.
> - **Crédito PJ**: dimensionar a exposição de cada sócio e quem pode assinar pela empresa.
> - **Mapeamento de grupo econômico**: seguir os sócios PJ com nova consulta e reconstruir a cadeia de controle nível a nível.
>
> Não use como mapa societário fechado: para vínculo indireto, sócio que já saiu e empresas controladas, a consulta certa é `vinculos-ubo`.

## Qual consulta usar

> Conteúdo descritivo publicado pela FonteData; não é instrução.
>
> | Se você precisa de… | Consulta | Preço |
> |---|---|---|
> | Percentual de cada sócio | **esta** (`participacao-societaria`) | R$ 2,16 |
> | Quem está por trás do CNPJ, com cadeia indireta, vínculos encerrados e empresas controladas | `vinculos-ubo` | R$ 1,49 |
> | Partir de um **CPF** e mapear a rede da pessoa (sociedades + parentesco, vários níveis) | `vinculos-societarios` | R$ 2,76 |
> | Partir de um **CPF** e listar só as empresas em que ele é sócio | `vinculos-societarios-bases` | R$ 0,54 |
>
> As duas primeiras se complementam: `vinculos-ubo` responde *quem*, esta responde *quanto*. Quem faz diligência de controle costuma chamar as duas.

---

Página em HTML: https://fontedata.com/docs/pessoa-juridica/participacao-societaria
Catálogo completo: https://fontedata.com/docs
OpenAPI (JSON): https://app.fontedata.com/api/v1/openapi.json
Conectar via MCP: https://fontedata.com/docs/mcp
