> For the complete documentation index, see [llms.txt](https://documentation.pushly.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://documentation.pushly.com/integration/implementation-steps/android/firebase-app-setup.md).

# Firebase App Setup

## Firebase App

First, go to the [<mark style="color:blue;">Firebase console</mark>](https://console.firebase.google.com/), log in, and select your existing project or add a new project.

Within your project click the gear icon next to the `Project Overview` section in the sidebar and select `General`.

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

### Firebase Cloud Message API (V1) Setup

#### Find your Sender ID (Project ID)

On the `General` tab find the `Project number`. Use this value as the Firebase `Sender ID`.&#x20;

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

{% hint style="info" %}
Firebase uses the project number as its Sender ID.
{% endhint %}

#### Download the service account JSON

Open the `Service accounts` tab.

Under `Firebase Admin SDK`, click `Generate new private key`.

In the confirmation dialog, click `Generate key`. Your browser downloads the service account JSON file.

{% hint style="warning" %}
Keep this file private. It contains credentials for your Firebase project.
{% endhint %}

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

#### Enable Integration in Platform

Log into the platform, navigate to the `Settings` page, and locate the `Send Integrations` section.

From here, click the `Edit` button in the `Send Integration` header, enable the `Native` switch under the `Android` heading and:

1. Enter the Firebase `Sender ID` that you retrieved earlier.
2. Click the `Upload your Service Account JSON File` area and choose the file you downloaded.
3. Click the `Submit` button

![](/files/fHH6Em1JtIPE7rn1oCOB)

If everything was entered correctly you should now see a section underneath `Send Integrations` that shows an active Android Native integration.

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

Once this step is complete you can continue with implementation of the SDK into your app

### Cloud Messaging API (Legacy / Deprecated)

{% hint style="danger" %}
As of June 20, 2023, [Google has deprecated](https://firebase.google.com/support/faq#fcm-23-deprecation) the legacy FCM APIs and sending messages using them will no longer function starting June 2024.

As-such we recommend using the V1 instructions above to avoid interruptions in your future notification delivery.
{% endhint %}

If the `Cloud Messaging API (Legacy)` is marked as disabled you will need to enable it.

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

Follow these steps:

* Click on the 3 dots next to `Cloud Messaging API (Legacy)`
* Select `Manage API on Google Cloud Console`
* Click `Enable` on the tab that opened
* After the page reloads you can close this tab and return to the Firebase Console
* On the Firebase Console tab refresh the page to reflect the enabled API

Once the legacy API has been enabled the `Server Key` and `Sender ID` will be displayed. Copy down each of these values and proceed to the Pushly platform.

Log into the platform, navigate to the `Settings` page, and locate the `Send Integrations` section.

From here, click the `Edit` button in the `Send Integration` header, enable the `Native` switch under the `Android` heading and:

1. Enter the Firebase `Sender ID`
2. Choose `Legacy` from the pill selection
3. Enter the `Server Key`
4. Click the `Submit` button

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

If everything was entered correctly you should now see a section underneath `Send Integrations` that shows an active Android Native integration.

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

Once this step is complete you can continue with implementation of the SDK into your app


---

# 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://documentation.pushly.com/integration/implementation-steps/android/firebase-app-setup.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.
