# Email errors

This page lists the error codes Pushwoosh can return when sending an email, grouped by what caused them. Each entry explains what the error means and how to resolve it.

## Account and sending limits

These errors mean your account or configuration set hit a sending cap, pause, or suspension — nothing is wrong with the message itself.

<div class="error-table">

| Error <div style="width:220px"></div> | Description <div style="width:300px"></div> | What to do |
| --- | --- | --- |
| **AccountDailyQuotaExceeded** | Your account has reached its daily email sending quota. | Wait for the quota to reset, or contact [Pushwoosh Support](https://help.pushwoosh.com/hc/en-us/requests/new) to request a higher quota. |
| **AccountSendingPaused** / **AccountSendingPausedException** / **ConfigurationSetSendingPaused** / **ConfigurationSetSendingPausedException** | Email sending has been paused for your account or configuration set, usually due to a high bounce or complaint rate. | Review your [bounce and complaint rates](/product/messaging-channels/emails/email-deliverability/#bounce-management) and contact [Pushwoosh Support](https://help.pushwoosh.com/hc/en-us/requests/new) to resume sending. |
| **AccountSuspended** | Your account's ability to send emails has been suspended. | Contact [Pushwoosh Support](https://help.pushwoosh.com/hc/en-us/requests/new) to find out why and how to restore sending. |
| **AccountThrottled** | Too many emails were sent in a short period, and the sending rate limit was exceeded. | Reduce your sending rate, or contact [Pushwoosh Support](https://help.pushwoosh.com/hc/en-us/requests/new) to request a higher rate limit. |

</div>

## Sender and domain configuration

These errors point to a problem with how your sending domain or "From" address is set up and verified.

<div class="error-table">

| Error <div style="width:220px"></div> | Description <div style="width:300px"></div> | What to do |
| --- | --- | --- |
| **CannotGetCredentials** | Pushwoosh couldn't get the credentials needed to send the email. | Check that your [sender domain](/product/first-steps/start-with-your-project/configure-platforms/email-verification/) is verified and active. |
| **FromEmailAddressNotVerifiedException** | The sender address isn't verified and can't be used to send this email. | [Verify the sender's domain and email address](/product/first-steps/start-with-your-project/configure-platforms/email-verification/) and try again. |
| **FromEmailMissing** | The "From" email address is missing or invalid. | Set a valid, verified "From" email address in the [email platform configuration](/product/first-steps/start-with-your-project/configure-platforms/email-verification/) or in the message settings. |
| **FromNameMissing** | The "From Name" for the email is missing or invalid. | Set a valid "From Name" in the [email platform configuration](/product/first-steps/start-with-your-project/configure-platforms/email-verification/) or in the message settings. |
| **MailFromDomainNotVerified** / **MailFromDomainNotVerifiedException** | The message couldn't be sent because Pushwoosh couldn't find the required MX record for the sending domain. | Check the [DNS/DKIM records](/product/first-steps/start-with-your-project/configure-platforms/email-verification/#dkim-records-required) for your sending domain and make sure they're published correctly. |
| **InvalidTrackingOptionsException** | The custom tracking domain configured for open/click tracking is invalid. | Check your [custom tracking domain settings](/product/first-steps/start-with-your-project/configure-platforms/email-verification/#configure-link-tracking). |

</div>

## Recipient address issues

These errors are caused by the recipient's email address itself — its format, or its bounce and complaint history — not by your account or template.

<div class="error-table">

| Error <div style="width:220px"></div> | Description <div style="width:300px"></div> | What to do |
| --- | --- | --- |
| **AddressContainsControlOrWhitespace** | The email address contains control characters or extra whitespace. | Remove any hidden characters or whitespace from the email address and try again. |
| **EmailComplaint** | The recipient previously marked a message from you as spam. | Remove this recipient from future sends to protect your sender reputation. |
| **EmailIsBounced** | The message wasn't sent because this email address has already bounced. | Use a valid, active email address, or remove this recipient from your mailing list. |
| **IllegalEmailAddress** | The recipient's email address has an invalid format. | Check the recipient's email address and correct it. |
| **UnableToParseEmailBCC** | The BCC field contains an invalid value. | Check the format of the addresses in the BCC field. |

</div>

## SMTP delivery errors

These errors happen while Pushwoosh delivers the message over SMTP, from a missing configuration to a failed connection.

<div class="error-table">

| Error <div style="width:220px"></div> | Description <div style="width:300px"></div> | What to do |
| --- | --- | --- |
| **SMTPCannotProcessData** | Pushwoosh couldn't build the email for SMTP delivery. | Check the email template settings. |
| **SMTPCannotProcessFrom** | The SMTP "FROM" field is empty. | Set a valid "From" email address for the message. |
| **SMTPCannotProcessRcpt** | The SMTP "RCPT" (recipient) field is empty. | Check that the recipient's email address is set correctly. |
| **SMTPCannotProcessSending** | An internal error occurred while sending the message via SMTP. | Try sending the message again later. If the error persists, contact [Pushwoosh Support](https://help.pushwoosh.com/hc/en-us/requests/new). |
| **SMTPIsNotConfigured** | SMTP hasn't been set up for this account. | Contact [Pushwoosh Support](https://help.pushwoosh.com/hc/en-us/requests/new) to configure SMTP sending. |
| **SMTPUnableToCreateConnection** | Pushwoosh couldn't establish an SMTP connection. | Check your SMTP server settings and credentials, then try again. |
| **SMTPUnableToSignDKIM** | Pushwoosh couldn't sign the message with DKIM. | Check the [DKIM configuration](/product/first-steps/start-with-your-project/configure-platforms/email-verification/#dkim-records-required) for your sending domain. |
| **SMTPUnknownError** | An unspecified SMTP error occurred. | Try sending the message again. If the error persists, contact [Pushwoosh Support](https://help.pushwoosh.com/hc/en-us/requests/new). |

</div>

## Template and content errors

These errors occur while Pushwoosh builds or renders the email — a missing template, invalid placeholder data, or malformed HTML.

<div class="error-table">

| Error <div style="width:220px"></div> | Description <div style="width:300px"></div> | What to do |
| --- | --- | --- |
| **CannotGetEmailPlaceholders** | Pushwoosh couldn't fetch the placeholders used in the email template. | Check the [Dynamic Content](/product/personalization/dynamic-content) placeholders in the email template. |
| **CannotGetTemplateBindings** | Pushwoosh couldn't fetch the data bindings required to render the template. | Check the [Dynamic Content](/product/personalization/dynamic-content) and [Liquid Templates](/product/personalization/liquid-templates/) settings used in the template. |
| **CannotNormalizeHTML** | The email content couldn't be prepared for sending. | Check the email template's HTML content for errors. |
| **CannotProcessEmailTemplateFromRepo** | The email template couldn't be loaded and processed. | Check the email template settings and try again. |
| **EmailCannotGetEmailTemplateCode** | Failed to get `email_template_code` or it is empty. | Check that the platform is configured correctly and try again. |
| **EmailCannotGetEmailTemplateFromRepo** | Failed to get the email template by `email_template_code`. | Check that the platform is configured correctly and try again. |
| **InvalidRenderingParameterException** | One of the values used to fill the template is invalid, often due to malformed JSON. | Check the [Dynamic Content](/product/personalization/dynamic-content) data passed to the template. |
| **InvalidTemplateException** | The specified email template couldn't be rendered. | Check the email template for errors and try again. |
| **MissingRenderingAttributeException** | A value referenced by a placeholder in the template wasn't provided. | Make sure all placeholders used in the template have matching values. |
| **TemplateDoesNotExistException** | The specified email template doesn't exist. | Check that the email template is correctly configured and hasn't been deleted. |
| **TooDeepTemplateInsertion** | Templates are nested too deeply inside one another. | Reduce the number of nested template insertions in the email content. |
| **UnableToBuildEmailAttachments** | One or more attachments couldn't be built. | Check the attachments added to the email and try again. |
| **UnableToBuildHTML** | Failed to compile the email template. Most likely, the template contains an error related to [Dynamic Content placeholders](/product/personalization/dynamic-content) or [Liquid Templates](/product/personalization/liquid-templates/). | Check the email template settings. |
| **UnableToCreateHTML** | Pushwoosh couldn't generate the final HTML for the email. | Check the email template settings. |
| **UnableToInsertTemplate** | Pushwoosh couldn't insert a referenced template into the email. | Check the inserted/nested template reference in the email content. |
| **UnableToMinifyHTML** | Pushwoosh couldn't minify the email's HTML content. | Check the email template's HTML for malformed markup. |

</div>

## Liquid templates and Connected Content

These errors are specific to Liquid syntax and to Connected Content requests used to pull in personalized data.

<div class="error-table">

| Error <div style="width:220px"></div> | Description <div style="width:300px"></div> | What to do |
| --- | --- | --- |
| **ConnectedContentInvalidJSON** | The [Connected Content](/product/personalization/liquid-templates/#connected-content) endpoint returned invalid JSON. | Check that your backend returns valid JSON for the Connected Content request. |
| **ConnectedContentInvalidParameters** | The number of parameters passed to [Connected Content](/product/personalization/liquid-templates/#connected-content) doesn't match the template. | Check the parameters passed in the Connected Content tag against your template. |
| **ConnectedContentInvalidTemplate** | The [Connected Content](/product/personalization/liquid-templates/#connected-content) tag contains an invalid Liquid template. | Check the Liquid syntax used inside the Connected Content tag. |
| **ConnectedContentInvalidURL** | Pushwoosh couldn't fetch the URL specified in [Connected Content](/product/personalization/liquid-templates/#connected-content). | Check that the Connected Content URL is correct and reachable. |
| **ConnectedContentInvalidVarExpression** | The `${}` expression used in [Connected Content](/product/personalization/liquid-templates/#connected-content) is invalid. | Check the `${}` syntax used in the Connected Content tag. |
| **InvalidLiquidTemplate** | The email contains an invalid Liquid template. | Check the [Liquid Templates](/product/personalization/liquid-templates/) syntax used in the email. |
| **LiquidTemplateInvalidParsing** | The Liquid template couldn't be parsed due to a syntax error. | Check the [Liquid Templates](/product/personalization/liquid-templates/) syntax used in the email. |
| **LiquidTemplateInvalidRendering** | The Liquid template couldn't be rendered with the available data. | Check that the variables used in the [Liquid Templates](/product/personalization/liquid-templates/) match the data available for the recipient. |
| **LiquidTemplateInvalidTimezone** | An invalid timezone was used with a date filter in the Liquid template. | Check the timezone value used with the date filter in your [Liquid Templates](/product/personalization/liquid-templates/). |

</div>

## Delivery and infrastructure errors

These errors come from the email sending infrastructure itself. Most are transient or internal, and several require Pushwoosh Support to investigate.

<div class="error-table">

| Error <div style="width:220px"></div> | Description <div style="width:300px"></div> | What to do |
| --- | --- | --- |
| **CannotConnect** | Pushwoosh couldn't connect to the email sending gateway. | Try sending the message again later. If the error persists, contact [Pushwoosh Support](https://help.pushwoosh.com/hc/en-us/requests/new). |
| **CannotGetDeviceAPIURL** | Pushwoosh couldn't determine the API URL required to send the email. | Contact [Pushwoosh Support](https://help.pushwoosh.com/hc/en-us/requests/new). |
| **CannotSend** | The email couldn't be sent. | Try sending the message again later. If the error persists, contact [Pushwoosh Support](https://help.pushwoosh.com/hc/en-us/requests/new). |
| **EmailSESInvalidParameterValue** | One of the parameters passed to Amazon is incorrect. | Check the passed parameters and try again. |
| **Failed** | The message couldn't be sent for an internal reason. | Try sending the message again. If the error persists, contact [Pushwoosh Support](https://help.pushwoosh.com/hc/en-us/requests/new). |
| **MessageRejected** | Amazon rejected the message, and it wasn't sent. | Check the message content and recipient address, then try again. |
| **RequestTimeout** | The request to the email sending service timed out. | Try sending the message again later. |
| **SpamDetected** | The message was flagged as spam and wasn't sent. | Review your content for spam-like characteristics and contact [Pushwoosh Support](https://help.pushwoosh.com/hc/en-us/requests/new) if you believe this is a mistake. |
| **TransientFailure** | A temporary failure occurred on Amazon's side while sending the message. | Try sending the message again later. |
| **UnableToUnmarshalMetaData** | Pushwoosh couldn't process the metadata attached to the email. | Contact [Pushwoosh Support](https://help.pushwoosh.com/hc/en-us/requests/new) with the message ID. |
| **UnknownError** | An unspecified sending error occurred. | Contact [Pushwoosh Support](https://help.pushwoosh.com/hc/en-us/requests/new) with the message ID for investigation. |

</div>

## Amazon SES configuration errors

These errors come from Pushwoosh's internal Amazon SES sending infrastructure, not from your message content or account settings.

<div class="error-table">

| Error <div style="width:220px"></div> | Description <div style="width:300px"></div> | What to do |
| --- | --- | --- |
| **Amazon SES configuration errors**<ul><li>`ConfigurationSetAlreadyExistsException`</li><li>`ConfigurationSetDoesNotExistException`</li><li>`EventDestinationAlreadyExistsException`</li><li>`EventDestinationDoesNotExistException`</li><li>`InvalidCloudWatchDestinationException`</li><li>`InvalidConfigurationSetException`</li><li>`InvalidDeliveryOptionsException`</li><li>`InvalidFirehoseDestinationException`</li><li>`InvalidLambdaFunctionException`</li><li>`InvalidPolicyException`</li><li>`InvalidS3ConfigurationException`</li><li>`InvalidSNSDestinationException`</li><li>`InvalidSnsTopicException`</li><li>`RuleDoesNotExistException`</li><li>`RuleSetDoesNotExistException`</li><li>`TrackingOptionsAlreadyExistsException`</li><li>`TrackingOptionsDoesNotExistException`</li><li>`CustomVerificationEmailInvalidContentException`</li><li>`CustomVerificationEmailTemplateAlreadyExistsException`</li><li>`CustomVerificationEmailTemplateDoesNotExistException`</li><li>`LimitExceededException`</li><li>`ProductionAccessNotGrantedException`</li><li>`AlreadyExistsException`</li><li>`CannotDeleteException`</li><li>`InvalidSendingPoolName`</li></ul> | An internal error in Pushwoosh's Amazon SES sending infrastructure. This isn't caused by your message content or account settings. | Contact [Pushwoosh Support](https://help.pushwoosh.com/hc/en-us/requests/new) with the exact error name and the time the message was sent. |

</div>