Transactional email through a real SMTP relay or an HTTPS JSON API, authed by one hyd-mail key and billed per recipient.
Hep.gg Email sends transactional mail through two interchangeable channels: a real SMTP submission relay at smtp.hep.gg:587 that any existing app, mail client, or framework can point at unchanged, and an HTTPS JSON API at POST https://hep.gg/api/v1/email/send for new code. Both channels share the same hyd-mail- key, the same credit balance, and the same send log. Pick whichever fits the app you already have.
Authentication
Every send is authenticated by a single per-key token in the format hyd-mail- followed by 40 characters. You mint, rotate, disable, and delete keys on the API Keys tab of the Email dashboard. There is no public endpoint that creates a key.
- HTTPS API: send the key as
Authorization: Bearer hyd-mail-.... - SMTP: the key is the AUTH password. The username is ignored, so put anything there (for example
x). See SMTP relay.
The same key works on both channels. Disabling a key disables both instantly. Rotating a key rotates both. The 120 calls/min rate limit and the credit balance are shared across channels, so a caller cannot double-dip by switching protocols.
Quickstart
Send your first email from the global sender noreply@hep.gg, which works for every account. Replace hyd-mail-... with a key from the API Keys tab.
A successful call returns a messageId you can find on the dashboard Logs tab:
{
"ok": true,
"data": {
"messageId": "a1b2c3d4e5f6a7b8",
"smtpMessageId": "<...@hep.gg>",
"status": "sent",
"from": "noreply@hep.gg",
"recipients": 1,
"creditsCharged": 1
}
}Choosing a channel
What does not exist
- No delivery or bounce webhook. Nothing calls back when a message is delivered, opened, or bounces.
- No status-lookup endpoint. The only post-send visibility is the dashboard Logs tab; there is no public
GETbymessageId. - No 30-day unlimited tier. Email is billed strictly as credits, one per recipient. (An old unlimited SKU was retired and is gone.)