Confira o preço antes de iniciar a pesquisa. Envie POST /v1/orcamento/participacao-societaria com os dados que deseja pesquisar. O orçamento informa o valor e a disponibilidade, sem cobrar.
Receita Federal do Brasil
Participação societária (RFB)
Em que empresas um CPF ou CNPJ consta como sócio, pelo quadro societário publicado pela Receita Federal.
Site oficial da fonte ↗/v1/consultas/participacao-societaria
v1
Tempo típico
não medido
Preço a definir
—
Visão geral
Responde a pergunta inversa do cartão CNPJ: em vez de "quem são os sócios desta empresa", responde "de que empresas esta pessoa é sócia" — cobertura nacional, incluindo as participações já encerradas.
A base é o quadro de sócios dos dados abertos da Receita Federal, carregado por nós. Não há chamada a origem externa nenhuma no caminho: a consulta é feita no nosso banco.
Atenção: Para pessoa física o vínculo é INDÍCIO, não confirmação — a Receita publica o CPF mascarado. Leia a primeira nota antes de integrar.
Antes de começar
Cobrança, idempotência e leitura do resultado. Leia antes da primeira chamada.
Custa dinheiro se você ignorar 2
Pessoa física é INDÍCIO, e sem nome não roda
A Receita publica o CPF do sócio mascarado (***342537**). São seis dígitos: milhares de pessoas compartilham a mesma máscara no Brasil.
O casamento é feito por máscara MAIS nome completo, e por isso confianca volta sempre INDICIO. Tratar como confirmado — e afirmar num laudo que fulano é sócio de uma empresa — é o erro caro deste contrato.
Alvo PF sem nome faz a consulta ser recusada antes de cobrar. É deliberado: devolver os homônimos de máscara seria pior que não responder.
Para CNPJ não há máscara nenhuma, e o vínculo é exato.
A resposta é do MÊS PASSADO, e diz qual
O arquivo da Receita é mensal, e entre a publicação e a movimentação real há cerca de 40 dias. O campo competencia diz exatamente a que mês a resposta se refere.
Alvo em litígio recente é justamente o caso em que essa defasagem decide: uma saída de sociedade feita no mês passado ainda não está aqui. Para isso existe a consulta paga de vínculos societários, que traz data de fim — as duas coexistem de propósito.
Vale saber antes de integrar 1
Saída é detectada por diferença
O arquivo não tem data de saída de sócio. Ela é calculada comparando dois snapshots mensais, então saida_detectada_em é o MÊS em que a linha sumiu — nunca a data do ato societário.
Serve para saber que saiu, não para provar quando saiu.
Requisição
Autentique com token no cabeçalho. Parâmetro obrigatório ausente é recusado com
422, antes de qualquer cobrança.
cpf_cnpj
string
obrigatório
CPF (11 dígitos) ou CNPJ (14 dígitos) do sócio procurado. Com ou sem máscara.
nome
string
opcional
Atenção: OBRIGATÓRIO na prática quando o alvo é pessoa física: a base traz o CPF mascarado, e sem o nome completo não há como desempatar. Sem ele a consulta é recusada sem cobrar, em vez de devolver os homônimos de máscara.
curl -X POST https://api.oficialdata.com.br/v1/consultas/participacao-societaria \
-H "Authorization: Bearer SEU_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"cpf_cnpj": "12345678909",
"nome": "MARIA DE SOUZA LIMA"
}'
O HTTP é sempre 200 quando a requisição chegou.
O resultado real está em code, no corpo — trate
code, nunca o status.
Resposta
Dentro de data[]:
10 campos em 1 blocos.
Campo que a origem não informou volta null —
nunca 0 nem string vazia. Trate
null como dado ausente, não como zero.
data[]
object
Positiva quando há participação, Negativa quando não há.
true quando o alvo não aparece em nenhum quadro societário da competência carregada.
Atenção: INDICIO para pessoa física (casamento por máscara + nome). Não existe valor que a faça voltar CONFIRMADO.
Atenção: O mês do arquivo da Receita que está carregado. É a data a que a resposta se refere — não é hoje.
Participações vigentes na competência.
Participações que sumiram entre dois snapshots — saída detectada por diferença, com resolução mensal.
Soma das duas.
Uma entrada por empresa ativa: CNPJ, razão social, qualificação do sócio e data de entrada.
Idem para as encerradas, com saida_detectada_em — o MÊS em que a linha desapareceu do arquivo, não a data do ato.
Frase pronta para tela e laudo, já com a competência.
Códigos de erro
O mesmo mapa que o motor usa em produção. Leia as colunas Estorna e Retenta antes de integrar: nem toda falha devolve o dinheiro.
| Classe | Códigos | Significa | Estorna | Retenta |
|---|---|---|---|---|
sucesso |
200 | A origem respondeu e entregou. | — | — |
nao_encontrado |
612 | A origem respondeu: nada consta para este alvo. | Não | Não |
indeterminado |
611 | A origem não conseguiu emitir pela internet. Não é irregularidade. | Não | Não |
erro_participante |
608 619 620 | A origem recusou os DADOS do pedido. | Não | Sim |
retry |
600 605 609 610 613 614 615 618 | Instabilidade momentânea da origem ou do transporte. | Sim | Sim |
fatal |
601 602 603 604 606 607 617 621 622 | Defeito de integração — nosso, não seu. | Sim | Não |
Estorno:
erro_participante é a única
classe que não devolve o dinheiro — nela a origem
respondeu recusando os dados do pedido. Corrija o alvo antes de repetir.
fatal é falha nossa e sempre estorna.
Permanentes: não retente 602 e 603. A fonte sai do ar na hora e a nossa equipe é avisada.
Limites e desempenho
Números medidos em produção. "Não medido" é falta de amostra — nenhum valor aqui é estimativa.
Tempo típico
não medido
p95
não medido
Teto por hora
—
Timeout máximo
—
De onde vem o tempo: cerca de 85% dos ~s típicos é a origem varrendo os cartórios. Dimensione o seu timeout por esse número e não conte com redução.
Sobre o teto: a origem exige sessão única por conta, então os pedidos são serializados. É limite técnico, não cota comercial: acima dele a fila cresce e paralelizar do seu lado não acelera. Para volume maior, combine antes.
Versionamento
O contrato de resposta é v1,
e a versão viaja em header.api_version
em toda resposta.
- Campo novo opcional pode entrar a qualquer momento e não muda a versão. Seu parser precisa ignorar campo que não conhece.
- Remover campo, renomear campo ou mudar tipo é versão nova, publicada em paralelo, com prazo de desligamento anunciado da anterior.
- Nunca alteramos o significado de um campo existente mantendo o nome. Se o significado muda, o nome muda junto.
Vai integrar?
Diga o volume que você espera e em quais UFs. A ordem de liberação segue a demanda.