Webhook
Use nossos Eventos Webhook para receber notificações em tempo real sobre diversas atividades.
Na Hubpontos, utilizamos webhooks para comunicar eventos importantes, como atualizações de solicitações de produtos, alterações no cadastro de usuários e movimentações de pontos.
Enviamos requisições HTTP POST para um endpoint de URL fornecido e configurado no seu ambiente, preparado para receber e processar essas notificações.
O que são Webhook Events?
Os Webhook Events da Hubpontos permitem que você receba notificações automáticas sobre diversas atividades, incluindo:
- Atualizações de solicitações de produtos
- Modificações no cadastro de usuários
- Alterações e movimentações de pontos
Como funciona?
A Hubpontos envia requisições HTTP POST para um endpoint de URL definido por você, hospedado no seu ambiente e pronto para processar esses eventos.
Nós oferecemos uma variedade de eventos que podem disparar notificações via webhook, organizados nas seguintes categorias:
Como configurar?
Para fazer a configuração dos Webhooks é necessário acessar o painel com seu usuário Admin e ir até a opção Configurações no menu lateral. Nas Configurações você deve ir até a aba Webhook onde vai encontrar os campos para colocar a URL da API e a chave de autenticação.
Para que o Webhook seja utilizado em produção será necessário comunicar nossa equipe, que fará uma análise e aprovação dos endpoints. Favor enviar um e-mail para suporte@hub4pay.io para a aprovação do webhook.
Autenticação
Se o seu ambiente exigir autenticação, você poderá configurar um Bearer Token que será incluído no cabeçalho das requisições HTTP.
Headers
Authorization: Bearer <<YOUR_API_KEY_HERE>>
Request body
Edição de pessoa
O endpoint de edição de pessoa tem como propósito fornecer os dados atualizados do usuário sempre que uma modificação for realizada.
- Exemplo
- Schema
{
fullName: "string",
email: "string",
birthDate: '2012-04-23T18:25:43.511Z',
gender: "string",
phone: "string",
street: "string",
number: "string",
complement: "string",
zipCode: "string",
city: "string",
state: "string",
country: "string",
}
Nome completo do usuário participante
Email do usuário participante
Data de aniversário do usuário participante
Gênero do usuário participante
Numero de Telefone do usuário participante
Endereço do usuário participante
Número do endereço do usuário participante
Complemento do usuário participante
CEP do usuário participante
Cidade do usuário participante
Estado do usuário participante
País do usuário participante
Alteração de Saldo
O endpoint de Alteração de Saldo tem como objetivo fornecer os dados atualizados do saldo de um usuário sempre que houver uma modificação.
- Exemplo
- Schema
{
personId: "string",
year: 0,
month: 0,
value: 0,
total: 0,
type: "string", // income | expense
reason: "string", // import_sale, import_product, update_order, training, expired, product, edit,
expirationDate: '2012-04-23T18:25:43.511Z'
}
O identificador único do usuário participante.
Ano de referência da importação do saldo do usuário.
Mês de referência da importação do saldo do usuário.
Valor específico da alteração do saldo.
Total acumulado do saldo do usuário após a alteração.
Default value: income, expense
Tipo da alteração: entrada ou saída de saldo.
Default value: import_sale, import_product, update_order, training, expired, product, edit
Motivo que justifica a alteração do saldo.
Data de expiração do saldo, aplicável para novos saldos adicionados.
Resgate de Produtos
O endpoint de Resgate de Produtos tem como finalidade fornecer os dados do pedido de resgate realizado pelo usuário.
- Exemplo
- Schema
{
"userId": "string",
"status": "string"
"totalCoins": 0,
"orderItems": {
"orderItemCode": "string"
"productTags": ["string"]
"cardNumber": "string",
"cardCpf": "string",
"cardDate": '2012-04-23T18:25:43.511Z',
"rechargeNumber": "string",
"ticketCode": "string",
"ticketDescription": "string",
"ticketDueAt": '2012-04-23T18:25:43.511Z',
"ticketFile": "string",
"ticketType": "string",
"ticketValue": 0,
"quantity": 0,
"amount": 0,
"services": 0,
"shipping": 0,
"shippingResponsible": "string",
"shippingCarrier": "string",
"shippingDays": 0,
"shippingPrice": 0,
}
"address": {
"recipient": "string",
"street": "string",
"number": "string",
"complement": "string",
"zipCode": "string",
"city": "string",
"state": "string",
"observations": "string"
}
}
Identificador do usuário que fez o pedido.
Status atual do pedido.
Total de moedas usadas para realizar o pedido, incluindo preço, serviço (se houver) e frete (se houver).
Armazena os dados do item do pedido.
Código de identificação gerado para o item do pedido.
Lista de identificadores das tags que o item pode ter (ex: tag 220v).
Número do cartão para recarga.
CPF vinculado à recarga.
Data de validade do cartão.
Número de telefone para recarga.
Código do boleto.
Descrição do boleto.
Data de vencimento do boleto.
Tipo de boleto.
Valor do boleto em pontos.
Quantidade de itens iguais no pedido.
Valor unitário do item em pontos.
Valor total dos serviços (considerando quantidade).
Valor do envio em pontos.
Empresa responsável pelo envio (ex: Jadlog).
Tipo de envio (ex: Sedex).
Dias estimados para entrega.
Valor do frete em reais.
Campos de endereço.
Nome do destinatário.
Nome da rua.
Número do endereço.
Complemento do endereço.
CEP.
Cidade.
Estado.
Observações adicionais.
Responses
- 201
- 400
Resposta de Sucesso!
Resposta de Erro!