Yallapush Docuuuumentation
Yallapush is a powerful push notification platform that allows organizations to manage and send real-time push notifications to their users via Firebase Cloud Messaging (FCM). It supports individual and group-based targeting with easy API integration, Firebase project linkage, and admin controls.
Introduction
Yallapush is designed for product teams, marketers, and developers to send push notifications from web and mobile platforms. It integrates seamlessly with Firebase Cloud Messaging (FCM) and provides a centralized interface for managing devices, grouping users, and sending targeted notifications.
Real-time Delivery
Send notifications instantly to your users with high delivery rates.
User Segmentation
Target specific user groups based on custom criteria.
Cross-platform
Works with iOS, Android, and web applications.
Prerequisites
Before getting started with Yallapush, ensure the following Firebase setup is complete:
Firebase Project Setup
- Visit Firebase Console and create a new project.
- Enable Firebase Cloud Messaging for your project.
Required Credentials
- Service Account JSON
Used by Yallapush backend to authenticate with Firebase Cloud Messaging (FCM). - google-services.json
Required for native Android applications for automatic device registration.
Important Note
Make sure your Firebase project has billing enabled to ensure uninterrupted service.
How Yallapush Works
Client integrates Firebase SDK
Device generates FCM Token
Yallapush registers device
Send notifications via dashboard or API
- Clients (web or mobile) integrate Firebase SDK.
- On app load or login, the device generates a Firebase Token (FCM Token).
- On the Yallapush dashboard:
- Admin creates a project and uploads the google-services.json file.
- Yallapush reads the Firebase config and automatically registers the device.
- Yallapush stores:
- FCM token
- Device info (platform, model, version)
- User email and name
- Project association
- Admins can now send individual or group notifications, or launch scheduled campaigns.
Firebase Integration
Each project must link its Firebase configuration to Yallapush:
Access Firebase Console
Go to your Firebase project settings and download the configuration files.
Upload Configuration
In the Yallapush Dashboard, go to Settings → Firebase Setup and upload:
- google-services.json
- Service Account JSON
Complete Integration
Yallapush will automatically pull platform info and register devices. Your project will be ready to send and receive notifications.
// Example Firebase configuration
{
"apiKey": "YOUR_API_KEY",
"authDomain": "your-app.firebaseapp.com",
"projectId": "your-app",
"storageBucket": "your-app.appspot.com",
"messagingSenderId": "1234567890",
"appId": "1:1234567890:web:abcdef1234567890"
}
React Native Integration Guide
Before You Start
- Complete the Firebase Integration steps
- Ensure you have React Native development environment set up
- For iOS, you'll need a Mac with Xcode
Installation
# Install React Native Firebase packages
npm install @react-native-firebase/app @react-native-firebase/messaging
# For iOS, install pods
cd ios && pod install
Android Configuration
- Place your
google-services.json
inandroid/app/
- Update
android/build.gradle
:gradlebuildscript { dependencies { classpath 'com.google.gms:google-services:4.3.15' } }
- Update
android/app/build.gradle
:gradleapply plugin: 'com.google.gms.google-services'
iOS Configuration
- Place
GoogleService-Info.plist
in your Xcode project - Enable Push Notifications in Xcode under Signing & Capabilities
- Add Background Modes capability with Remote Notifications
Implementation
import React, { useEffect } from 'react';
import { Platform } from 'react-native';
import messaging from '@react-native-firebase/messaging';
async function registerDeviceWithYallapush(token) {
await fetch('https://api.yallapush.com/register-device', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
fcmToken: token,
deviceInfo: {
platform: Platform.OS,
version: Platform.Version
}
})
});
}
function App() {
useEffect(() => {
const setupPushNotifications = async () => {
await messaging().requestPermission();
const token = await messaging().getToken();
await registerDeviceWithYallapush(token);
messaging().onTokenRefresh(token => {
registerDeviceWithYallapush(token);
});
};
setupPushNotifications();
messaging().onMessage(async remoteMessage => {
console.log('Notification received:', remoteMessage);
});
}, []);
return (
// Your app components
);
}
Testing
- Run on a physical device (not simulator)
- Check console logs for the FCM token
- Verify the token appears in your Yallapush dashboard
- Send a test notification from Yallapush
Device Registration
Yallapush supports automatic device registration during Firebase setup.
Automatic Registration
When you upload the google-services.json file via the Dashboard:
- Yallapush reads the configuration
- Automatically registers the device and platform info (e.g., Android, iOS)
- Associates it with your project using your API Key
Manual Registration API
For cases where automatic registration isn't possible, use our registration API:
POST /api/register-device
Authorization: Bearer <Company_API_Key>
Content-Type: application/json
{
"email": "john.doe@example.com",
"name": "John Doe",
"fcmToken": "abc123xyz",
"deviceInfo": {
"platform": "android",
"version": "14",
"model": "Samsung S21"
}
}
API Reference
Yallapush provides a comprehensive API for managing push notifications programmatically.
Endpoint | Method | Description |
---|---|---|
/api/register-device | POST | Register/update a user device with FCM token |
/api/send-notification | POST | Send a push notification to a user/group |
/api/create-group | POST | Create a user group |
/api/add-to-group | POST | Add a user to a group |
/api/remove-from-group | POST | Remove a user from a group |
/api/get-device-tokens | GET | List all registered devices for company |
API Documentation
For complete API documentation including request/response schemas and examples, visit our API Documentation portal.