Troubleshoot Common Push Errors

Push notification delivery can fail due to several factors, including expired tokens or excessively large messages. This document outlines the most common errors and their reasons.

Internal Errors

Our internal system generates some errors that affect push notifications sent to all platforms.

Error/Alternative errors Description Remedy
MOE_PFR
Personalization Failed
This error occurs when push personalization fails and no fallback message is defined, the system will not send the notification to the user, resulting in a Personalization Failed error.

Ensure that every user has all the required personalized attributes.

 

Removed due to Minimum Delay This error occurs when the user is removed from receiving the notification due to the campaign minimum delay.

Check the configured minimum delay under Settings > Delivery controls > Minimum delay.

 

Not sent due to campaign level min delay

This error occurs when the user is removed from receiving the notification due to the campaign minimum delay.

Verify the minimum delay configured in the campaigns. Check the minimum delay configured in campaigns by navigating to Schedule and goals > Delivery controls > Minimum delay between two notifications.

Rejected because of DND

This error occurs when the campaign is rejected because of the DND configured in the campaign.

Check if Do Not Disturb mode is on by navigating to Settings > Delivery control > Do not disturb.

 

Timer Duration Exceeded Limit

This error occurs when the Timer template duration exceeds more than 12 hours.

Ensure that the Timer template duration is less than 12 hours.

Removal of duplicate tokens

This error signifies that the system has identified and removed redundant push notification tokens associated with a user's device.

No action required. This is the expected behavior.

Timer Duration Less Than 15 Minutes

This error occurs when the Timer template duration is less than 15 minutes.

Ensure that the Timer template duration is more than 15 minutes.

Users removed due to Global Control Group

Users were removed due to the Global Control Group.

Ensure that the Global Control Group toggle is turned off.

 

Users removed due to Campaign Control Group

Users were removed due to the Campaign Control Group.

Ensure that the Campaign Control Group toggle is turned off.

 

Platform Errors

MoEngage sends Android and iOS Notifications using FCM and APNS services, respectively. If errors are encountered while using these services, notifications may not be sent. Here is a list of common errors for reference.

  1. Android - GCM/FCM
  2. iOS

Android -  Firebase Cloud Messaging(FCM) and Huawei Messaging Service (HMS) Errors

 

Error/Alternative Errors Description Remedy

Invalid Registration

Also known as:

  • InvalidRegistration
This error occurs when an invalid FCM Push token is submitted during registration. Review the code implementation to confirm the accuracy of the token passed within the `PassPushToken()` method.

Not Registered

 

Also known as:

  • NotRegistered
  • Requested entity was not found
  • Theregistrationtokenis
    notavalidFCMregistrationtoken

This error occurs when a registration token becomes invalid due to the following reasons:

  • Token Expiration: Google may refresh registration tokens, or the Apple Push Notification service (APNS) token may expire for iOS devices.
  • App Update without Configuration: The client application has been updated, but the new version is not set up to receive messages.
  • App Uninstallation: The application has been removed from the device.

If the older token expires, the new token will be passed in the onNewToken() of the Firebase service class (or a class extending this class). Make sure to pass the token to MoEngage SDK using the onNewToken() method.

  • App updates typically do not alter the token. However, if it does change, the MoEngage SDK will verify it during the next App open.
  • If the user uninstalls the App, they will be marked as NotRegistered, which is considered a valid scenario.

FCM Message rate exceeded

Also known as:

  • Quotaexceededforquotametric
  • FCMMessagerateexceeded
  • Resourcehasbeenexhausted
    (egcheckquota)

This Firebase Cloud Messaging (FCM) error occurs when the volume of sent messages surpasses your account's service capacity. To manage the incoming message rate, requests exceeding this capacity are denied. This situation typically occurs when numerous campaigns are launched simultaneously at rapid speeds.

 

To reduce FCM errors, you can:

  • Reduce the campaign sending speed.
  • Space out one-time and periodic campaigns.
  • Request a rate limit increase from FCM.

For more information, refer to FCM Authentication.

FirebaseCloudMessaging

Also known as:

  • APIhasnotbeenusedinproject
  • FirebaseCloudMessaging
  • APIhasnotbeenusedinproject

