Docs / Strand / connectors/gcp-firebase
Google Firebase Cloud Messaging
Direction: Write Only | Type: gcp.firebase
Firebase Cloud Messaging (FCM) connector for sending push notifications. This is a forward-only connector.
Required Permissions
The service account must have the following IAM permissions (or predefined role):
| Operation | Required Permissions | Predefined Role |
|---|---|---|
send |
cloudmessaging.messages.create |
Firebase Cloud Messaging Admin |
Tip: Use a dedicated service account with only the Firebase Cloud Messaging Admin role. You can generate the credentials JSON from the Firebase Console under Project settings > Service accounts.
Operations
| Operation | Direction | Description |
|---|---|---|
send |
Write | Send a push notification via FCM |
Connector Configuration
| Field | Required | Default | Description |
|---|---|---|---|
| Authentication Type | No | api_key |
api_key for explicit credentials, role to use Application Default Credentials (ADC) |
| Project ID | Yes | - | Firebase project ID |
| Credentials JSON | Conditional | - | Firebase service account JSON credentials (encrypted). Required when Authentication Type is api_key |
When using role authentication, the connector uses Application Default Credentials (ADC) from the host environment. No explicit service account JSON is needed.
Node Configuration
| Field | Required | Default | Description |
|---|---|---|---|
| Token | Yes | - | FCM device token for the target device |
| Title | No | Notification |
Notification title |
The notification body is always the incoming event payload serialized to JSON; there is no separate Body field. The full payload is also attached as the FCM data map, with each value stringified ({ "key": "value", ... }).
Output
{
"success": true,
"status": "sent",
"data": {
"message_id": "projects/my-project/messages/abc123"
},
"service": "gcp.firebase",
"operation": "send"
}
Example
Connector Setup:
{
"project_id": "my-firebase-project",
"credentials_json": "{...service account JSON from Firebase Console...}"
}
Connector Setup (role-based):
{
"auth_type": "role",
"project_id": "my-firebase-project"
}
Node Configuration:
- Token:
{{ payload.device_token }} - Title:
New Alert
The notification body is the event payload as JSON, and the payload fields are sent as FCM data.
Tendrl