Skip to content
Docs

How-to

Resend a bounced, failed, suppressed or held email as a new email, or forward a sent email to another recipient, from the dashboard or the API.

Updated Oct 1, 2026

Retry sends an email again with the same content after it bounced, failed, was suppressed or was held. Forward sends a copy of an email you already sent to someone else, for example a support colleague or a customer who lost the original. Both create a new email with its own ID and leave the original unchanged.

Before you begin

  • In the API, both endpoints work with Full Access and Sending Only keys.
  • Both are charged as new sends, so you need enough credits.
  • Both need the original message contents. Emailit deletes them when your data retention period for message contents ends:
Pay as you goProBusinessCustom
Message contents kept7 days30 days30 daysFlexible

Retry an email

An email can be retried when all of these are true:

Requirement Details
Status bounced, failed, suppressed or held
Age Created less than 30 days ago
Contents The message contents haven’t been deleted by data retention
Sending domain The original sending domain still exists in the workspace

A retry creates a new email with a new em_ ID and a new Message-ID. It reuses the original’s raw message, recipient, metadata and tracking settings, and goes through the normal delivery pipeline. It costs 1 credit, or 2 credits if the original was a campaign email. A workspace in sandbox mode can only retry emails addressed to workspace members.

Fix the cause before you retry, or the new email ends up with the same status:

  • Suppressed: remove the address from suppressions first.
  • Held for credits: top up your credits.
  • Held because the domain was paused: resolve the sending health issue.
  • Held for spam score: a retry sends the same content and is likely to be held again. Change the content and send a new email instead. See Spam checks.
  • Bounced: check the bounce reason on the email’s detail page. A mailbox that doesn’t exist will bounce again. If Emailit added the address to your suppressions after the bounce, remove it first.
  1. Go to Email APIEmails and open the email.
  2. Select Retry at the top of the page. The dashboard shows it on held and suppressed emails; retry bounced and failed emails with the API.
  3. Select Retry again in the Retry Email dialog to confirm. The new email appears in the list with its own ID.
Terminal
curl -X POST https://api.emailit.com/v2/emails/em_33VtK8mRq1xZp7LwN4cY2bHsDfa/retry \
  -H "Authorization: Bearer $EMAILIT_API_KEY"
JSON
{
  "object": "email",
  "id": "em_33Vu2LqPz8aKd4WnX6cR1tYbHgs",
  "original_id": "em_33VtK8mRq1xZp7LwN4cY2bHsDfa",
  "token": "33Vu2LqQ7mFt3XcV9bNp5KsRwEz",
  "message_id": "<33Vu2LqQ7mFt3XcV9bNp5KsRwEz@acme.com>",
  "from": "Acme <orders@acme.com>",
  "to": "ada@example.com",
  "subject": "Receipt for order 1042",
  "status": "accepted",
  "created_at": "2026-10-01T11:15:03.552918Z",
  "message": "Email has been queued for retry"
}
Error Cause
404 Email not found The ID doesn’t exist in this workspace.
422 Cannot retry email The status isn’t retryable, the email is older than 30 days, its contents were deleted, or its sending domain was deleted. The message says which.
402 Insufficient credits The workspace can’t pay for the retry.
403 Workspace not verified The workspace is in sandbox mode and the recipient isn’t a workspace member.

Forward an email

Forwarding sends an outgoing email you already sent to a new recipient. Incoming (inbound) emails can’t be forwarded.

By default, the forward is a plain resend: the recipient gets the original subject, body and attachments as if the email had been sent to them. Set include_headers to send a classic forward instead, with a “Forwarded message” block (original From, Date, Subject and To) and an optional comment above it. The subject then starts with Fwd:.

tostring | string[]required
The new recipients, in the same formats as to on a send.
include_headersbooleandefault: false
Add the forwarded-message block, the optional comment and the Fwd: subject prefix.
commentstring
A plain-text note shown above the forwarded message when include_headers is true. body is accepted as an alias.
htmlstring
An HTML note to use instead of the escaped comment in the HTML part, when include_headers is true.
textstring
A plain-text note that replaces comment in the text part, when include_headers is true.
fromstring
Send from a different address. Defaults to the original From address. It must be on a verified sending domain.
subjectstring
Replace the subject. Defaults to the original subject, or Fwd: plus the original subject with include_headers.

A forward is a new send, so it follows the same rules as POST /emails: credits per recipient, sending rate limits, the From domain checks and the Idempotency-Key header all apply. Tracking follows the sending domain’s settings. The original’s custom headers and metadata aren’t copied, and attachments are carried over only if their file type is allowed.

Each workspace can make 3 forward requests per hour, counting forwards from the dashboard and the API together. Over the limit, the API returns 429 with too_many_requests.

  1. Go to Email APIEmails and open the email.
  2. Select Forward.
  3. Enter the recipient in To.
  4. Optional: check Add forwarded headers and a comment and write a Comment.
  5. Select Forward. The new email appears in the list with its own ID.
Terminal
curl https://api.emailit.com/v2/emails/em_33VtK8mRq1xZp7LwN4cY2bHsDfa/forward \
  -H "Authorization: Bearer $EMAILIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "support@acme.com",
    "include_headers": true,
    "comment": "Customer says this receipt never arrived. Can you check?"
  }'

The response is the same as a send response, plus original_id and the message “Email has been queued for forwarding”. Forwarding fails with 422 Cannot forward email if the original is an inbound email or its contents were deleted.

Was this page helpful?

Thanks for the feedback.

Thanks, we read every message.