Lifecycle marketing
built for agents
Set the loop up once — by hand in half an hour, or hand the guide to your agent. Journeys run from your repo after that.
About 30 minutes · No mailbox provider · No Google account
We took a fresh domain to production lifecycle email in about half an hour — on hogsend.com itself. No mailbox provider, no Google account. Every step has a checkable result, which is exactly what an agent needs.
Seven steps, each with a check
The short version of the guide. Every step ends with a command whose output tells you it worked — run, check, proceed.
Prerequisites
A domain on Cloudflare, a Resend account, and somewhere to deploy — the Railway template or your own infrastructure. Any DNS host works; Cloudflare gets the inbound trick for free.
In the guide$ dig +short NS yourdomain.comada.ns.cloudflare.com.Create a Resend key
Pick a team, create one full-access API key, add your domain and choose a region. Full access matters — a send-only key cannot read domain status, which silently disables Hogsend's automatic test-mode safety.
In the guide$ curl -s https://api.resend.com/domains \ -H "Authorization: Bearer $RESEND_API_KEY""status": "not_started"Set four DNS records
DKIM, MX and SPF live on the send subdomain, DMARC on the root — so they coexist with anything already on the domain. All DNS-only, unproxied. Start DMARC at p=none and tighten later.
In the guide$ dig +short TXT resend._domainkey.yourdomain.com"p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQ…"Verify the domain
Trigger verification from the dashboard or the API, then poll until the status reads verified. Usually under a minute on Cloudflare.
In the guide$ curl -s https://api.resend.com/domains/$DOMAIN_ID \ -H "Authorization: Bearer $RESEND_API_KEY""status": "verified"Inbound, without a mailbox
Cloudflare Email Routing forwards hello@ and a catch-all to the inbox you already have. Reply as hello@ through Gmail's send-as, over smtp.resend.com with your API key as the password. Total mailbox cost: zero.
In the guide$ # send a test to hello@yourdomain.comdelivered → your existing inboxDeploy
The Railway template is one click; create-hogsend scaffolds the same app if you would rather deploy it yourself. A fresh deploy mints an ingest-scoped API key on first boot and prints it once in the deploy log.
In the guide$ curl -s https://your-api/v1/health"status": "healthy"Fire
One event in. The welcome journey runs and the email arrives from your domain, DKIM-signed. The health endpoint counts it.
In the guide$ curl -X POST https://your-api/v1/events \ -H "Authorization: Bearer $HOGSEND_API_KEY" \ -d '{"name":"user.created", "email":"you@yourdomain.com"}'activity.emails.sent → 1The parts that bite
Found by doing this for real, not by reading documentation. The guide covers each in full.
Root domains on Cloudflare + Railway
Cloudflare flattens root CNAMEs, which breaks Railway's certificate validation. Set the record to Proxied with zone SSL mode Full — never Flexible — or use Railway's one-click Cloudflare connect. Subdomains are unaffected.
Restricted Resend keys
Sends work, but the domains API returns 401. Hogsend warns once and assumes the domain is verified. Set HOGSEND_TEST_MODE=true if you want redirect-to-inbox safety with a restricted key.
One domain on the free plan
Resend's free plan holds exactly one domain. Repurposing a team means removing the old domain first.
DMARC, gently
Start at p=none and watch the reports before tightening to quarantine or reject.
Hand the guide to your agent
Every step on this page is a command or an API call with a checkable result. That is the property agents need: run, check, proceed. Point one at the guide and say set up my domain.
/llms.txt
The docs are published for machines as well as people — one fetch and your agent has the whole guide.
Vendored skills
Every scaffold ships Claude Code skills in .claude/skills — journeys, emails, deploys, all documented where the agent works.
The hogsend CLI
Health, journeys, contacts, tokens — every command takes --json, so the agent can check its own work.
A one-command version — hogsend email setup — is on the way. The guide is its spec.
$ claude> Read hogsend.com/docs/operating/production-email> and set up production email for acme.dev. dns records created · 4/4domain verified · eu-west-1deploy healthy · /v1/healthfirst email sent · dkim passPut an email in.
The product does the rest.
This form feeds a stock create-hogsend app running in production. It ingests the event, runs its welcome journey, and the email arrives from hello@hogsend.com a few seconds later. A nudge follows in two days unless you deploy first.
Same engine, same journey code you scaffold · unsubscribe is one click
Fresh domain to
first send, tonight
The full guide has every record, every key, and every check — written from doing it for real on hogsend.com.
About 30 minutes · No mailbox provider · No Google account
$ curl -X POST https://your-api/v1/events \ -H "Authorization: Bearer $HOGSEND_API_KEY" \ -d '{"name":"user.created", "email":"you@yourdomain.com"}' 202 Accepted