Create event destination
Add a webhook destination to a configuration set. Events from sends referencing the config set will be POSTed to your URL with an HMAC-signed body.
POST /api/v1/partner/email/configuration-sets/:id/event-destinationsRequest body
{
"name": "production-webhook",
"destination_type": "WEBHOOK",
"webhook_url": "https://yourapp.com/webhooks/email",
"webhook_secret": "your-shared-secret-min-16-chars",
"matching_event_types": ["send", "delivered", "bounce", "complaint", "open", "click"],
"enabled": true
}| Field | Type | Required | Notes |
|---|---|---|---|
name | string | yes | Friendly identifier |
destination_type | string | no | WEBHOOK only (KAFKA, SNS — roadmap) |
webhook_url | string | yes | HTTPS endpoint. Must respond 2xx within 10s |
webhook_secret | string | no | HMAC-SHA256 signing key. Saved write-only — never echoed back |
matching_event_types | string[] | no | Subscribe to specific events. Empty = subscribe to everything |
enabled | bool | no | Default true. Set false to pause without deleting |
Valid event types:
send,delivered,bounce,complaintopen,click,rejectrendering_failure,delivery_delay
Response
{
"success": true,
"destination_id": "ed_550e8400-...",
"name": "production-webhook",
"webhook_url": "https://yourapp.com/webhooks/email",
"matching_event_types": ["send", "delivered", "bounce", "complaint", "open", "click"],
"enabled": true
}cURL
curl https://apis.splashifypro.com/api/v1/partner/email/configuration-sets/cs_.../event-destinations \
-H "Authorization: Bearer $SPLASHIFY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "production-webhook",
"destination_type": "WEBHOOK",
"webhook_url": "https://yourapp.com/webhooks/email",
"webhook_secret": "...",
"matching_event_types": ["send", "delivered", "bounce", "complaint", "open", "click"]
}'Common errors
| Status | Code | Meaning |
|---|---|---|
| 400 | INVALID_REQUEST | Missing webhook_url or unknown event type |
| 400 | WEBHOOK_URL_INVALID | URL must be HTTP(S) |