firebase-admin.messaging package

Firebase Cloud Messaging (FCM).

Functions

FunctionDescription
getMessaging(app)Gets the Messaging service for the default app or a given app.admin.messaging() can be called with no arguments to access the default app's Messaging service or as admin.messaging(app) to access the Messaging service associated with aspecific app.

Classes

ClassDescription
FirebaseMessagingErrorFirebase Messaging error code structure. This extends PrefixedFirebaseError.
MessagingMessaging service bound to the provided app.
MessagingClientErrorCodeMessaging client error codes and their default messages.

Interfaces

InterfaceDescription
AndroidConfigRepresents the Android-specific options that can be included in an Message.
AndroidFcmOptionsRepresents options for features provided by the FCM SDK for Android.
AndroidNotificationRepresents the Android-specific notification options that can be included in AndroidConfig.
ApnsConfigRepresents the APNs-specific options that can be included in an Message. Refer to Apple documentation for various headers and payload fields supported by APNs.
ApnsFcmOptionsRepresents options for features provided by the FCM SDK for iOS.
ApnsPayloadRepresents the payload of an APNs message. Mainly consists of the aps dictionary. But may also contain other arbitrary custom keys.
ApsRepresents the aps dictionary that is part of APNs messages.
ApsAlert
BaseMessage
BatchResponseInterface representing the server response from the Messaging.sendEach() and Messaging.sendEachForMulticast() methods.
ConditionMessage
CriticalSoundRepresents a critical sound configuration that can be included in the aps dictionary of an APNs payload.
DataMessagePayloadInterface representing an FCM legacy API data message payload. Data messages let developers send up to 4KB of custom key-value pairs. The keys and values must both be strings. Keys can be any custom string, except for the following reserved strings:
  • from
  • Anything starting with google.
See Build send requests for code samples and detailed documentation.
FcmOptionsRepresents platform-independent options for features provided by the FCM SDKs.
LightSettingsRepresents settings to control notification LED that can be included in AndroidNotification.
MessagingOptionsInterface representing the options that can be provided when sending a message via the FCM legacy APIs.See Build send requests for code samples and detailed documentation.
MessagingPayloadInterface representing a Firebase Cloud Messaging message payload. One or both of the data and notification keys are required.See Build send requests for code samples and detailed documentation.
MessagingTopicManagementResponseInterface representing the server response from the Messaging.subscribeToTopic() and Messaging.unsubscribeFromTopic() methods.See Manage topics from the server for code samples and detailed documentation.
MulticastMessagePayload for the Messaging.sendEachForMulticast() method. The payload contains all the fields in the BaseMessage type, and a list of tokens.
NotificationA notification that can be included in Message.
NotificationMessagePayloadInterface representing an FCM legacy API notification message payload. Notification messages let developers send up to 4KB of predefined key-value pairs. Accepted keys are outlined below.See Build send requests for code samples and detailed documentation.
SendResponseInterface representing the status of an individual message that was sent as part of a batch request.
TokenMessage
TopicMessage
WebpushConfigRepresents the WebPush protocol options that can be included in an Message.
WebpushFcmOptionsRepresents options for features provided by the FCM SDK for Web (which are not part of the Webpush standard).
WebpushNotificationRepresents the WebPush-specific notification options that can be included in WebpushConfig. This supports most of the standard options as defined in the Web Notification specification.

Type Aliases

Type AliasDescription
MessagePayload for the Messaging.send() operation. The payload contains all the fields in the BaseMessage type, and exactly one of token, topic or condition.

getMessaging(app)

Gets the Messaging service for the default app or a given app.

admin.messaging() can be called with no arguments to access the default app's Messaging service or as admin.messaging(app) to access the Messaging service associated with aspecific app.

Signature:

exportdeclarefunctiongetMessaging(app?:App):Messaging;

Parameters

ParameterTypeDescription
appAppOptional app whose Messaging service to return. If not provided, the default Messaging service will be returned.

Returns:

Messaging

The default Messaging service if no app is provided or the Messaging service associated with the provided app.

Example 1

// Get the Messaging service for the default appconstdefaultMessaging=getMessaging();

Example 2

// Get the Messaging service for a given appconstotherMessaging=getMessaging(otherApp);

Message

Payload for the Messaging.send() operation. The payload contains all the fields in the BaseMessage type, and exactly one of token, topic or condition.

Signature:

exporttypeMessage=TokenMessage|TopicMessage|ConditionMessage;