> ## Documentation Index
> Fetch the complete documentation index at: https://docs.clix.so/llms.txt
> Use this file to discover all available pages before exploring further.

# Deliverability

> Ensuring that push notifications reliably reach your users' devices is crucial for effective engagement.

## How Mobile Push Notifications Work

Mobile push notifications involve a sequence of interactions between your server, the push notification service (e.g., Firebase Cloud Messaging, FCM), and the user's device:

* Your application requests permission from the user to send push notifications.
* Upon granting permission, the user's device generates a unique push token.
* Clix SDK sends push token to Clix server and Clix server stores this token and uses it to send push notifications through the FCM service.

## Understanding FCM Push Tokens

* The FCM push token uniquely identifies a specific app installation on a user's device.
* Tokens can change over time due to reinstallation, app updates, or device resets, so it's important to regularly update these tokens on your server.

## Pre-Notification Checks

Before sending notifications, ensure:

* The user's device has a valid and updated push token.
* Your server properly integrates with FCM and authenticates requests correctly.
* You have obtained the required permissions from users.

## Possible Responses from Push Notification System

The push notification system can return several responses, including:

* **Success**: Notification was successfully sent.
* **Invalid Token**: The provided token is no longer valid and should be removed.
* **Not Registered**: The device is no longer registered for push notifications; token should be deleted.
* **Quota Exceeded**: Your request rate exceeded the allowed limit; retry later.
* **Internal Server Error**: Temporary server issue; retry the notification.

Handling these responses appropriately ensures maximum notification deliverability and effective user communication.
