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

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions