Skip to content
EMAIL

Transactional email.
One API call.

Send sign-in links, password resets, receipts and alerts from your server. Mail goes out from your project's cloudhike.dev address with no setup, or from your own domain.

No setup to start Send from your domain 3,000 a month on Free
EMAIL · LIVE
NEW EMAILTOcustomer@example.comFROMreceipts@acme.comSUBJYour receiptSend/sendEMAIL_API_URLDOMAIN · ACME.COMDKIMSPFDMARCLOGSada@example.comDELIVEREDsam@example.comDELIVEREDlee@example.comSCHEDULED
3,000emails a month on Free, up to 100 a day
$0.40per 1,000 on Pro after 3,000 a month per project
7 daysahead you can schedule a send
WHAT YOU GET

Everything included.
Nothing to wire up.

Transactional email from your app with one API call, from a CloudHike.dev address or your own domain.

One call to send

POST to EMAIL_API_URL/send with your key, a recipient, a subject and HTML or text. You get a result for each recipient.

Your own domain

Add your domain, set the DKIM, SPF and DMARC records it lists, and send from any address on it once it shows Verified.

Scheduled sends

Set scheduledAt up to 7 days ahead, and cancel the message any time before it goes out.

Logs, not bodies

The Logs tab shows who each message went to and what happened. Message bodies are never stored.

Bounces handled

Addresses that bounce for good or report spam are never mailed again, which keeps your sending reputation clean.

Delivery at a glance

The Overview tab charts each day's delivered, bounced and failed mail, with your bounce and complaint rates.

HOW IT WORKS

Three steps
to production.

  1. 01
    Deploy

    Accept the email acceptable use policy and click Deploy on the Email card. You get EMAIL_API_URL and EMAIL_API_KEY.

  2. 02
    Send

    Call /send from your server. Keep the key there: anyone with it can send as your project.

  3. 03
    Brand

    Add your domain under Domains, set the DNS records and send from your own address once it is verified.

Read the Email guide
send.ts
const res = await fetch(`${process.env.EMAIL_API_URL}/send`, {
  method: "POST",
  headers: {
    "content-type": "application/json",
    "x-api-key": process.env.EMAIL_API_KEY!,
  },
  body: JSON.stringify({
    to: "customer@example.com",
    subject: "Your receipt",
    html: "<p>Thanks for your order.</p>",
    from: "receipts@acme.com", // needs acme.com verified
    replyTo: "support@acme.com",
  }),
});
const { results } = await res.json(); // [{ to, id, status }]
BETTER TOGETHER

One project.
Every service connected.

Same project, same .env, same bill.

FAQ

Questions about
Email.

Can I send newsletters or marketing email?
No. Email is for transactional mail only: sign-in links, password resets, receipts and alerts. No marketing or bulk mail.
Do I need my own domain?
No. Mail goes out from <project>@cloudhike.dev with no setup. Set replyTo so replies reach you, and add your own domain when you are ready.
What happens when I hit a limit?
The API answers 429 with a Retry-After header. On Pro, emails above the allowance are charged from your credits, and a monthly spend cap under Settings limits what you can spend.
Are my messages stored?
No. Message bodies are never stored. The Logs tab keeps who each message went to and what happened.

Add Email to your project.
Free to start.

Postgres, auth, storage, Redis, email and AI models. One API key.