Skip to main content
Transactional emails are the messages your app sends on behalf of your users: welcome emails, password resets, order confirmations, and so on. Hiveku gives you two ways to send them.

Hiveku Email

Built in, with no extra account needed

Bring your own

Resend, SendGrid, or Postmark through environment variables
Hiveku Email is part of your Hiveku account: no separate bill, and no extra dashboard to learn.
1

Create an API key

Go to Settings > API Keys and click Create API Key.Create two keys:
  • Test key, for development. Every email is checked and shows in the logs as Simulated, but nothing is delivered.
  • Production key, for your live app. Emails go to real inboxes.
Copy the key right away. It is shown only once: after you leave the page, only a short preview remains.
2

Verify a sending domain

Go to Settings > Email Service > Email domains and click Add email domain.Enter the domain you want to send from, such as mail.yourcompany.com. Hiveku shows the DNS records to add where your domain’s DNS is managed:
  • DKIM, three records that prove the email is really from you (required)
  • Bounce domain, so bounces come back to your own domain (recommended)
  • SPF, which lists who may send for the domain (recommended)
  • DMARC, a policy for mail that fails these checks (recommended)
Add the records, then click Check Status. It usually takes a few minutes, and up to 72 hours in rare cases.
You can send only from addresses on verified domains. The from address must be on one, such as hello@mail.yourcompany.com.
3

Install the SDK

In your project, install the Hiveku email package:
4

Send your first email

Keep the key in the HIVEKU_EMAIL_API_KEY environment variable, never in your code. status is sent, or simulated with a test key.
5

Deploy

Deploy your project with the production key. Your app is now sending real email.
For batches, templates, attachments and errors, see Sending Emails. For frameworks that send over SMTP, see SMTP.

Option 2: Bring your own provider

If you already have a Resend, SendGrid, or Postmark account, plug it in through environment variables.
An app built on Resend can also send through Hiveku Email without code changes. See Migrate from Resend.
1

Get your provider's API key

  • Resend: resend.com/api-keys
  • SendGrid: Settings > API Keys
  • Postmark: Servers > API Tokens
2

Add it to your Hiveku project

On your project’s Environment Variables page, add:
(or the one your provider uses)
3

Install the provider SDK and send

Verifying it works

Send a test email to yourself, then open Settings > Email Service > Email Logs (for Hiveku Email) or your provider’s dashboard. The email shows there within seconds, and its delivery, opens, clicks, bounces and complaints follow as they happen.

Troubleshooting

The DNS records are probably wrong, or have not spread yet. Check each record against what Hiveku showed you: watch for trailing dots, quotes, and the exact record name. Look up one of the DKIM records, such as dig CNAME abc123._domainkey.mail.yourcompany.com with the name shown on your domain’s page, to see whether it is live. Then click Check Status again.
An address that hard-bounced or marked an earlier email as spam is on your suppression list, and Hiveku leaves it out: the answer lists it in suppressed_recipients. Those two kinds stay suppressed. See Suppression List.
Each key’s rate follows your plan, from 2 to 50 recipients a second, unless the key has a lower limit of its own. A refused send answers 429: wait the seconds its Retry-After header gives, then retry. One without Retry-After was too large for the key’s own limit: split it into smaller sends. See Limits.
Test keys never deliver: the email shows in Email Logs as Simulated. To send to a real inbox, use your production key.

What’s next?

Email Reference

The full API: batches, templates, attachments and errors

Domain Setup

DKIM, SPF, DMARC, and moving from another provider