Se você ainda não possui acesso a API da Avec, veja antes esse artigo
Para acessar qualquer relatório da Avec via API você utilizará a rota abaixo, passando o token no cabeçalho da requisição, informando na url o código do relatório (no exemplo 1042) a página do relatório, o limit (quantidade de registros por página, máximo 1000) e qualquer outro parâmetro exigido pelo relatório, como por exempo data inicio e data fim.
Se você estiver usando um token do módulo franquia você ainda pode passar o parâmetro salao_unidade_id informando o id da unidade
Ex:
GET: https://api.salaovip.com.br/reports/1042?page=1&limit=1000&inicio=2020-07-01&fim=2020-07-31&salao_unidade_id=123
O retorno do relatório terá a seguinte estrutura:
Code: Se 200, indica que deu tudo certo com a requisição, qualquer outro retorno será acompanhado de uma mensagem de erro
Data: Conteúdo do relatório
Report: Informações sobre o relatório
Description: Descrição do relatório
RequiredParams: Parametros exigidos pelo relatório, caso você não saiba o nome correto para enviar na url do elatorio, basta olhar as informações desse campo e passar por parametro sempre o campo name de cada item.
Total: Caso o relatório possua um totalizador os valores serão carregados nesse item.
Result: O resultado de fato do relatório, as linhas do relatório.
HasMore: Caso ele seja TRUE significa que ainda existem mais páginas além dessa, caso seja FALSE você já chegou na ultima página desse relatório.
{ "code": 200, "data": { "report": { "description": "Mostra o total de produtos vendidos e o faturamento total por unidade", "requiredParams": [ { "name": "inicio", "label": "Data Início", "type": "date", "value": "01/date('m/Y')" }, { "name": "fim", "label": "Data Fim", "type": "date", "value": "date('d/m/Y')" } ], "total": null, "result": [ { "nome": "Loja1", "faturado": 39808.72, "quantidade": "403", "unicas": 153 }, { "nome": "Loja2", "faturado": 27622.09, "quantidade": "240", "unicas": 83 }, { "nome": "Loja3", "faturado": 96260.97, "quantidade": "995", "unicas": 378 } ], "hasMore": false } } }
Exemplo de requisição no Postman: