Skip to content

[FR] Add support for cross-project server message sending #3020

@ggprod

Description

@ggprod

Is your feature request related to a problem? Please describe.
We were using the firebase admin SDK and a special service account with key resident in the same project as the apps (the servers are in different projects).

We wanted to remove usage of this separate service account and use the service account bound to the workload instead which is resident in a different project

This is possible from the API perspective as long as the SA has Firebase Cloud Messaging API Admin role in the project that hosts the firebase apps (as mentioned here: https://firebase.google.com/docs/cloud-messaging/send/v1-api#authorize-cross-project)

This was not possible with the firebase admin SDK and so we had to do it directly by calling the FCM API via an http client (Axios in Nodejs) after fetching the Oauth2 token for the service account from Google (as described in the link above)

It would be better if this was supported natively in the firebase admin SDK (you could specify sending to a different project than the one in the SA credentials)

Describe the solution you'd like
Firebase admin SDK supports working with an SA from a different project than the firebase apps (provided the SA has the necessary Firebase Cloud Messaging API Admin role in the project that hosts the firebase app)

Describe alternatives you've considered
The less appealing alternative of fetching the SA Oauth2 token and calling the API directly

Additional context
Add any other context, code samples or screenshots about the feature request here.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions