cURL

One command, no project — the fastest way to prove the credentials work.

1Send a ready-made message

This pipes our sample message straight into the sandbox:

Your sandbox credentials
curl -fsS https://app.mailclutch.com/welcome.eml |
curl "smtp://smtp.mailclutch.com:587" --ssl-reqd \
  --user "mc_0000000000000000:pw_0000000000000000" \
  --mail-from "staging@example.com" \
  --mail-rcpt "anyone@example.com" \
  --upload-file -

--ssl-reqd makes cURL refuse to continue if STARTTLS is unavailable, so the credentials never travel in the clear.

2Or write the message inline

Your sandbox credentials
printf 'From: staging@example.com\nTo: anyone@example.com\nSubject: Sandbox check\n\nHello from curl.\n' |
curl "smtp://smtp.mailclutch.com:587" --ssl-reqd \
  --user "mc_0000000000000000:pw_0000000000000000" \
  --mail-from "staging@example.com" \
  --mail-rcpt "anyone@example.com" \
  --upload-file -

The blank line between the headers and the body is what makes it a message rather than a malformed one.

Watch it land

Open the sandbox and the message is there — rendered HTML, plain text, raw source, attachments, and the SPF, DKIM and DMARC verdicts. It updates live, so you can leave it open next to your terminal.

Nothing is ever delivered onward, whatever address you send to; claim the inbox with an account and it stays.

Awaiting your email

Send from any address; it stops here rather than going onward. The inbox keeps what it catches for 24 hours.

What usually goes wrong

  • Reading the failure

    Add -v to see the SMTP conversation. A 535 is the credentials, a timeout is a blocked port — try 2525.

  • Port 465

    Use smtps:// instead of smtp:// for implicit TLS.

Official documentationcurl — manual (opens in a new tab)