The error occurs when the utilized FCM Project lacks Cloud Messaging access.

Verify if Firebase Messaging / Google Cloud Messaging is enabled in the Firebase project/ Google Cloud project. You may need to enable Firebase Cloud Messaging separately from Firebase Cloud Services in the FCM Console.

Mismatch Sender Id

Also known as:

  • MismatchSenderId
  • SenderIdmismatch

This error occurs when the registered Sender ID doesn’t match with the Sender ID provided to MoEngage.

The google-services.json file added to the app's code and the service-account.json file added to the MoEngage Dashboard are of two different Firebase projects. Ensure that the files (google-services.json added in the App and service-account.json added in the MoEngage console) are of the same Firebase project.

Message Too Big

Also known as:

  • Androidmessageistoobig
  • MessageTooBig
  • Requestcontainsaninvalidargument

This error occurs when the message payload size limit is exceeded.

Firebase messaging has a limit on the message size and the Key-value pairs/payload size. Reduce the payload size (Character limit - 1000 characters, payload size limit - 4096 bytes/ 4KB)
When sending the Payload from the API, make sure the proper keys are added to the payload.

Invalid FCM Auth Key

Also known as:

  • GCM AUTHENTICATION EXCEPTION
  • INVALID_SERVER_CREDS
  • GCMAuthenticationException
  • Authenticationbackendunknownerror
  • There is an error with your authentication

This error occurs when the Authentication Key uploaded for FCM is invalid/expired.

Generate a new key by following the steps outlined in the FCM Authentication documentation.

Device Message Rate Exceeded

This error occurs when the rate of messages to a particular user is higher than the default rate limit of 600,000 requests per minute.

You need to either reduce the campaign sending speed or increase the quota from FCM.
For more information, refer to FCM Authentication.

Push Amplification™ Plus targets were invalid

The Push Amplification™ Plus tokens are not valid or not found at the time of sending the notifications. 

Check if the PushAmp+ integration was properly completed.
Verify if the token passed in the PassPushToken belongs to the PushAmp+ service (HMS) and not FCM.

Sender temporarily unavailable

Also known as:

  • Authenticationbackendunavailable
  • Failedtoestablishaconnection:HTTPSConnectionPool
  • GCE
  • Internal Error
  • Internal Server Error
  • Internal Server Error from FCM Service
  • Internalerrorencountered
  • Temporary Error from FCM Service
  • Theserviceiscurrentlyunavailable
  • Unexpected HTTP response with status: 502

This error indicates a problem on the sender's server. The server may have encountered an internal error during request processing or could be temporarily offline.

This is a temporary error from FCM and may appear intermittently, requiring no action on your end.

Response Decode Error

This error occurs when the FCM response could not be parsed due to an unrecognized JSON format.

This is a temporary error from FCM and may appear intermittently, requiring no action on your end.

HMS Message too big

Also known as:

  • Themessagebodysizeexceedsthedefaultvalue

This error occurs when the message payload size limit exceeds for HMS. 

Firebase messaging has a limit on the message size as well as the Key-value pairs/payload size. Reduce the payload size (The maximum message size is 4 KB).

When sending the Payload from the API, make sure the proper keys are added in the payload.

For more information, refer to FAQs-Push Kit.

FCM Insufficient Permission

Also known as:

  • Permission'cloudmessaging
    messagescreate'deniedonresource

This error occurs when the FCM Private key generated does not have permission to create cloud messaging. 

Verify if Firebase Messaging / Google Cloud Messaging is enabled in the Firebase project/ Google Cloud project, and the updated JSON keys are added in the MoEngage Dashboard.

For more information, refer to FCM Authentication.

 

iOS - Apple Push Notification Service Errors

 

Error/Alternative Error Description Remedy
Invalid payload size This error occurs when the total size of the payload data included in a message exceeds the APNS limit of 4096 bytes. 

Ensure that the maximum payload size of the push notification is within 4096 bytes. You may need to reduce the number of key-value pairs you are passing.

For more information, refer to APNS documentation for Generating a remote notification.

Invalid token size

This error occurs when the token provided to MoEngage is not correct.

The correct push token should be passed to MoEngage.

 

