Skip to content

Add Analytics Label Support for FCM Messages in Parse Server Push Adapter #377

Description

@josefeliuf

New Feature / Enhancement Checklist

Current Limitation

Currently, the Parse Server push adapter does not support adding analytics labels to FCM messages. Without an analytics label, Firebase’s delivery statistics for data messages are limited and cannot be fully filtered or analyzed in the Firebase console.

Feature / Enhancement Description

This feature request proposes adding support for analytics labels in the FCM payload generated by the push adapter. Specifically, the adapter should:

  • Allow developers to include an analytics_label field in their push notification request data.
  • Validate the provided label against the regex pattern ^[a-zA-Z0-9-_.~%]{1,50}$ (ensuring it contains only letters, numbers, and the symbols -_.~% with a maximum length of 50 characters).
  • If valid, inject the label into the outgoing payload under fcm_options.analytics_label.

This change would help align the adapter’s behavior with Firebase’s HTTP v1 API requirements and enable developers to filter and view detailed delivery statistics for their push notifications in the Firebase console.

Example Use Case

  1. A developer wants to monitor push delivery for a new feature update.
  2. They include analytics_label: "feature_update_v1" in the push notification payload.
  3. The push adapter processes the request, validates the label, and adds it under the fcm_options.analytics_label field.
  4. Firebase records and displays delivery statistics for messages with this label, enabling the developer to filter reports and analyze the campaign’s performance.

Alternatives / Workarounds

I haven't found an alternative or workarounds

3rd Party References

Activity

  1. parse-github-assistant commented on Feb 27, 2025

    @parse-github-assistant

    Thanks for opening this issue!

    • 🎉 We are excited about your ideas for improvement!
  2. josefeliuf commented on Mar 5, 2025

    @josefeliuf
    Author

    @mtrezza I can take this issue, I was waiting for a reply

  3. mtrezza commented on Mar 5, 2025

    @mtrezza
    Member

    If you don't see any uncertainties, please just go ahead.

  4. jacog2 commented on May 11, 2026

    @jacog2

    Submitted PR #566 for FCM analytics label support: #566

  5. businesscurry123 commented on May 24, 2026

    @businesscurry123

    Submitted PR #569 for analytics label support: #569

    It validates analytics_label, forwards valid labels to Firebase Admin SDK fcmOptions.analyticsLabel, keeps the label out of custom payload data, and adds Android/APNS regression coverage.

    Verification:

    • npx eslint src/FCM.js spec/FCM.spec.js
    • $env:TESTING='1'; npx c8 ./node_modules/.bin/jasmine (167 specs passing)
  6. removed
    bounty:$10Bounty applies for fixing this issue (Parse Bounty Program)
    on May 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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