> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Receber o resultado do relatório como evento (automática)

> Receba report.finished ou report.partial do Reporter pelo Streaming Hub e depois baixe o arquivo ou leia o que falhou.

Saiba por um evento que um relatório está pronto, em vez de ler o status dele várias vezes.

## Participantes

***

* **Sua instituição.** O seu sistema que recebe o evento e chama a API do Reporter.
* **Reporter.** Registra o resultado do relatório e publica o evento.
* **Streaming Hub.** Entrega o evento à sua subscription.

## Antes de começar

***

* O Streaming Hub recebe os eventos do Reporter no seu ambiente.
* Você tem uma subscription ativa no Streaming Hub que recebe `report.finished` e `report.partial` na versão major `2`. Veja [Gerenciar subscriptions](https://docs.lerian.studio/pt/platform/streaming-hub/managing-subscriptions.md).

## Diagrama

***

![Receber o resultado do relatório como evento](https://mintcdn.com/lerian-49cb71fc/WuRfbo_y9uSbzyyX/images/pt/d2/id-reporter-receive-the-report-result.svg?fit=max\&auto=format\&n=WuRfbo_y9uSbzyyX\&q=85\&s=f4064e8939af79e92fe3257d2ae84ba1)

## O que o sistema faz sozinho

***

| # | Origem | Destino | Mensagem | API da Lerian | O que acontece |
| - | - | - | - | - | - |
| 1 | Reporter | Reporter | Etapa interna | | O Reporter guarda o arquivo e registra o status `Finished` ou `Partial`. |
| 2 | Reporter | Streaming Hub | Evento | [`report.finished` ou `report.partial`](https://docs.lerian.studio/pt/reference/events/reporter) | O Reporter publica o evento depois de registrar o status. |
| 3 | Streaming Hub | Sua instituição | Evento | [`report.finished` ou `report.partial`](https://docs.lerian.studio/pt/reference/events/reporter) | O Streaming Hub entrega o evento à sua subscription. |
| 4 | Sua instituição | Reporter | API da Lerian | [`GET /v1/reports/{id}/download`](https://docs.lerian.studio/pt/reference/products/reporter/download-report) | Para `report.finished`, baixe o arquivo. O campo `report_id` do evento é o `{id}`. |
| 5 | Reporter | Sua instituição | Resposta | | O Reporter devolve o arquivo. |
| 6 | Sua instituição | Reporter | API da Lerian | [`GET /v1/reports/{id}`](https://docs.lerian.studio/pt/reference/products/reporter/check-report-status) | Para `report.partial`, leia o relatório. |
| 7 | Reporter | Sua instituição | Resposta | | O Reporter devolve o relatório. O `metadata` dele nomeia as fontes de dados que falharam. |

## Regras

***

* Pelo Streaming Hub, você recebe um evento quando um relatório termina como `Finished` ou `Partial`.
* Você pode receber o mesmo evento mais de uma vez. Descarte uma repetição pelo ID do evento, como descreve [Consumir eventos](https://docs.lerian.studio/pt/platform/streaming-hub/consuming-events.md).

## Como saber que terminou

***

Você recebeu `report.finished` e baixou o arquivo. Ou você recebeu `report.partial` e leu as fontes de dados que falharam.

## O que pode dar errado

***

| Situação | O que você vê | O que fazer |
| - | - | - |
| Nenhum evento chega | Nenhuma entrega para o relatório | Leia o status do relatório. O relatório ainda pode estar `Processing`, ou ele terminou como `Error`. |

## Relacionados

***

* [Gerar e baixar um relatório](https://docs.lerian.studio/pt/diagrams/lerian-products/reporter-generate-a-report.md)
* [Eventos do Reporter](https://docs.lerian.studio/pt/reference/events/reporter.md)
* [Consumir eventos](https://docs.lerian.studio/pt/platform/streaming-hub/consuming-events.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.