---
title: "Relatório Positivo PJ"
description: "API Relatório Positivo PJ - Decisão de crédito mais rápida e segura"
lang: en
canonical: https://doc.apibrasil.io/apis/creditos/f69549bb-d7d2-4058-93c2-8c6b242a117d
markdown: https://doc.apibrasil.io/apis/creditos/f69549bb-d7d2-4058-93c2-8c6b242a117d.md
source: apibrasil-documentation
---

# Relatório Positivo PJ

> API Relatório Positivo PJ - Decisão de crédito mais rápida e segura

- **Category:** Fraud Analysis
- **Billing:** per query, with the Bearer Token only
- **Price:** R$36.30 per query
- **Limit:** 999,000 per month
- **Registration:** requires a CNPJ
- **Version:** v1
- **Published by:** APIBrasil
- **OpenAPI specification:** https://doc.apibrasil.io/apis/creditos/f69549bb-d7d2-4058-93c2-8c6b242a117d/openapi.json

## How to call

**Base address:** `https://gateway.apibrasil.io/api/v2`

Authentication: the `Authorization: Bearer <token>` header. Nothing else.

With `homolog: true` in the body, the gateway answers from a fixed base, with the real shape of the response, and does not charge. The CPF 00000000000 belongs to that base and to nobody: use it in tests, never in production.

## Endpoints (1 endpoint)

### 1. POST /consulta/cnpj/credits

- **Method:** `POST`
- **Address:** `https://gateway.apibrasil.io/api/v2/consulta/cnpj/credits`
- **Route version:** v1

**Headers**

| Header | Value |
| --- | --- |
| `Content-Type` | `application/json` |
| `Authorization` | `Bearer $APIBRASIL_TOKEN` |

**Request body**

```json
{
  "tipo": "relatorio-positivo-pj",
  "cnpj": "44.959.669/0001-80",
  "homolog": true
}
```

**In cURL**

```bash
curl -X POST "https://gateway.apibrasil.io/api/v2/consulta/cnpj/credits" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $APIBRASIL_TOKEN" \
  -d '{"tipo":"relatorio-positivo-pj","cnpj":"44.959.669/0001-80","homolog":true}'
```

This endpoint accepts `homolog: true` in the body: the response comes back with valid data, `api_limit_for` equal to `homolog` and no charge.

**Sample response, from the catalog**

