Automatically synchronize your Firebase users with PushFire to enable powerful push notification workflows, audience segmentation, and personalized messaging.
The PushFire Subscribers Sync extension monitors your Firestore collection for document updates and automatically synchronizes subscriber data with PushFire.
- π Real-time synchronization: Automatically sync user data when Firestore documents are updated
- π― Flexible field mapping: Map any Firestore field structure to PushFire's subscriber format
- π§ Easy configuration: Use the visual Schema Builder to generate field mapping configurations
- π Support for complex data: Handle nested objects, arrays, and custom metadata
- π Zero maintenance: Runs automatically in the background
- Firebase Project with Firestore enabled
- Firebase Blaze plan (pay-as-you-go billing)
- PushFire Account (Sign up here)
- PushFire Project created in your dashboard
- Navigate to Extensions in your Firebase Console
- Search for "PushFire Subscribers Sync"
- Click Install and follow the configuration prompts
firebase ext:install FlywheelStudio/pushfire-subscribers-sync --project=YOUR_PROJECT_IDDuring installation, you'll need to provide:
- PushFire Project ID: Available in your PushFire Dashboard under Project Overview
- PushFire Project Token: Generate in your PushFire Dashboard under API Settings
- Firestore Collection Name: The name of your Firestore collection (e.g.,
users,subscribers) - Field Mapping Configuration: JSON configuration mapping Firestore fields to PushFire format
Use the Schema Builder to generate your field mapping configuration.
The Schema Builder helps you map:
- External ID: Unique identifier field
- Name: Display name field
- Email: Email address field
- Phone: Phone number field
- Metadata: Custom fields using nested paths with dot notation (e.g.,
profile.country)
For a Firestore document:
{
"uid": "user123",
"displayName": "John Doe",
"email": "john@example.com",
"phoneNumber": "+1234567890",
"profile": {
"country": "USA"
}
}Use the Schema Builder to generate the mapping configuration automatically.
Once installed, the extension works automatically:
- Update a document in your configured Firestore collection
- The extension automatically syncs the data to PushFire
Important: The extension only triggers on document updates, not creates. For new users, create the document first, then update it.
firebase functions:log --only ext-pushfire-subscribers-sync-updateSubscriberOr view logs in the Firebase Console under Functions > Logs.
- Verify the collection name matches exactly
- Ensure you're updating documents (not just creating)
- Check Firebase Functions logs for errors
- Verify your Project Token is correct
- Ensure the Project ID matches your PushFire project
- Regenerate the token if needed
- Validate your JSON configuration syntax
- Check field names match your Firestore structure
- Use the Schema Builder to regenerate configuration
- π Documentation
- π οΈ Schema Builder
- π¬ Contact Support
- π GitHub Issues
Apache License 2.0 - See LICENSE file for details.
PushFire - A product of Flywheel Studio
- Website: pushfire.app
- GitHub: @FlywheelStudio
Maintainer: Ender Puentes (@enderpuentes)
Ready to get started? Install the extension and visit the Schema Builder to configure your field mappings! π