Webhook-Verwaltung
Verwalten Sie Ihre Webhook-Endpunkte, um Echtzeit-Ereignisbenachrichtigungen zu empfangen. Sie können bis zu 10 Webhook-Endpunkte pro Organisation registrieren.
Webhook erstellen
POST /webhooks
Anfragekörper
{
"url": "https://yourapp.com/webhooks/vignetim",
"events": ["order.completed", "order.failed"],
"description": "Production order notifications"
}
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
url | string | Ja | HTTPS-Endpunkt-URL zum Empfang von Webhook-Zustellungen |
events | string[] | Ja | Array von Ereignistypen zum Abonnieren (oder ["*"] für alle) |
description | string | Nein | Eine lesbare Beschreibung für diesen Endpunkt |
Antwort (201 Created)
{
"id": "wh-a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"url": "https://yourapp.com/webhooks/vignetim",
"events": ["order.completed", "order.failed"],
"description": "Production order notifications",
"active": true,
"signingSecret": "whs_a1b2c3d4e5f6789012345678901234567890abcdef",
"createdAt": "2026-03-20T14:30:00.000Z"
}
Wichtig: Das
signingSecretwird nur bei der Erstellung des Webhooks zurückgegeben. Speichern Sie es sicher -- Sie benötigen es zur Verifizierung eingehender Webhook-Signaturen. Es kann nicht erneut abgerufen werden.
SSRF-Schutz
Webhook-URLs müssen öffentlich zugängliche HTTPS-Endpunkte sein. Folgende werden abgelehnt:
- Private/interne IP-Adressen (10.x.x.x, 172.16-31.x.x, 192.168.x.x)
- Localhost- und Loopback-Adressen
- Nicht-HTTPS-URLs
Webhooks auflisten
GET /webhooks
Antwort
{
"data": [
{
"id": "wh-a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"url": "https://yourapp.com/webhooks/vignetim",
"events": ["order.completed", "order.failed"],
"description": "Production order notifications",
"active": true,
"consecutiveFailures": 0,
"createdAt": "2026-03-20T14:30:00.000Z",
"updatedAt": "2026-03-20T14:30:00.000Z"
}
]
}
Webhook aktualisieren
PUT /webhooks/:id
Pfadparameter
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
id | string | Ja | Die Webhook-ID |
Anfragekörper
{
"url": "https://yourapp.com/webhooks/vignetim-v2",
"events": ["*"],
"description": "Updated to receive all events"
}
Alle Felder sind optional. Nur die angegebenen Felder werden aktualisiert.
Antwort
Gibt das aktualisierte Webhook-Objekt zurück.
Webhook löschen
DELETE /webhooks/:id
Pfadparameter
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
id | string | Ja | Die Webhook-ID |
Antwort
Gibt 204 No Content bei Erfolg zurück.
Webhook testen
Senden Sie ein Testereignis, um zu überprüfen, ob Ihr Endpunkt erreichbar ist und Webhook-Zustellungen korrekt verarbeitet.
POST /webhooks/:id/test
Pfadparameter
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
id | string | Ja | Die Webhook-ID |
Antwort
{
"success": true,
"statusCode": 200,
"responseTime": 145,
"message": "Test webhook delivered successfully"
}
Wenn die Testzustellung fehlschlägt:
{
"success": false,
"statusCode": 500,
"responseTime": 10000,
"message": "Webhook endpoint returned non-2xx status code"
}