Webhooks
Konfigurieren und verwenden Sie Webhooks in Exeoflow.
Übersicht
Webhooks ermöglichen es externen Systemen, Workflows in Exeoflow auszulösen. Wenn ein Webhook aufgerufen wird, startet der zugehörige Workflow automatisch.
Webhook erstellen
Um einen Webhook zu erstellen, fügen Sie einen Webhook-Trigger-Node zu Ihrem Workflow hinzu.
Über die API
POST /webhooks
Request-Body
{
"workflow_id": "wf_123456",
"name": "Mein Webhook",
"method": "POST",
"authentication": {
"type": "bearer",
"enabled": true
}
}
Beispiel-Request
curl -X POST "https://api.exeoflow.com/v1/webhooks" \
-H "Authorization: Bearer IHR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"workflow_id": "wf_123456",
"name": "Mein Webhook",
"method": "POST"
}'
Beispiel-Response
{
"success": true,
"data": {
"id": "wh_xyz789",
"workflow_id": "wf_123456",
"name": "Mein Webhook",
"url": "https://api.exeoflow.com/webhook/wh_xyz789",
"method": "POST",
"token": "whsec_abc123def456",
"created_at": "2024-01-20T10:00:00Z"
}
}
Webhook aufrufen
Rufen Sie einen Webhook auf, um einen Workflow zu starten.
POST https://api.exeoflow.com/webhook/{webhook_id}
Header
Wenn Authentifizierung aktiviert ist:
Authorization: Bearer WEBHOOK_TOKEN
Content-Type: application/json
Request-Body
{
"data": {
"key": "value"
}
}
Beispiel-Request
curl -X POST "https://api.exeoflow.com/webhook/wh_xyz789" \
-H "Authorization: Bearer whsec_abc123def456" \
-H "Content-Type: application/json" \
-d '{
"user_id": "12345",
"action": "create_order"
}'
Beispiel-Response
{
"success": true,
"data": {
"execution_id": "exec_abc123",
"status": "running",
"message": "Workflow wurde gestartet"
}
}
Webhooks auflisten
Rufen Sie alle Webhooks ab.
GET /webhooks
Query-Parameter
workflow_id(optional): Filter nach Workflow-ID
Beispiel-Request
curl -X GET "https://api.exeoflow.com/v1/webhooks" \
-H "Authorization: Bearer IHR_API_KEY"
Beispiel-Response
{
"success": true,
"data": {
"webhooks": [
{
"id": "wh_xyz789",
"workflow_id": "wf_123456",
"name": "Mein Webhook",
"url": "https://api.exeoflow.com/webhook/wh_xyz789",
"method": "POST",
"created_at": "2024-01-20T10:00:00Z"
}
]
}
}
Webhook abrufen
Rufen Sie Details zu einem spezifischen Webhook ab.
GET /webhooks/{webhook_id}
Beispiel-Request
curl -X GET "https://api.exeoflow.com/v1/webhooks/wh_xyz789" \
-H "Authorization: Bearer IHR_API_KEY"
Webhook aktualisieren
Aktualisieren Sie einen Webhook.
PUT /webhooks/{webhook_id}
Request-Body
{
"name": "Aktualisierter Webhook",
"method": "POST"
}
Beispiel-Request
curl -X PUT "https://api.exeoflow.com/v1/webhooks/wh_xyz789" \
-H "Authorization: Bearer IHR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Aktualisierter Webhook"
}'
Webhook löschen
Löschen Sie einen Webhook.
DELETE /webhooks/{webhook_id}
Beispiel-Request
curl -X DELETE "https://api.exeoflow.com/v1/webhooks/wh_xyz789" \
-H "Authorization: Bearer IHR_API_KEY"
Webhook-Token erneuern
Erneuern Sie das Authentifizierungs-Token eines Webhooks.
POST /webhooks/{webhook_id}/regenerate-token
Beispiel-Request
curl -X POST "https://api.exeoflow.com/v1/webhooks/wh_xyz789/regenerate-token" \
-H "Authorization: Bearer IHR_API_KEY"
Beispiel-Response
{
"success": true,
"data": {
"token": "whsec_new789xyz123"
}
}
Authentifizierung
Exeoflow unterstützt verschiedene Authentifizierungsmethoden für Webhooks:
Bearer Token
Authorization: Bearer WEBHOOK_TOKEN
Basic Auth
Authorization: Basic BASE64(username:password)
Keine Authentifizierung
Webhooks können auch ohne Authentifizierung konfiguriert werden (nicht empfohlen für Produktionsumgebungen).
Webhook-Signaturen
Für zusätzliche Sicherheit signiert Exeoflow Webhook-Requests mit einem HMAC-SHA256-Hash.
Signatur-Header
X-Exeoflow-Signature: sha256=HASH
Signatur verifizieren
const crypto = require('crypto');
function verifySignature(payload, signature, secret) {
const hash = crypto
.createHmac('sha256', secret)
.update(JSON.stringify(payload))
.digest('hex');
return `sha256=${hash}` === signature;
}
Best Practices
- Verwenden Sie immer Authentifizierung für Webhooks
- Verifizieren Sie Webhook-Signaturen
- Implementieren Sie Idempotenz in Ihren Workflows
- Behandeln Sie Fehler angemessen
- Loggen Sie Webhook-Aufrufe für Debugging
Nächste Schritte
- Workflows API - Workflows verwalten
- Executions API - Ausführungen überwachen