Download de Extrato Consolidado
Faz o download de um arquivo de extrato consolidado previamente gerado pelo endpoint
POST /api/statement/consolidated (que requer autenticação).
O link retornado por aquele endpoint aponta para esta rota pública, pois o
acesso ao arquivo é controlado por um token de posse (o próprio token contido na
URL), não sendo necessário reenviar credenciais de autenticação para o download.
| Método | GET |
| Path | /api/statement/consolidated/files/{token} |
| Autenticação | Não requer |
Parâmetros de URL
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
token | string | Sim | Identificador único do relatório, gerado no momento da criação do extrato (POST /api/statement/consolidated) |
Respostas
200 OK — retorna o arquivo como anexo para download.
- Header
Content-Disposition: attachment; filename=consolidated_statement_AAAAMMDD.json - Header
Content-Type: application/json - Corpo: conteúdo do relatório consolidado (ver estrutura abaixo)
400 Bad Request — token não informado:
{ "message": "token is required" }
404 Not Found — nenhum arquivo encontrado para o token informado:
{ "message": "Arquivo nao encontrado" }
410 Gone — o arquivo existe, mas expirou (ver expires_at na estrutura do relatório):
{ "message": "Arquivo expirado" }
Estrutura do relatório (JSON)
{
"start_date": "2025-01-01",
"end_date": "2025-01-31",
"link": "https://.../api/statement/consolidated/files/<token>?file_type=json",
"expires_at": "2025-02-07T00:00:00Z",
"groups": [
{
"status": "PAID",
"total_amount": 1500.50,
"items": [
{ "id": "tx-123", "amount": 500.00, "fee": 1.50 },
{ "id": "tx-456", "amount": 1000.50, "fee": 2.00 }
]
}
]
}
| Campo | Descrição |
|---|---|
start_date / end_date | Período (formato YYYY-MM-DD) coberto pelo extrato |
link | URL de download deste próprio arquivo |
expires_at | Data/hora (RFC 3339) de expiração do arquivo. Após essa data, o download retorna 410 Gone |
groups | Transações agrupadas por status (ex.: PAID, FAILED), com valor total (total_amount) e lista de itens (items) |
groups[].items[].fee | Taxa cobrada sobre a transação |
Retenção
O arquivo gerado permanece disponível para download por um período limitado
(padrão: 7 dias corridos a partir da geração do relatório). Após esse prazo,
o download passa a retornar 410 Gone.