> For the complete documentation index, see [llms.txt](https://docs.scorepositivo.com.br/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.scorepositivo.com.br/relatorios/requisicao-de-relatorio.md).

# Requisição de Relatório

Os relatórios são consultas individuais e possuem unicamente os dados relativo ao documento pesquisado. Deve-se usar a mesma endpoint utilizando o código do relatório desejado.

O código de cada relatório está descrito nas sessões a seguir, nos detalhamentos de cada relatório.

## Requisição Base

Todos os relatórios são consultados por meio de um único end-point:

{% hint style="info" %} <mark style="color:orange;">**POST**</mark>         /api/report
{% endhint %}

## Parâmetros da requisição

Os parâmetros base da requisição devem ser enviados via **Data Raw JSON** no body da requisição.

<table><thead><tr><th width="262">Campo</th><th>Descrição</th></tr></thead><tbody><tr><td><strong>report_id</strong></td><td><p><mark style="color:red;">Obrigatório.</mark></p><p>Código do relatório a ser consultado.</p></td></tr><tr><td><strong>document</strong></td><td><p><mark style="color:red;">Obrigatório.</mark></p><p>Numeração do documento a ser consultado.</p></td></tr><tr><td><strong>external_id</strong></td><td><p><mark style="color:blue;">Opcional.</mark></p><p>Id de identificação da transação no seu sistema. (Char 36)</p></td></tr><tr><td><mark style="color:orange;"><strong>trial</strong></mark></td><td><p><mark style="color:blue;">Opcional.</mark></p><p><mark style="color:orange;">Enviar este parâmetro com o valor <strong>true</strong> durante o período de testes/integração.</mark><br></p><p><mark style="color:red;"><strong>Para as consultas de produção, NÃO DEVE ser enviado.</strong></mark></p></td></tr></tbody></table>

{% hint style="warning" %} <mark style="color:orange;">**INFO**</mark>

Alguns relatórios possuem parâmetros adicionais, alguns obrigatórios e ainda alguns relatórios possuem parâmetros diferentes dos parâmetros básicos padrão.

Consulte sempre a documentação do relatório específico para ver todos detalhes.
{% endhint %}

## Ambiente de Homologação e Testes

Devido da dinâmica de diversas combinações de resultados possíveis entre todos os relatórios, não possuímos um ambiente exclusivo para homologação.\
Deve-se utilizar para este fim, a requisição direto em ambiente de produção com uma flag de nome "**trial**" onde estas requisições não serão cobradas.\
O número de chamadas em **trail** é limitado, em caso de atingir o limite, acione seu gerente de contas.

## Exemplo de requisição para <mark style="color:orange;">Testes / Integração</mark>

```json
curl
--location 
--request POST 'https://core.scorepositivo.com.br/api/report' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer SEU_TOKEN_AQUI'
--data '{
    "report_id":"cpf-register",
    "document":"00000000000",
    "trial":true
}'
```

## Exemplo de requisição em <mark style="color:blue;">Produção</mark>

```json
curl
--location 
--request POST 'https://core.scorepositivo.com.br/api/report' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer SEU_TOKEN_AQUI'
--data '{
    "report_id":"cpf-register",
    "document":"00000000000"
}'
```

## Retornos

As requisições de relatórios retornam em uma estrutura principal, contendo o cabeçalho da consulta e o elemento <mark style="color:blue;">**report**</mark> com o conteúdo de cada relatório individualizado.

Você encontrará os detalhes de retorno de cada relatório individual nas sessões de relatórios disponíveis para consulta.

## Parâmetros de resposta

<table><thead><tr><th width="258">Campo</th><th>Descrição</th></tr></thead><tbody><tr><td>id</td><td>Identificador único da transação (UUID).</td></tr><tr><td>created_at</td><td>Data hora da requisição. (em GTM -03:00)</td></tr><tr><td>report_id</td><td>Código do relatório solicitado</td></tr><tr><td>document</td><td>Documento da consulta</td></tr><tr><td>status</td><td><p>Lista de status:</p><p></p><p><strong>PROCESS</strong> </p><p><strong>SUCCESS</strong> </p><p><strong>UNAVAILABLE</strong> </p><p><strong>EXCEPTION</strong> </p><p><strong>ERROR</strong><br><br>Ver detalhamento dos Status mais abaixo</p></td></tr><tr><td>code</td><td>Código para descrição complementar do status. Confira a <a href="/pages/4sPNQaNC6BDPtEBYk9hU">Tabela de Mensagens</a> para mais detalhes.</td></tr><tr><td>report</td><td>Elemento JSON com o resultado do relatório solicitado.</td></tr></tbody></table>

```json
{    
    "id": "1876d480-5d69-4d7f-8f03-b83ba02fc605",
    "created_at": "2024-07-23T18:57:52-03:00",
    "report_id":"cpf-register",
    "document":"00000000000",
    "status": "SUCCESS",
    "code": 0,
    "report": {
        //CONTEUDO DO RELATÓRIO
    } 
}
```

{% hint style="warning" %} <mark style="color:orange;">**INFO**</mark>

**PROCESS**\
O status **PROCESS** é retornado para os relatórios de processamentos assíncronos.\
Neste caso, o resultado deve ser consultado através do endpoint de resultado de relatórios. O status **PROCESS** é o único status **mutável**, pois até o SLA limite do relatório, ele se tornará em algum dos status a seguir.

\ <mark style="color:blue;">**SUCCESS**</mark>\
O status <mark style="color:blue;">**SUCCESS**</mark> é retornado para relatórios executado com sucesso.\
Nem sempre isso implica em retorno de dados, alguns relatórios consultam justamente a falta de apontamentos no documento consultado.\
As transações com status <mark style="color:blue;">**SUCCESS**</mark> são as únicas que geram cobranças.

\ <mark style="color:orange;">**UNAVAILABLE**</mark> e <mark style="color:orange;">**ERROR**</mark>\
Os status <mark style="color:orange;">**UNAVAILABLE**</mark> e <mark style="color:orange;">**ERROR**</mark> representam alguma indisponibilidade momentânea no documento e/ou fonte de dados ou ainda erros sistêmicos.\
Neste caso, a consulta pode ser requisitada novamente após alguns minutos ou após algum momento maior, conforme descrição da mensagem de retorno.

\ <mark style="color:red;">**EXCEPTION**</mark> \
O status <mark style="color:red;">**EXCEPTION**</mark> representa alguma limitação de negócio ou jurídica para a entrega dos dados.\
Neste caso, os dados não serão retornados para o documento solicitado, até que o documento deixe de ter a restrição aplicada.<br>
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.scorepositivo.com.br/relatorios/requisicao-de-relatorio.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