```json
{
  "user": {
    "first_name": "[omitido]",
    "email": "[omitido]",
    "cellphone": "[omitido]",
    "notification": "yes"
  },
  "balance": "429,670",
  "error": false,
  "message": "Dados válidos! Você foi tarifado em R$ 0,00.",
  "tax": "0,000",
  "valor_consulta": 0,
  "api_limit_for": "credit",
  "homolog": true,
  "data": {
    "resultado": {
      "cnpj": "44959669000180",
      "consultas": {
        "cnpj": "44959669000180",
        "contagem_consultas_31_a_60_dias": 0,
        "contagem_consultas_61_a_90_dias": 1,
        "contagem_consultas_mais_90_dias": 17,
        "contagem_consultas_ultimos_30_dias": 2,
        "detalhes_consultas": [
          {
            "contagem_consultas": 1,
            "data_consulta": {
              "ano": "2026",
              "dia": "4",
              "mes": "3"
            },
            "segmento": "0"
          },
          {
            "contagem_consultas": 1,
            "data_consulta": {
              "ano": "2026",
              "dia": "3",
              "mes": "3"
            },
            "segmento": "Serviços"
          },
          {
            "contagem_consultas": 1,
            "data_consulta": {
              "ano": "2025",
              "dia": "9",
              "mes": "9"
            },
            "segmento": "0"
          },
          {
            "contagem_consultas": 1,
            "data_consulta": {
              "ano": "2025",
              "dia": "8",
              "mes": "9"
            },
            "segmento": "0"
          },
          {
            "contagem_consultas": 1,
            "data_consulta": {
              "ano": "2025",
              "dia": "2",
              "mes": "6"
            },
            "segmento": "Instituições Financeiras"
          },
          {
            "contagem_consultas": 3,
            "data_consulta": {
              "ano": "2025",
              "dia": "5",
              "mes": "12"
            },
            "segmento": "0"
          },
          {
            "contagem_consultas": 1,
            "data_consulta": {
              "ano": "2025",
              "dia": "11",
              "mes": "12"
            },
            "segmento": "0"
          },
          {
            "contagem_consultas": 1,
            "data_consulta": {
              "ano": "2025",
              "dia": "4",
              "mes": "11"
            },
            "segmento": "0"
          },
          {
            "contagem_consultas": 1,
            "data_consulta": {
              "ano": "2025",
              "dia": "3",
              "mes": "11"
            },
            "segmento": "0"
          },
          {
            "contagem_consultas": 1,
            "data_consulta": {
              "ano": "2025",
              "dia": "21",
              "mes": "11"
            },
            "segmento": "0"
          },
          {
            "contagem_consultas": 1,
            "data_consulta": {
              "ano": "2025",
              "dia": "17",
              "mes": "11"
            },
            "segmento": "0"
          },
          {
            "contagem_consultas": 3,
            "data_consulta": {
              "ano": "2025",
              "dia": "12",
              "mes": "11"
            },
            "segmento": "Instituições Financeiras"
          },
          {
            "contagem_consultas": 1,
            "data_consulta": {
              "ano": "2025",
              "dia": "11",
              "mes": "11"
            },
            "segmento": "0"
          },
          {
            "contagem_consultas": 1,
            "data_consulta": {
              "ano": "2025",
              "dia": "8",
              "mes": "10"
            },
            "segmento": "0"
          },
          {
            "contagem_consultas": 1,
            "data_consulta": {
              "ano": "2025",
              "dia": "31",
              "mes": "10"
            },
            "segmento": "0"
          },
          {
            "contagem_consultas": 1,
            "data_consulta": {
              "ano": "2025",
              "dia": "28",
              "mes": "10"
            },
            "segmento": "0"
          }
        ]
      },
      "consultas_conglomerado": [
        {
          "cnpj": "44959669000180",
          "contagem_consultas_31_a_60_dias": 0,
          "contagem_consultas_61_a_90_dias": 1,
          "contagem_consultas_mais_90_dias": 17,
          "contagem_consultas_ultimos_30_dias": 2,
          "detalhes_consultas": [
            {
              "contagem_consultas": 1,
              "data_consulta": {
                "ano": "2026",
                "dia": "4",
                "mes": "3"
              },
              "segmento": "0"
            },
            {
              "contagem_consultas": 1,
              "data_consulta": {
                "ano": "2026",
                "dia": "3",
                "mes": "3"
              },
              "segmento": "Serviços"
            },
            {
              "contagem_consultas": 1,
              "data_consulta": {
                "ano": "2025",
                "dia": "9",
                "mes": "9"
              },
              "segmento": "0"
            },
            {
              "contagem_consultas": 1,
              "data_consulta": {
                "ano": "2025",
                "dia": "8",
                "mes": "9"
              },
              "segmento": "0"
            },
            {
              "contagem_consultas": 1,
              "data_consulta": {
                "ano": "2025",
                "dia": "2",
                "mes": "6"
              },
              "segmento": "Instituições Financeiras"
            },
            {
              "contagem_consultas": 3,
              "data_consulta": {
                "ano": "2025",
                "dia": "5",
                "mes": "12"
              },
              "segmento": "0"
            },
            {
              "contagem_consultas": 1,
              "data_consulta": {
                "ano": "2025",
                "dia": "11",
                "mes": "12"
              },
              "segmento": "0"
            },
            {
              "contagem_consultas": 1,
              "data_consulta": {
                "ano": "2025",
                "dia": "4",
                "mes": "11"
              },
              "segmento": "0"
            },
            {
              "contagem_consultas": 1,
              "data_consulta": {
                "ano": "2025",
                "dia": "3",
                "mes": "11"
              },
              "segmento": "0"
            },
            {
              "contagem_consultas": 1,
              "data_consulta": {
                "ano": "2025",
                "dia": "21",
                "mes": "11"
              },
              "segmento": "0"
            },
            {
              "contagem_consultas": 1,
              "data_consulta": {
                "ano": "2025",
                "dia": "17",
                "mes": "11"
              },
              "segmento": "0"
            },
            {
              "contagem_consultas": 3,
              "data_consulta": {
                "ano": "2025",
                "dia": "12",
                "mes": "11"
              },
              "segmento": "Instituições Financeiras"
            },
            {
              "contagem_consultas": 1,
              "data_consulta": {
                "ano": "2025",
                "dia": "11",
                "mes": "11"
              },
              "segmento": "0"
            },
            {
              "contagem_consultas": 1,
              "data_consulta": {
                "ano": "2025",
                "dia": "8",
                "mes": "10"
              },
              "segmento": "0"
            },
            {
              "contagem_consultas": 1,
              "data_consulta": {
                "ano": "2025",
                "dia": "31",
                "mes": "10"
              },
              "segmento": "0"
            },
            {
              "contagem_consultas": 1,
              "data_consulta": {
                "ano": "2025",
                "dia": "28",
                "mes": "10"
              },
              "segmento": "0"
            }
          ]
        }
      ],
      "dados_cadastrais": {
        "atividade_principal": "6311900",
        "atividade_secundaria": "6201501",
        "conglomerado": {
          "empresa": [
            {
              "cnpj": "44959669000180",
              "data_fundacao": {
                "ano": "2022",
                "dia": "21",
                "mes": "1"
              }
            }
          ]
        },
        "contagem_filiais": "0",
        "data_fundacao": {
          "ano": "2022",
          "dia": "21",
          "mes": "1"
        },
        "descricao_atividade_principal": "TRATAMENTO DE DADOS, PROVEDORE",
        "descricao_atividade_secundaria": "DESENVOLVIMENTO DE PROGRAMAS D",
        "emails": {
          "data_ultima_visualizacao": {
            "ano": "2025",
            "dia": "20",
            "mes": "3"
          },
          "emails": "[omitido]"
        },
        "enderecos": {
          "bairro": "JARDIM DAS FLORES",
          "cidade": "RIO DE JANEIRO",
          "codigo_postal": "20000-000",
          "complemento": null,
          "data_ultima_visualizacao": {
            "ano": "2026",
            "dia": "27",
            "mes": "2"
          },
          "estado": "RJ",
          "numero": "250",
          "rua": "RUA EXEMPLO"
        },
        "historico_email": {
          "emails": [
            {
              "data_ultima_visualizacao": {
                "ano": "2025",
                "dia": "20",
                "mes": "3"
              },
              "emails": "[omitido]"
            },
            {
              "data_ultima_visualizacao": {
                "ano": "2025",
                "dia": "28",
                "mes": "4"
              },
              "emails": "[omitido]"
            },
            {
              "data_ultima_visualizacao": {
                "ano": "2024",
                "dia": "2",
                "mes": "9"
              },
              "emails": "[omitido]"
            }
          ]
        },
        "historico_endereco": {
          "enderecos": [
            {
              "bairro": "JARDIM DAS FLORES",
              "cidade": "RIO DE JANEIRO",
              "codigo_postal": "20000-000",
              "complemento": null,
              "data_ultima_visualizacao": {
                "ano": "2026",
                "dia": "27",
                "mes": "2"
              },
              "estado": "RJ",
              "numero": "250",
              "rua": "RUA EXEMPLO"
            },
            {
              "bairro": "COPACABANA",
              "cidade": "RIO DE JANEIRO",
              "codigo_postal": "22000-000",
              "complemento": null,
              "data_ultima_visualizacao": {
                "ano": "2025",
                "dia": "21",
                "mes": "7"
              },
              "estado": "RJ",
              "numero": "100",
              "rua": "AVENIDA ATLANTICA"
            }
          ]
        },
        "historico_numero_telefone": {
          "numero_telefone": [
            {
              "data_ultima_visualizacao": {
                "ano": "2026",
                "dia": "27",
                "mes": "2"
              },
              "numero_telefone": "2133334444"
            },
            {
              "data_ultima_visualizacao": {
                "ano": "2026",
                "dia": "27",
                "mes": "2"
              },
              "numero_telefone": "2133335555"
            }
          ]
        },
        "nire": "12345678901",
        "nome_empresa": "EMPRESA EXEMPLO LTDA",
        "nome_fantasia": "EXEMPLO EMPRESA",
        "numero_telefone": "2133334444",
        "status_empresa": "ATIVO",
        "tipo_legal": "2062"
      },
      "indicadores_de_negocios": {
        "descricao_indicadores_de_negocios": "Os indicadores de Negócios PJ são calculados através dos dados do cadastro positivo e levam em consideração o comportamento em crédito do CNPJ consultado em relação a população de empresas brasileiras.",
        "endividamento": {
          "contratos_em_aberto": {
            "descricao": "Não possui parcelas em atraso no período calculado.",
            "nomes": "Quantidade de contratos em aberto",
            "risco": "Risco Baixo"
          },
          "credito_emergencial": {
            "descricao": "A empresa não possui histórico de uso de crédito emergencial nos últimos 6 meses.",
            "nomes": "Uso de crédito emergencial",
            "risco": "Indefinido"
          }
        },
        "pontualidade_de_pagamento": {
          "pontualidade_pagamento": {
            "descricao": "A empresa apresenta um volume alto de compromissos financeiros pagos em dia.",
            "nomes": "Pontualidade de Pagamento",
            "risco": "Risco Baixo"
          },
          "tempo_atraso": {
            "descricao": "Não possui parcela em atraso no período calculado.",
            "nomes": "Tempo de atraso",
            "risco": "Risco Baixo"
          }
        },
        "relacionamento_com_o_mercado": {
          "novas_contratacoes": {
            "descricao": "A empresa não apresentou novas contratações de crédito nos últimos 12 meses.",
            "nomes": "Quantidade de novas contratações",
            "risco": "Risco Baixo"
          },
          "perfil_contratacao": {
            "descricao": "A empresa utilizou produtos de crédito com risco alto.",
            "nomes": "Risco do perfil de contratação",
            "risco": "Risco Alto"
          },
          "perfil_de_relacionamento": {
            "descricao": "Não possui histórico de contratações",
            "nomes": "Indicadores de Relacionamento com o Mercado - Perfil de Relacionamento",
            "risco": "Indefinido"
          }
        }
      },
      "negativacoes": {
        "acoes_judiciais_apontamentos": [],
        "apontamentos": [],
        "ccf_apontamentos": [],
        "controle_pendencias_credito": "0",
        "data_ultimo_apontamento": {
          "ano": null,
          "dia": null,
          "mes": null
        }
      },
      "participacao_societaria_em_outras_empresas": [],
      "possui_apenas_dados_pessoais_minimos": false,
      "possui_dados_consulta": true,
      "possui_dados_negativacoes": false,
      "protestos": [
        {
          "cartorios": [],
          "cnpj": null,
          "cpf_cnpj": null,
          "data_consulta": "2026-03-09",
          "descricao_erro": null,
          "erro": null,
          "id_transacao": null,
          "mostrar_invalidos": null,
          "retorno": null,
          "situacao": null,
          "total_protestos": null,
          "valor_protestados_total": null
        }
      ],
      "quadro_societario": {
        "capital_social": "10000",
        "nivel_confianca": "0",
        "socios": [
          {
            "cpf_cnpj": "11122233344",
            "data_inicio": {
              "ano": null,
              "dia": null,
              "mes": null
            },
            "data_inicio_socio": {
              "ano": "2022",
              "dia": "20",
              "mes": "1"
            },
            "data_referencia": {
              "ano": "2025",
              "dia": "17",
              "mes": "7"
            },
            "data_termino": {
              "ano": null,
              "dia": null,
              "mes": null
            },
            "descricao_relacionamento": "SOCIO",
            "flag_dados_negativacoes": false,
            "flag_emprego_principal": true,
            "nivel_confianca": "Dados Atualizados",
            "nomes": "JOAO SILVA EXEMPLO",
            "percentual_participacao": "100.0",
            "status": "Regular",
            "tipo_entidade": "PF",
            "valor_participacao": "10000.0"
          }
        ]
      },
      "score": {
        "descricao": "Muito Alto",
        "descricao_complementar_score": "De acordo com o perfil do CNPJ consultado e seu principal sócio, o risco de não pagamento dos compromissos financeiros da empresa é estatisticamente muito alto",
        "descricao_probabilidade_pagamento": "A chance desta empresa não pagar nos próximos meses é de 83%.",
        "numero_score": 550,
        "probabilidade_pagamento": "17% e 33%",
        "razao_numero_score_1": "Possui quadro societário com baixo número de sócios ou acionistas",
        "razao_numero_score_2": "Possui atrasos e/ou pendencias financeiras ativas",
        "razao_numero_score_3": "Possui contratos com alto valor para quitação",
        "razao_numero_score_4": "Possui grande quantidade de credores e/ou contratos com dividas em aberto nos últimos 6 meses"
      },
      "status_cadastro_positivo": "1"
    }
  }
}
```

In the sample responses, the fields of the account that generated the sample (`user.first_name`, `user.email`, `user.cellphone`) come out as `[omitido]`. The rest is what the catalog publishes.

## Pitfalls: what an integration gets wrong without warning

Established from the responses the catalog itself publishes. In every one of them the code works on the happy path and fails silently everywhere else:

1. **The error arrives in the BODY, with HTTP 200.**
   The response carries a boolean `error` field and a `message`. Checking only `response.ok` or the HTTP status lets a failure through as a success. ALWAYS check `error === false` before reading `data`.

2. **`balance`, `tax` and `extra_charges.total` are STRINGS in Brazilian format — and the format varies between APIs.**
   Values seen in the catalog: `"154,380"`, `"497,84"`, `"0,000"` and `"0.19"`. Comma in some, dot in another; three decimal places in some, two in another. In JavaScript, `parseFloat("154,380")` returns `154` and drops the cents with no error at all, and `Number("154,380")` returns `NaN`. Write a converter that handles both separators, and never use these fields in a financial decision without converting them.

3. **Every call costs money.**
   Blind retries multiply the bill. Never automatically repeat a 4xx: a bad parameter repeated is still bad, and still charged. Retry only timeouts and 5xx, with exponential backoff and a small attempt ceiling.

4. **HTTP 402 means insufficient balance, and retrying does not fix it.**
   It is the one status that needs a human — a top-up. Treat it as a terminal error with its own message, and do not lump it in with generic 4xx.

5. **`extra_charges` bills on top of the lookup price.**
   When the body asks for add-on services, the response lists each one with its price plus a `total` that is NOT included in the base amount. If you show cost to an end user, add both.

## See also

- OpenAPI specification: https://doc.apibrasil.io/apis/creditos/f69549bb-d7d2-4058-93c2-8c6b242a117d/openapi.json
- API catalog: [API catalog](https://doc.apibrasil.io/apis.md)
- Official SDKs: [Official SDKs](https://doc.apibrasil.io/sdks.md)
- Documentation index: https://doc.apibrasil.io/llms.txt
- HTML version of this page: https://doc.apibrasil.io/apis/creditos/f69549bb-d7d2-4058-93c2-8c6b242a117d