APNS Provider Certificate Expired This error occurs when the APNS provider certificate uploaded to the MoEngage Dashboard has expired.

Create a new PEM file and upload it to MoEngage or switch to the APNS Authentication Key method (recommended).

For more information, refer to APNS Certificate/PEM file.

APNs Client Connection Failed

This error occurs for the following reasons:

  • The APNS certificate linked to the PEM file on the MoEngage dashboard has been revoked.
  • The AuthKey has been revoked on the Apple Developer account.
Create a new PEM file or AuthKey and upload it to the MoEngage dashboard.

Device Token Not For Topic

Also known as:

  • DeviceTokenNotForTopic
This error occurs when the PEM file or AuthKey is uploaded with the wrong BundleId linked on the MoEngage Dashboard.

Ensure that the correct Bundle Identifier in the MoEngage dashboard is linked with a PEM file or AuthKey(.p8 file).

BadDeviceToken

This error occurs when the APNS Bundle ID provided to MoEngage and the one with which the token was registered do not match.

Ensure the following configurations:

  • Debug configuration: Use Developer Certificates and the Test dashboard in MoEngage.
  • Release configuration: Use Production or AdHoc Certificates and the Live dashboard in MoEngage.

Invalid Provider Token

Also known as:

  • APNS Provider Certificate Revoked
  • APNS Provider Certificate Unknown 
  • InvalidProviderToken

This error occurs in the following cases:

  • The wrong team ID is provided where the AuthKey (.p8 file) is uploaded.
  • The wrong key ID is provided where the AuthKey(.p8 file) is uploaded.
  • The AuthKey(.p8 file) is revoked in Apple Developer Keys, and a new key is generated.

Ensure the following:

  • Your team ID is added to the MoEngage dashboard if the AuthKey (.p8 file) is added.
  • Verify your AuthKey (.p8 file) ID in the MoEngage dashboard with the related Apple developer account from which the auth key is generated.
  • If a new key is generated in an Apple developer account, upload the same to the MoEngage dashboard.

TopicDisallowed

This error occurs when pushing to this topic is not allowed. Ensure that the BundleIdentifier added in the Push settings of the MoEngage dashboard with AuthKey(.p8 file) matches the app’s BundleIdentifer on which the push notification is tested.

Authorization Error

Also known as:

  • Forbidden
  • Bad Authorization
This error occurs when the Authentication Key for APNS is invalid/expired. 

If you encounter this error with APNS, you will need to upload a new certificate.

Unregistered

This error occurs when an existing registration token may cease to be valid in a number of scenarios, including:

  • If the registration token expires (for example, Google might decide to refresh registration tokens, or the APNS token has expired for iOS devices).
  • If the client app is updated, but the new version is not configured to receive messages.
  • The device is uninstalled.

Ensure the following:

  • The latest push token generated on the device is synced with MoEngage.
  • The APNS server throws an Unregistered error if the device token is inactive for the specified topic (app's Bundle Identifier).

    For instance, an iPhone_16_Pro_XYZ generated a push token, token_dummy_value_123, which was synced to MoEngage's backend. Then, due to an app update, reinstall, or another reason, the device generated a new token, token_dummy_value_890, which has not yet synced to MoEngage's backend.

    In this scenario, the older token, token_dummy_value_123, is inactive and will result in an Unregistered error.

PayloadTooLarge

This error occurs when the message payload size limit is exceeded. 

Ensure that the maximum payload size of the push notification is within 4096 bytes. You may need to reduce the number of K-V Pairs you have added.

For more information, refer to Generating a remote notification.

TooManyProviderTokenUpdates

This error occurs when the provider token is being updated too often. Avoid sending a large number of push notifications for a single push token.

Sender temporarily unavailable

Also known as:

  • InternalServerError
This error occurs when either the Sender server experiences an internal error while trying to process the request, or it is temporarily unavailable. An "InternalServerError" from the Apple Push Notification service (APNs) indicates a problem on Apple's end, not your code, and you should report it to Apple.

ServiceUnavailable

This error occurs when the service is unavailable. This is a temporary error from Apple, and no action is required from you.

 

info

Information

For further errors, contact MoEngage customer support.

 

Was this article helpful?
13 out of 64 found this helpful

How can we improve this article?