Introdução
Seja bem-vindo a nossa documentação!Referência da API
A esquerda estão listados todos os recursos disponíveis e cada um de seus endpoints determinando o que será consumido pela API.Todas as chamadas precisam ser enviadas com um token de acesso para (fornecido por nós) cliente e encaminhado para o integrador.
Toda a comunicação desta API será representada por objetos JSON.
Chamando a API
Veja como funciona a estrura de URL desta API.{URL_BASE_API}/via/{RECURSO}/{ENDPOINT}/{TOKEN}
-
{RECURSO}
Nome do recurso que deseja consumir. Por exemplo: produto, pedido...
-
{ENDPOINT}
Ação em si que determinará o que será consumido. Por exemplo: atualizar, cadastrar, consultar...
-
{TOKEN}
Substituir {TOKEN} pelo token único do cliente.
Respostas (responses)
- 429 Too Many Requests: Seu token de acesso estourou o limite diário de chamadas. Consulte abaixo sobre os limites.
- 401 Unauthorized: O token utilizado é inválido ou ainda não esta ativo.
- 400 Bad Request: A solicitação não foi bem sucedida e o item msg_erro será retornado.
- 200 OK: A solicitação foi realizada, porém o item retorno dirá se deu tudo certo através de um true ou false.
Para todas as duas situações acima o item status será retornado o código da resposta e o msg_alerta poderá ser retornado alertando que a chamada pode ser otimizada de alguma forma.
Limites de Requisições
- 1 requisição por segundo;
- 2.500 requisições por dia;
- 20 registros por requisição para processamento em lote;
- 20 registros por página em cada consulta, consulte: Paginação de resultados.
Paginação de resultados
Quando uma consulta retornar mais de 20 resultados será criado o item total_registros dentro de cabecalho como no exemplo abaixo:
Este padrão se aplica para qualquer tipo de consulta.
Para acessar as demais páginas basta adicionar o parâmetro ?pagina, por exemplo pagina=2, no GET da requisição.
{
"cabecalho": {
"paginacao": {
"total_registros": 52,
"limite_paginas": 20,
"total_paginas": 3,
"pagina_atual": 1,
"ultima_pagina": false
}
},
"item_solicitado": [...],
}
-
total_registros
Informa o total de registros sua busca possui desconsiderando a paginação.
-
limtie_paginas
Limite de registros por página.
-
total_paginas
Quantas páginas sua busca obteve.
-
pagina_atual
Em qual página está sua consulta.
-
ultima_pagina
Informa se a página atual é a ultima página ou não através de um true ou false
Webhook
A ViaShop envia automaticamente as informações importantes para o ERP por meio de webhooks.
Por isso, não é necessário que o ERP fique consultando a API repetidamente.
Funcionamento
- Você nos fornecerá a sua URL.
- Sua URL será acionada pelo método POST e no body o JSON do conteúdo relativo.
- Você poderá interpretar os dados já na sua URL de destino, ou capturar os parâmetros GET da URL para efetuar um consulta em nossa API.
Parâmetros GET
Adicionamos dois parâmetros à sua URL
- endpoint: Trata-se do caminho de volta para poder consumir a mesma informação que foi enviada. Por ex.: endpoint=via/padido/consultar
- key=val: Onde 'key' será o parâmetro relativo à busca realizada no webhook e 'val' o seu valor correspondente. Por ex.: pedido=111111.
Com os dados acima, adicionando o {TOKEN}, é possivel realizar essa mesma consulta de volta na API e obter o mesmo resultado.
A url base seria: https://{URL_BASE}/{ENDPOINT}/{TOKEN}/?{KEY}={VAL}, que transformando para o exemplo acima ficaria {{URL_BASE}}via/pedido/consultar/{TOKEN}/?pedido=111111
Eventos
Para cada um dos eventos abaixo pode ser cadastrado uma url diferente.-
Lead
- Quando usuário (ainda não cadastrado) manifesta um atendimento e fornece seu nome e whatsapp.
- Quando usuário cadastra seu e-mail para receber as newsletters. -
Cadastro de cliente
- Quando um novo cadastro se cadastra ou quando a loja inclui um novo cliente. -
Pedido
- Quando um novo pedido é realizado pelo cliente ou pela loja. -
Sacola abandonada
- Quando nossos sistemas identificam a exixtência de produtos na sacola de um cliente que não realizou o pedido. -
Estoque
- Quando um estoque é atualizado manualmente.
