Salta ai contenuti

Creare webhook

Questa guida ti aiuta a creare webhook usando l’API Chaingateway. Include dettagli sulla scrittura di un ricevente webhook di base, l’iscrizione a un webhook e la gestione dei parametri specifici della chain.

Il nostro sistema webhook funziona come un sistema Instant Payment Notification. Può essere usato per notificare al tuo software un pagamento in arrivo o la ricezione di un token. È composto da due parti di codice:

Il webhook: È l’URL dell’endpoint a cui verranno inviate le notifiche webhook. Devi fornire questo URL all’API Chaingateway al momento dell’iscrizione al webhook. Devi anche specificare i parametri di filtro come sender, receiver, contractaddress, token_id e type (tipo di transazione). Se si verifica un evento sulla blockchain che corrisponde a questi criteri, invieremo un webhook all’URL specificato.

Il ricevente webhook: È il codice che viene eseguito sul tuo server e ascolta le notifiche webhook in entrata. Riceve il payload del webhook ed esegue le azioni necessarie nel tuo software in base ai dati ricevuti.

Per configurare il sistema webhook, devi implementare il codice del ricevente webhook sul tuo server e configurare l’URL del webhook nell’API Chaingateway. Una volta configurato, ogni volta che si verifica un pagamento o la ricezione di un token, l’API Chaingateway invierà una richiesta POST al tuo URL webhook, attivando il codice del ricevente webhook e consentendo al tuo software di intraprendere le azioni appropriate.

Un ricevente webhook è un endpoint del server che ascolta le richieste HTTP POST in entrata da ChainGateway. Di seguito trovi esempi di riceventi webhook di base in diversi linguaggi di programmazione.

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}`);
});

Creare un webhook per iscriverti a un evento blockchain

Sezione intitolata “Creare un webhook per iscriverti a un evento blockchain”

Per iscriverti a un webhook, devi inviare una richiesta all’API ChainGateway con i parametri appropriati.

  • url (obbligatorio): L’URL del tuo endpoint ricevente webhook. Deve essere un URL valido.
  • from: L’indirizzo del mittente (opzionale, è richiesto almeno uno tra from o to).
  • to: L’indirizzo del destinatario (opzionale, è richiesto almeno uno tra from o to).
  • contractaddress: L’indirizzo del contratto del token (opzionale).
  • token_id: Obbligatorio quando non sono presenti né fromto.
  • type: Il tipo di transazione (opzionale). Valori possibili: TRX, TRC10, TRC20, TRC721.

Sostituisci YOUR_API_TOKEN con il tuo token API effettivo.

Terminal window
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"
}'
  • Assicurati che il tuo endpoint ricevente webhook sia pubblicamente accessibile e possa gestire richieste HTTP POST.
  • Proteggi il tuo endpoint webhook convalidando la fonte delle richieste in entrata e garantendo l’integrità dei dati.
  • Chaingateway non memorizza informazioni sensibili come il token. Conserva quindi queste informazioni in modo sicuro.
  • Per ottenere una API key e informazioni sull’autorizzazione, consulta la sezione Per iniziare della documentazione Chaingateway.