Zum Inhalt springen

Webhooks erstellen

Diese Anleitung hilft Ihnen beim Erstellen von Webhooks mit der Chaingateway-API. Sie enthält Details zum Schreiben eines einfachen Webhook-Empfängers, zum Abonnieren eines Webhooks und zum Umgang mit chain-spezifischen Parametern.

Unser Webhook-System funktioniert als Instant-Payment-Notification-System. Es kann verwendet werden, um Ihre Software über eine eingehende Zahlung oder einen Token-Empfang zu informieren. Es besteht aus zwei Codeteilen:

Der Webhook: Dies ist die Endpunkt-URL, an die die Webhook-Benachrichtigungen gesendet werden. Diese URL müssen Sie der Chaingateway-API beim Abonnieren des Webhooks mitteilen. Außerdem müssen Sie die Filterparameter wie sender, receiver, contractaddress, token_id und type (Transaktionstyp) angeben. Tritt auf der Blockchain ein Ereignis ein, das diesen Kriterien entspricht, senden wir einen Webhook an die von Ihnen angegebene URL.

Der Webhook-Empfänger: Dies ist der Code, der auf Ihrem Server läuft und auf eingehende Webhook-Benachrichtigungen lauscht. Er empfängt das Webhook-Payload und führt die notwendigen Aktionen in Ihrer Software basierend auf den empfangenen Daten aus.

Um das Webhook-System einzurichten, müssen Sie den Webhook-Empfänger-Code auf Ihrem Server implementieren und die Webhook-URL in der Chaingateway-API konfigurieren. Sobald dies eingerichtet ist, sendet die Chaingateway-API bei jeder Zahlung oder jedem Token-Empfang eine POST-Anfrage an Ihre Webhook-URL, löst den Webhook-Empfänger-Code aus und ermöglicht Ihrer Software, entsprechende Aktionen durchzuführen.

Ein Webhook-Empfänger ist ein Server-Endpunkt, der auf eingehende HTTP-POST-Anfragen von ChainGateway lauscht. Im Folgenden finden Sie Beispiele für einfache Webhook-Empfänger in verschiedenen Programmiersprachen.

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

Einen Webhook zum Abonnieren eines Blockchain-Ereignisses erstellen

Abschnitt betitelt „Einen Webhook zum Abonnieren eines Blockchain-Ereignisses erstellen“

Um einen Webhook zu abonnieren, müssen Sie eine Anfrage mit den passenden Parametern an die ChainGateway-API senden.

  • url (erforderlich): Die URL Ihres Webhook-Empfängerendpunkts. Muss eine gültige URL sein.
  • from: Die Absenderadresse (optional, mindestens eines von from oder to ist erforderlich).
  • to: Die Empfängeradresse (optional, mindestens eines von from oder to ist erforderlich).
  • contractaddress: Die Contract-Adresse des Tokens (optional).
  • token_id: Erforderlich, wenn weder from noch to angegeben ist.
  • type: Der Transaktionstyp (optional). Mögliche Werte: TRX, TRC10, TRC20, TRC721.

Ersetzen Sie YOUR_API_TOKEN durch Ihren tatsächlichen API-Token.

Terminal-Fenster
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"
}'
  • Stellen Sie sicher, dass Ihr Webhook-Empfängerendpunkt öffentlich erreichbar ist und HTTP-POST-Anfragen verarbeiten kann.
  • Sichern Sie Ihren Webhook-Endpunkt ab, indem Sie die Quelle eingehender Anfragen prüfen und die Datenintegrität sicherstellen.
  • Chaingateway speichert keine sensiblen Informationen wie den Token. Bewahren Sie diese Informationen daher sicher auf.
  • Informationen zum Erhalt eines API-Keys und zur Autorisierung finden Sie im Abschnitt „Erste Schritte” der Chaingateway-Dokumentation.