SendPromptly is an event ingestion API for transactional notifications. Your application sends one event, and SendPromptly handles template lookup, delivery run creation, retries, and tracking for email and webhook channels.
Base URL
| |
Core endpoint
| |
Required headers
Authorization: Bearer sp_{env}_{token}Idempotency-Key: <unique-key>Content-Type: application/json
Use environment-scoped tokens so your dev, stage, and prod traffic stay isolated.
Request contract
| Field | Type | Required | Notes |
|---|---|---|---|
event_key | string | Yes | Stable business event name, for example order.created. |
recipient | object | Yes | Target identity for template rendering and delivery. |
payload | object | Yes | Event-specific context used by templates. |
schedule_at | datetime | No | Optional delayed execution time for scheduled notifications. |
Design your event_key values around domain actions rather than UI actions. Stable keys reduce template churn and make analytics cleaner.
Idempotency and retries
SendPromptly enforces idempotency for ingestion requests, helping you safely retry after network failures or 5xx responses without accidental duplicate deliveries. Use a deterministic idempotency key derived from your business event id.
Delivery lifecycle
After acceptance, SendPromptly validates the event, resolves active templates, and creates delivery runs per enabled channel. Each run is tracked with status and timing metadata in the dashboard for debugging and operations.
Quick request example
| |