DEV Community

Cover image for Migrating Amazon SNS from Legacy FCM API to HTTP V1 API
Ryan Lee
Ryan Lee

Posted on • Edited on

25 1 1 1 1

Migrating Amazon SNS from Legacy FCM API to HTTP V1 API

Introduction

On a work project, we use Amazon SNS to send push notifications to a mobile app registered with Google's Firebase Cloud Messaging (FCM). Although Google was deprecating the Legacy FCM API at that time, SNS did not yet support the new HTTP V1 API. Last weekend, I received an email from AWS that SNS now supports the new API (yay!).

Screenshot of the email

Procedures

This tutorial is written based on the steps I took to migrate to the V1 API. Please adjust accordingly.

  1. Getting the Service JSON

    1. Log in to the Firebase console.
    2. Select the project that receives API calls from SNS.
    3. At the top left corner, click on the gear icon, and select Project Settings. Project Settings
    4. At the top navigation under Project Settings, pick Service accounts. Service accounts
    5. Click Generate new private key. A popup shows up reminding you to secure the key. Click *Generate key.
    6. The key should be downloaded.
  2. Uploading the Service JSON

    1. Log in to the Amazon SNS console.
    2. Select Push notifications (under Mobile) from the left side menu. Pick the appropriate platform application. Push notifications
    3. Edit the platform application. At the authentication method, pick Token (recommended). It will ask you to upload a service.json file. Pick the key downloaded previously from the Firebase console. Token authentication method
    4. Save changes.
  3. Testing

    1. At the Platform application page, click on the link of an endpoint from the list below. At the top right-hand corner, click Publish message.
    2. At the Message body section, pick Custom payload and input the GCM message payload according to your platform (mine is Android). Message body and custom payload
    3. Check the app for notifications. Push notification received
    4. To verify that it is using the new API, go back to the Firebase console Service accounts tab (refer to step 1.4). Click Manage service account permissions at the top-right-hand corner.
    5. At the Service accounts management page, locate the account associated with Firebase Admin SDK. Click the dots menu under Action on the right, and pick View metrics. View metrics
    6. Verify there were actions when the message was being sent. Metrics

Congratulations!

The migration is now complete. You may have to update the message payload to the new message format. Start exploring the multiplatform messaging capability now!


Extended reading

👋 Kindness is contagious

Please leave your appreciation by commenting on this post!

It takes one minute and is worth it for your career.

Get started

Thank you!

Top comments (1)

Collapse
 
wcqdev profile image
wcqdev

Fixed the problem - thanks a lot

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Dive into an ocean of knowledge with this thought-provoking post, revered deeply within the supportive DEV Community. Developers of all levels are welcome to join and enhance our collective intelligence.

Saying a simple "thank you" can brighten someone's day. Share your gratitude in the comments below!

On DEV, sharing ideas eases our path and fortifies our community connections. Found this helpful? Sending a quick thanks to the author can be profoundly valued.

Okay