> For the complete documentation index, see [llms.txt](https://help.smartico.ai/welcome/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.smartico.ai/welcome/technical-guides/front-end-integration/push-configurations.md).

# Push configurations

Follow the instruction to get details for the Push notifications from Firebase console

1. Go to <https://firebase.google.com/>
2. Log in and navigate to the console
3. Create a new project<br>

   <figure><img src="/files/Z8Lg3NUG9uJqq3it1wWb" alt="" width="563"><figcaption></figcaption></figure>

4\. In the new project navigate to “Project settings”

<figure><img src="/files/i54lvKrQfmhrPQ1wcBJZ" alt=""><figcaption></figcaption></figure>

5\. In the General tab, create a new Web App and copy the content of the "Config" section

<figure><img src="/files/MlR2CdwNFvNgXi9Gt1Pr" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/AfbxkHj7NkfQzNHNmvWN" alt="" width="462"><figcaption></figcaption></figure>

6\. Navigate to “Service accounts” and generate a new private key

<figure><img src="/files/ZelE5evzs4BgyqSoGEY5" alt="" width="563"><figcaption></figcaption></figure>

7\. Download the file with the private key

8\. Provide the Config file content from step 5 and the private key from step 7 to Smartico support personnel. You can also place them yourself in the Label settings in Smartico BackOffice; there are 2 settings to place (in JSON format):

a) **Firebase cloud messaging configuration for push notifications -** configuration from step 5

b) **Firebase server configurations for push notifications** - confirmation from step 7.

<div data-with-frame="true"><figure><img src="/files/fmhFCigiGP0v9L4ZwWMC" alt=""><figcaption></figcaption></figure></div>

The "server configuration" has the following form:

```json
{
    "type": "service_account",
    "project_id": "btg-demo",
    "private_key_id": "07ec....40",
    "private_key": "-----BEGIN PRIVATE KEY-----\n....\n-----END PRIVATE KEY-----\n",
    "client_email": "firebase-adminsdk-....@...com",
    "client_id": "105962....093962",
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://oauth2.googleapis.com/token",
    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
    "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/firebase-admins...."
}
```

There are additional keys that you can place in the configuration to control parameters of the push messages; an example of the structure:

```json
{
  "apns_default_sound": true,
  "ttl": 86400
}
```

| `apns_default_sound` | `true`  | Plays the system default alert sound when the notification is received on iOS. When set to `false`, the notification appears without sound.                                                                                      |
| -------------------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ttl`                | `86400` | When a web push notification is sent, it remains in the user's notification tray for a certain period. If a TTL of 86400 seconds is configured (one day), the notification would automatically expire and disappear after a day. |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.smartico.ai/welcome/technical-guides/front-end-integration/push-configurations.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
