Start
Build with RouteKite
Send transactional email, attach private files, and follow each message from acceptance to delivery.
On this page
Your first request
A RouteKite integration needs one verified Sending Address and one API key. Submit one recipient per request and keep the returned message ID.
curl --request POST https://routekite-app--routekite.us-east4.hosted.app/api/v1/emails \--header "Authorization: Bearer rk_your_key" \--header "Idempotency-Key: order-123-confirmation" \--header "Content-Type: application/json" \--data '{"from": "updates@example.com","to": "customer@example.net","reply_to": "support@example.com","subject": "Your order is confirmed","html": "<h1>Thank you</h1><p>Your order is confirmed.</p>","attachments": [{"filename": "notes.txt","content_type": "text/plain","content": "SGVsbG8gZnJvbSBSb3V0ZUtpdGUuCg=="},"c6ea638c-28a4-4b0c-a39d-74f1d29e1e9f"]}'
Start here
- 1
Verify a sending domain
Publish the required DNS records and wait until RouteKite marks the domain ready.
- 2
Add a Sending Address
Choose the exact address and sender name your application will use.
- 3
Create an API key
Create a workspace key with email:send access and store it only on your server.
- 4
Send and observe
Submit the email, store its ID, then retrieve the normalized delivery state.
What the public API supports
- One transactional recipient per request.
- HTML, plain text, or both.
- Private file attachments prepared before submission.
- Normalized progress and delivery states.
- Retry-safe email creation through idempotency keys.