Failure Handling
When all 10 delivery attempts are exhausted, Transyt marks the event as failed and triggers configured destinations.
Failure Flow
Section titled “Failure Flow”- All 10 delivery attempts fail (over ~2-4 hours)
- Event
delivery_statusis set tofailed - Destinations are evaluated with
delivery_failed = true - Matching destinations fire (email, Slack, Discord, or webhook alerts)
- The event remains available for manual replay
Monitoring Failed Deliveries
Section titled “Monitoring Failed Deliveries”Via API
Section titled “Via API”# List all failed deliveriescurl https://ingest.transyt.com/admin/delivery/failed \ -H "X-Admin-Token: YOUR_ADMIN_TOKEN"
# List deliveries still retrying (with at least 3 attempts)curl "https://ingest.transyt.com/admin/delivery/retrying?min_attempts=3" \ -H "X-Admin-Token: YOUR_ADMIN_TOKEN"
# Get delivery statisticscurl https://ingest.transyt.com/admin/delivery/stats \ -H "X-Admin-Token: YOUR_ADMIN_TOKEN"Via Dashboard
Section titled “Via Dashboard”The dashboard shows delivery status for each event, including the number of attempts, last error, and response code.
Alerting
Section titled “Alerting”Set up destinations to be notified when deliveries fail. Common patterns:
Slack alert on any failure
Section titled “Slack alert on any failure”curl -X POST https://ingest.transyt.com/admin/accounts/{account_id}/destinations \ -H "X-Admin-Token: YOUR_ADMIN_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "destination_type": "slack", "name": "Delivery Failures", "config": {"webhook_url": "https://hooks.slack.com/services/..."}, "condition": "delivery_failed" }'Email alert for payment failures
Section titled “Email alert for payment failures”curl -X POST https://ingest.transyt.com/admin/accounts/{account_id}/destinations \ -H "X-Admin-Token: YOUR_ADMIN_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "destination_type": "email", "name": "Payment Delivery Failures", "config": {"addresses": ["ops@example.com"], "include_payload": true}, "condition": "delivery_failed and event_type.startswith(\"charge.\")" }'Recovery
Section titled “Recovery”Once the underlying issue is resolved (your endpoint is back up, the bug is fixed, etc.), you can replay failed events:
# Replay a single eventcurl -X POST https://ingest.transyt.com/admin/events/{event_id}/replay \ -H "X-Admin-Token: YOUR_ADMIN_TOKEN"
# Replay all failed eventscurl -X POST https://ingest.transyt.com/admin/events/replay-failed \ -H "X-Admin-Token: YOUR_ADMIN_TOKEN"