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, integrated, no extra account needed

Bring your own

Resend, SendGrid, or Postmark via env vars
Hiveku Email is integrated directly into your project — no separate billing, no extra dashboard to learn.
1

Create an API key

Go to Settings > Email > API Keys and click Create.Create two keys:
  • Test key — use in development. Emails go to a sandbox inbox and aren’t delivered to real recipients.
  • Live key — use in production. Emails go to real inboxes.
Copy the key immediately. It’s only shown once — after you close the dialog, only a masked preview remains.
2

Verify a sending domain

Go to Settings > Email > Domains and click Add Domain.Enter the domain you want to send from (e.g., yourcompany.com). Hiveku shows you the DNS records to add at your registrar:
  • DKIM — proves the email is really from you
  • SPF — lists who’s allowed to send on your behalf
  • DMARC — policy for what to do if SPF/DKIM fail
Add the records, then click Verify. DNS usually propagates within a few minutes — up to 48 hours in rare cases.
You can only send from addresses on verified domains. The from address must match (e.g., hello@yourcompany.com).
3

Install the SDK

In your project’s code editor, install the Hiveku email package:
npm install @hiveku-apps/email
4

Send your first email

import { Hiveku } from "@hiveku-apps/email";

const hiveku = new Hiveku(process.env.HIVEKU_EMAIL_API_KEY);

await hiveku.emails.send({
  from: "hello@yourcompany.com",
  to: "customer@example.com",
  subject: "Welcome aboard",
  html: "<p>Thanks for signing up!</p>",
});
Store your API key in an environment variable — never hardcode it.
5

Deploy

Deploy your project. Your app is now sending real email.
For the full API reference (attachments, templates, batch send, webhooks), see /email/quickstart and /email/domains.

Option 2: Bring Your Own Provider

If you already have a Resend, SendGrid, or Postmark account, plug it in via environment variables.
1

Grab your provider's API key

  • Resendresend.com/api-keys
  • SendGrid — Settings > API Keys
  • Postmark — Servers > API Tokens
2

Add it to your Hiveku project

In your project’s Settings > Environment Variables, add:
RESEND_API_KEY=re_...
(or the equivalent for your provider)
3

Install the provider SDK and send

npm install resend
import { Resend } from "resend";

const resend = new Resend(process.env.RESEND_API_KEY);

await resend.emails.send({
  from: "hello@yourcompany.com",
  to: "customer@example.com",
  subject: "Welcome aboard",
  html: "<p>Thanks for signing up!</p>",
});

Verifying It Works

Send a test email to yourself, then check Settings > Email > Analytics (for Hiveku Email) or your provider’s dashboard. You should see the event within seconds — delivered, opened, clicked, bounced, or complained.

Troubleshooting

DNS records are probably wrong or haven’t propagated. Double-check each record against what Hiveku showed you — watch for trailing dots, quotes, and the exact selector name. Use a tool like dig TXT default._domainkey.yourcompany.com to confirm the record is live, then click Verify again.
If a recipient bounced or marked a previous email as spam, they’re added to your account suppression list. Check Settings > Email > Suppressions, remove the address if appropriate, and try again.
Hiveku Email defaults to 10 sends per second. For higher volume, ask support to raise the limit, or batch sends with small delays.
Test keys route to a sandbox inbox and never leave Hiveku. To send to a real inbox, switch to your live key.

What’s Next?

Email Reference

Full API reference, templates, webhooks, batch sending

Domain Setup

Deep dive on DKIM, SPF, DMARC, and deliverability