Saltearse al contenido

Crear webhooks

Esta guía le ayuda a crear webhooks usando la API de Chaingateway. Incluye detalles sobre cómo escribir un receptor de webhook básico, suscribirse a un webhook y gestionar parámetros específicos de cada chain.

Nuestro sistema de webhooks funciona como un sistema Instant Payment Notification. Se puede usar para notificar a su software sobre un pago entrante o la recepción de un token. Consta de dos partes de código:

El webhook: Es la URL de endpoint a la que se enviarán las notificaciones de webhook. Debe proporcionar esta URL a la API de Chaingateway al suscribirse al webhook. También debe especificar los parámetros de filtro como sender, receiver, contractaddress, token_id y type (tipo de transacción). Si ocurre un evento en la blockchain que coincide con esos criterios, enviaremos un webhook a la URL que especificó.

El receptor de webhook: Es el código que se ejecuta en su servidor y escucha las notificaciones de webhook entrantes. Recibe el payload del webhook y realiza las acciones necesarias en su software según los datos recibidos.

Para configurar el sistema de webhooks, debe implementar el código del receptor de webhook en su servidor y configurar la URL del webhook en la API de Chaingateway. Una vez configurado, cada vez que se produzca un pago o la recepción de un token, la API de Chaingateway enviará una solicitud POST a su URL de webhook, activando el código del receptor de webhook y permitiendo que su software realice las acciones correspondientes.

Un receptor de webhook es un endpoint del servidor que escucha las solicitudes HTTP POST entrantes de ChainGateway. A continuación se muestran ejemplos de receptores de webhook básicos en distintos lenguajes de programación.

const express = require('express');
const app = express();
const port = 3000;
app.use(express.json());
app.post('/webhook', (req, res) => {
console.log('Received webhook:', req.body);
res.status(200).send('Webhook received');
});
app.listen(port, () => {
console.log(`Webhook receiver listening at http://localhost:${port}`);
});

Crear un webhook para suscribirse a un evento de la blockchain

Sección titulada «Crear un webhook para suscribirse a un evento de la blockchain»

Para suscribirse a un webhook, debe enviar una solicitud a la API de ChainGateway con los parámetros adecuados.

  • url (obligatorio): La URL de su endpoint receptor de webhook. Debe ser una URL válida.
  • from: La dirección del remitente (opcional; se requiere al menos uno de from o to).
  • to: La dirección del receptor (opcional; se requiere al menos uno de from o to).
  • contractaddress: La dirección del contrato del token (opcional).
  • token_id: Obligatorio cuando no están presentes ni from ni to.
  • type: El tipo de transacción (opcional). Valores posibles: TRX, TRC10, TRC20, TRC721.

Reemplace YOUR_API_TOKEN por su token de API real.

Ventana de terminal
curl --request POST \
--url https://api.chaingateway.io/v2/webhooks \
--header 'Accept: application/json' \
--header 'content-type: application/json' \
--header 'Authorization: YOUR_API_TOKEN' \
--data '{
"url": "http://yourdomain.com/webhook",
"from": "TXSenderAddress",
"to": "TXReceiverAddress",
"contractaddress": "0xTokenContractAddress",
"token_id": "12345",
"type": "TRC20"
}'
  • Asegúrese de que su endpoint receptor de webhook sea públicamente accesible y pueda gestionar solicitudes HTTP POST.
  • Proteja su endpoint de webhook validando el origen de las solicitudes entrantes y garantizando la integridad de los datos.
  • Chaingateway no almacena información sensible como el token. Por lo tanto, guarde esta información de forma segura.
  • Para obtener una clave de API y aprender sobre la autorización, consulte la sección Primeros pasos de la documentación de Chaingateway.