# Transactional email

> Send from your own DKIM-verified domain with a delivery log.

Source: https://gheima.ma/docs/managed-email

Managed transactional email lets your app send from your own domain (receipts, verification, password resets) without running a mail server. Gheima generates a DKIM key for each domain. You publish its public key in DNS, and we sign outgoing mail with it so the mail authenticates as your domain.

### Verify a domain

1. **Add the domain** — Open Email, click "Add domain", and enter the domain, for example mail.example.com.
2. **Publish DNS** — Add the DKIM TXT record and the SPF record we show at your DNS provider.
3. **Verify** — Click "Verify". Once the DKIM record resolves, the domain shows "Verified".

### Send

```bash
curl https://api.gheima.ma/v1/email/send \
  -H "Authorization: Bearer $GHEIMA_KEY" \
  -H 'Content-Type: application/json' \
  --data '{"domainId":"…","from":"hi@mail.example.com","to":"user@dest.com","subject":"Welcome","html":"<b>Hi</b>"}'
```

The from address must be on the verified domain. Send the body as html, text, or both.

> Note: Sending is asynchronous. The log keeps the sender, recipient, subject, and status of each message. We don't keep the message body.

> Result: Your app sends DKIM-signed email from your own domain, with a delivery log and no mail server to run.

---

All docs: https://gheima.ma/docs.md
