- Updated `mapping-service` to include WEB3-ETH-IBAN support, health check endpoint, and improved error handling for account-wallet linking. - Added new provider connection and status endpoints in `mapping-service`. - Enhanced `orchestrator` service with health check, trigger management endpoints, and improved error handling for trigger validation and submission. - Updated dependencies in `package.json` for both services, including `axios`, `uuid`, and type definitions. - Improved packet service with additional validation and error handling for packet generation and dispatching. - Introduced webhook service enhancements, including delivery retries, dead letter queue management, and webhook management endpoints.
Webhook Service
Webhook delivery service with retry logic and dead letter queue.
Features
- Webhook registration and management
- Event-based webhook delivery
- Exponential backoff retry logic
- Dead letter queue (DLQ) for failed deliveries
- HMAC-SHA256 payload signing
- Delivery attempt tracking
API Endpoints
POST /v1/webhooks- Create webhookGET /v1/webhooks/:id- Get webhookGET /v1/webhooks- List webhooksPATCH /v1/webhooks/:id- Update webhookDELETE /v1/webhooks/:id- Delete webhookPOST /v1/webhooks/:id/test- Test webhookPOST /v1/webhooks/:id/replay- Replay webhooksGET /v1/webhooks/:id/attempts- Get delivery attemptsGET /v1/webhooks/dlq- List DLQ entriesPOST /v1/webhooks/dlq/:id/retry- Retry DLQ entry
Retry Logic
- Max retries: 3
- Exponential backoff: 1s, 2s, 4s
- Failed deliveries moved to DLQ after max retries
Webhook Signing
Webhooks can be signed with HMAC-SHA256 using a secret:
- Header:
X-Webhook-Signature - Algorithm: HMAC-SHA256
- Secret: Provided during webhook creation
Configuration
REST_API_URL- Main REST API URLKAFKA_BROKERSorNATS_URL- Event bus connectionDLQ_RETENTION_DAYS- DLQ retention period (default: 30)