Rykon Mail for developers
One REST API for transactional email, your audience, campaigns and AI agent inboxes. Scoped keys, errors that say what to change, and a sending reputation that is yours alone.
Free to try, no card. Make a key in the console and send in minutes.
# Send a receipt
curl -X POST https://app.rykonmail.com/api/v1/emails \
-H "Authorization: Bearer $RYKON_MAIL_KEY" \
-H "Content-Type: application/json" \
-d '{
"from": "orders@northwind-local.test",
"fromName": "Northwind Traders",
"to": "jamie.chen@example.com",
"replyTo": "help@northwind-local.test",
"subject": "Your receipt for order 10482",
"text": "Thanks for your order.\n\nOrder 10482: 2 x Linen apron, $48.00.\nTotal paid: $48.00.",
"html": "<p>Thanks for your order.</p><p>Order 10482: 2 x Linen apron, $48.00.<br>Total paid: <strong>$48.00</strong>.</p>",
"category": "receipt",
"idempotencyKey": "order-10482-receipt"
}'
# Add the customer to your audience
curl -X POST https://app.rykonmail.com/api/v1/contacts \
-H "Authorization: Bearer $RYKON_MAIL_KEY" \
-H "Content-Type: application/json" \
-d '{
"email": "jamie.chen@example.com",
"name": "Jamie Chen",
"tags": [
"customer",
"newsletter"
],
"attributes": {
"plan": "pro",
"city": "Austin"
},
"consent": {
"text": "Yes, send me product news and offers. I can unsubscribe at any time.",
"source": "Checkout opt-in",
"ip": "203.0.113.24"
}
}'What you can build
The mail people need, the mail they asked for, and the mail your agents write, through one API and one set of keys.
Receipts, sign-in links and order updates from your own domain. Idempotency keys make retries safe, and every refusal says why in words.
POST /emailsGuide Add people the moment they sign up, with the consent they gave and the topics they chose. Their own choices are kept for you.
POST /contactsGuide Create, test, schedule and measure campaigns from the systems that already know your customers, under one hourly allowance by plan.
POST /campaignsGuide An address of its own for every AI agent, reached with one dependency-free MCP server. Anything outside your rules waits for a person.
node rykon-mail-mcp.mjsGuide Security
The defaults are the safe ones, so the secure integration is also the easy one.
Each key holds only the scopes you chose, belongs to one account, and is shown a single time. Revoke one and nothing else notices.
Every account sends under its own identity with its own bounce and complaint rates, watched day and night. Another sender’s mistakes never reach your inbox placement.
The API sends no CORS headers, on purpose: keys belong on your server. Our own console works the same way and never hands a key to a page.
Developer experience
The reference, the samples and the OpenAPI file are drawn from the same table that routes every request. If an endpoint is in the docs, the API answers it.
{
"error": "refused",
"message": "jordan@example.com unsubscribed, so only account, security, receipt and order mail may go to them"
}A refusal, as the API words it. Retrying will not change the answer, and the message says why.
Create an account, add your domain, make a key, and send.