gorush icon indicating copy to clipboard operation
gorush copied to clipboard

Migrate from legacy FCM HTTP API to HTTP v1 API

Open ghost opened this issue 4 years ago • 18 comments

This project's dependency github.com/appleboy/go-fcm uses legacy FCM HTTP API. Are there any plans to migrate it to the v1 API as recommended by Firebase documentation? Or maybe integrate Firebase Admin SDK instead of using raw HTTP API.

Also, how can I pass TitleLocArgs and BodyLocArgs values as array of strings? In the dependency mentioned above these values are defined as plain strings whereas FCM documentation specifies them as array of strings . When I make a request with TitleLocArgs I get an error Error Message: unknown error type. However when I make same request connecting directly to FCM server everything works fine.

ghost avatar Nov 24 '20 10:11 ghost

+1

giovanni-orciuolo avatar Feb 11 '21 10:02 giovanni-orciuolo

+1 also for me

cdivita avatar Dec 05 '22 11:12 cdivita

Hello! Today Google announced that FCM Legacy HTTP API will be removed on June 20, 2024. I think now this ticket should get a bit more attention 🙂 https://firebase.google.com/docs/cloud-messaging/http-server-ref

IlyaGulya avatar Jun 21 '23 12:06 IlyaGulya

@IlyaGulya I will take it.

appleboy avatar Jun 30 '23 07:06 appleboy

@IlyaGulya I will take it.

Hello @appleboy. Do you have any idea of a time schedule for the release of a new version using FCM HTTP v1 API instead of the legacy one please ? Thanks a lot in advance !

pvincendeau avatar Jul 20 '23 07:07 pvincendeau

Hey there, I found your promising notification service yesterday. I would really love to use this, but this issue is keeping me from using it. Any chance to get an estimation, when Firebase Cloud Messaging API (V1) is implemented?

Thanks

c0olix avatar Nov 16 '23 08:11 c0olix

Bump

c0olix avatar Feb 08 '24 16:02 c0olix

@IlyaGulya I will take it.

@appleboy any estimation on by when this will get implemented?

sankethkini avatar Feb 22 '24 06:02 sankethkini

Hey, sorry about that. I'm planning to kick off the API transition this month, and hopefully, by next month, there'll be a version ready for everyone to test out.

appleboy avatar Mar 03 '24 15:03 appleboy

Dear @appleboy,

Thank you for your amazing effort.

I have checked out potential authorization methods on FCM HTTP v1 API Documentation and wondered if it is possible to maintain the multi-tenancy on the new approach.

Regarding the previous API, the "api_key" input helps to send notifications to multiple applications. Selecting different "JSON" files, including project-id values, to authorize could be a valuable capability for somehow maintaining multi-tenancy.

obuzyig avatar Mar 14 '24 14:03 obuzyig

@obuzyig

Thank you for reaching out and for your kind words regarding our efforts.

I'm delighted to inform you that we are fully committed to supporting multi-tenancy on the FCM HTTP v1 API platform. Your feedback regarding the potential authorization methods and the importance of maintaining multi-tenancy is greatly appreciated.

appleboy avatar Mar 14 '24 14:03 appleboy

https://github.com/appleboy/gorush/issues/550#issuecomment-1997538191

@obuzyig I am aware of only one feasible method for authorization i.e, using service-account.json files. Are you aware of any other methods as such?

sankethkini avatar Mar 26 '24 13:03 sankethkini

#550 (comment)

@obuzyig I am aware of only one feasible method for authorization i.e, using service-account.json files. Are you aware of any other methods as such?

@sankethkini I think FCM provides the Application Default Credentials option for applications that work on a Google-related platform or infrastructure. I do not have any other generic solutions for covering other applications.

obuzyig avatar Mar 26 '24 22:03 obuzyig

Hey, sorry about that. I'm planning to kick off the API transition this month, and hopefully, by next month, there'll be a version ready for everyone to test out.

Hey @appleboy - just wondering if it's possible to get an update on progress with this. Do you think the upgrade will be ready to be used in production before the legacy HTTP API is switched off in June?

Thanks in advance 👍

petenickless avatar Apr 09 '24 15:04 petenickless