my-email-api

$npx mdskill add myapihq/myapi/my-email-api

Manage email infrastructure including mailboxes, sending, templates, and warmup.

  • Create and manage mailboxes on registered domains for sending and receiving email.
  • Depends on mydomainapi for domain registration and SES for email delivery.
  • Uses mailbox activation status and warmup state to determine sending readiness.
  • Returns email send status, mailbox lists, and warmup stats via CLI commands.

SKILL.md

.github/skills/my-email-apiView on GitHub ↗
---
name: my-email-api
version: 1.0.0
description: >
  Send transactional and bulk email from your own domain. Create mailboxes, send/receive messages, generate AI templates, and manage warmup.
triggers: [email, mailbox, send email, transactional email, template, warmup, inbox, outbox, ses, sender reputation]
checksum: sha256-pending
---

# MyEmailAPI

Account-scoped email infrastructure tied to your registered domains. Mailboxes belong to domains; sending and receiving work without per-org plumbing. Templates are org-scoped.

## Capabilities
<!-- llm:start -->
Email is built around mailboxes. Each mailbox lives on a registered domain (e.g. `[email protected]`) and must be activated for sending before transactional sends work — newly-created mailboxes can receive but not send.

Templates are AI-generated HTML emails (org-scoped). Warmup is a separate flow that gradually ramps a mailbox's send rate to build inbox reputation before high-volume sending.

A registered domain via **mydomainapi** is the prerequisite — mailboxes need a domain to live on.
<!-- llm:end -->

## Commands
<!-- generated:start -->
| Namespace | Subcommands | Purpose |
|---|---|---|
| `email mailbox` | `create`, `list`, `activate-sending` | Create and manage mailboxes |
| `email message` | `send`, `status`, `sent`, `inbox`, `outbox`, `get` | Transactional send + read |
| `email warmup` | `start`, `stats`, `pause`, `resume`, `stop` | IP/domain warmup for sending reputation |
| `email template` | `generate`, `list`, `get`, `preview`, `edit`, `send-test`, `delete` | AI-generated HTML templates |
<!-- generated:end -->

## Examples
<!-- llm:start -->
```bash
# 1. Create a mailbox + activate sending
myapi email mailbox create [email protected] --display-name "Hello"
myapi email mailbox activate-sending --address [email protected]

# 2. Send a transactional email
myapi email message send \
  --from [email protected] --to [email protected] \
  --subject "Hi" --body "Test message"

# 3. Read inbox / outbox
myapi email message inbox  [email protected]
myapi email message outbox [email protected]

# 4. Generate + use a template
myapi email template generate welcome-v1 \
  --prompt "A welcome email with our brand colors and a CTA to /onboarding"
myapi email template list
myapi email template preview <id>            # public preview URL — share with stakeholders
myapi email template send-test <id> --to [email protected]
myapi email template edit <id> --prompt "Make the CTA larger and red"

# 5. Warm up before a big send
myapi email warmup start --address [email protected]
myapi email warmup stats --address [email protected]
```
<!-- llm:end -->

## Notes

- A mailbox is uniquely identified by its address (`username@domain`).
- Sending is opt-in per mailbox. Newly-created mailboxes can receive but not send until `activate-sending` runs.
- Templates are org-scoped. Set a default org once: `myapi config set-org <id>`.

Run `myapi email --help` or `myapi email <namespace> --help` for full flag reference.

More from myapihq/myapi