Transactional email
Send application email through a dedicated queue lane.
Submit receipts, security notices, verification links, and other application messages through the REST API. Categories select the execution lane while the API returns a message id for later status and event queries.
Queue routing
Choose a category that matches the message.
The API supports security, billing, transactional, briefing, marketing, and third-party categories. Security and billing traffic receive their own execution routes, and transactional traffic is not placed behind a marketing campaign in the outbox.
Queue routing does not promise a dedicated physical IP. Shared-IP plans may still share an address pool, while eligible dedicated-IP activation remains operator-approved.
Send request
Use the live message schema.
curl -X POST https://api.pulsepigeon.com/v1/messages \
-H "Authorization: Bearer $PULSEPIGEON_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: password-reset-request-123" \
-d '{
"project_id": "project_123",
"from_email": "[email protected]",
"to": [{"email": "[email protected]", "name": "Customer"}],
"subject": "Reset your password",
"text": "Use the link in this message to reset your password.",
"html": "<p>Use the secure reset link in this message.</p>",
"category": "security",
"reply_to": "[email protected]",
"metadata": {"request_id": "request-123"}
}'A valid request returns 202 Accepted with a message id. The Idempotency-Key header is optional, but strongly recommended for every logical send. Reusing a key with the same body replays the original result; reusing it with a changed body returns a conflict. Responses also carry an X-Request-ID header.
Delivery state
Query the states the platform records.
Delivery events use the accepted, queued, delivered, deferred, bounced, and complained types. Message and event endpoints provide tenant-scoped status history; they do not claim open, click, or reply tracking.
Status webhook payloads are signed with the endpoint secret. Failed deliveries use a configurable retry budget with a default of three attempts, and an authorized operator can replay one delivery throughPOST /v1/webhooks/status/{id}/deliveries/{delivery_id}/replay.
Retention and service targets
Plan against published limits.
- Free message-log retention: 7 days.
- Starter message-log retention: 30 days.
- Growth message-log retention: 90 days.
- Scale message-log retention: 365 days.
- Availability targets and service credits are published on the SLA page.
Read next
- Email API for endpoints and integration limits.
- Bulk email for campaign drafts and scheduled sends.
- Pricing for monthly send and retention limits.
- Service level agreement for availability targets.