Send your first email

Create a key, verify one sender domain, and copy the send call. Your workspace and first project already exist.

Copy the API key

Sign up free, then create a key under API keys. Secrets start with ntc_ and are shown once.

Verify the sender domain

Add send.yourapp.com under Domains. Install the DNS records with the Cloudflare flow or copy them to your provider, then click verify. DNS propagation time depends on the provider.

Send the customer email

Replace the sender and recipient, then run the request. Use an idempotency key tied to the app event so a retry cannot send the same receipt twice.

terminal
curl -X POST https://www.noticeapi.com/api/v1/email/send \
  -H "Authorization: Bearer $NOTICEAPI_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: order-1042-receipt" \
  -d '{
    "from": "Acme <[email protected]>",
    "to": "[email protected]",
    "subject": "Your receipt from Acme",
    "text": "Thanks for your order. Receipt #1042 is ready."
  }'

Open the delivery timeline

Every send returns an id. Fetch it to see per-recipient outcomes:

curl https://www.noticeapi.com/api/v1/emails/EMAIL_ID \
  -H "Authorization: Bearer $NOTICEAPI_API_KEY"

Optional: exercise a failure state

When you need to test bounce, complaint, or webhook handling, use the sandbox sender and a simulator recipient. Simulator sends never reach a mailbox or use quota.

optional simulator request
curl -X POST https://www.noticeapi.com/api/v1/email/send \
  -H "Authorization: Bearer $NOTICEAPI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "[email protected]",
    "to": "[email protected]",
    "subject": "Bounce test",
    "text": "Watch the delivery timeline."
  }'

Free includes outbound transactional and marketing email for one project: 3,000 emails/month, 100/day after activation, one domain, and 1,000 active contacts. Pro adds pooled projects, automations, inbound receiving, and REST attachments.