From ecc
Integrates transactional email sending via Mailtrap's Email API, covering sandbox testing, domain verification, and API authentication. Use for implementing email features or debugging delivery.
How this skill is triggered — by the user, by Claude, or both
Slash command
/ecc:mailtrap-email-integrationThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Patterns for adding transactional email sending to an application using Mailtrap's Email API and Sandbox, covering authentication, environment separation, and common delivery pitfalls.
Patterns for adding transactional email sending to an application using Mailtrap's Email API and Sandbox, covering authentication, environment separation, and common delivery pitfalls.
Sandbox vs. Production separation. Mailtrap provides a Sandbox API that captures emails without delivering them, used for dev/staging so test emails never reach real inboxes. Production sending uses a separate, verified-domain endpoint. Never point a dev environment at the production sending endpoint.
Authentication. Requests use a Bearer token in the Authorization header. Tokens are scoped per project; sandbox and production typically use different tokens.
Domain verification. Production sending requires verifying a sending domain via DNS records (SPF, DKIM, DMARC) before Mailtrap will deliver to real recipients. Skipping this causes silent delivery failures or spam-folder placement.
// Sending via Mailtrap's Email API (production)
async function sendEmail(to: string, subject: string, html: string) {
const response = await fetch("https://send.api.mailtrap.io/api/send", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.MAILTRAP_API_TOKEN}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
from: { email: "[email protected]", name: "Your App" },
to: [{ email: to }],
subject,
html,
}),
});
if (!response.ok) {
throw new Error(`Email send failed: ${response.status}`);
}
return response.json();
}
// Same call, routed to Sandbox in non-production environments
const MAILTRAP_ENDPOINT = process.env.NODE_ENV === "production"
? "https://send.api.mailtrap.io/api/send"
: `https://sandbox.api.mailtrap.io/api/send/${process.env.MAILTRAP_INBOX_ID}`;
| Anti-Pattern | Why It's a Problem | Instead |
|---|---|---|
| Using the production sending endpoint in dev/test | Real test emails reach real inboxes, risking spam complaints and leaked test data | Route non-production environments to the Sandbox endpoint |
| Hardcoding API tokens in source | Credential leak risk if committed to version control | Load tokens from environment variables / secrets manager |
| Sending before domain verification completes | Emails silently fail or land in spam | Verify SPF/DKIM/DMARC records before enabling production sending |
| No retry/error handling on send failures | Silent notification failures (e.g., user never gets password reset email) | Check response status, log failures, surface actionable errors |
api-and-interface-design, security-and-hardening, ci-cd-and-automation
npx claudepluginhub affaan-m/ecc --plugin ecc7plugins reuse this skill
First indexed Jun 30, 2026
Showing the 6 earliest of 7 plugins
Integrates transactional email sending via Mailtrap's Email API, covering sandbox testing, domain verification, and API authentication. Use for implementing email features or debugging delivery.
Captures outbound email in Mailtrap Email Sandbox for dev, staging, and CI testing. Supports SMTP and HTTP API for inspecting bodies, headers, attachments, and spam checks.
Integrates email sending into projects with Resend/SendGrid. Covers domain verification (SPF/DKIM/DMARC), HTML templates, rate limiting, testing, and troubleshooting for verification, notifications, or marketing emails.