Firebase Cloud Messaging (FCM).
Functions
| Function | Description |
|---|---|
| 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
| Class | Description |
|---|---|
| FirebaseMessagingError | Firebase Messaging error code structure. This extends FirebaseError. |
| Messaging | Messaging service bound to the provided app. |
Interfaces
| Interface | Description |
|---|---|
| AndroidConfig | Represents the Android-specific options that can be included in an Message. |
| AndroidFcmOptions | Represents options for features provided by the FCM SDK for Android. |
| AndroidNotification | Represents the Android-specific notification options that can be included in AndroidConfig. |
| ApnsConfig | Represents the APNs-specific options that can be included in an Message. Refer to Apple documentation for various headers and payload fields supported by APNs. |
| ApnsFcmOptions | Represents options for features provided by the FCM SDK for iOS. |
| ApnsPayload | Represents the payload of an APNs message. Mainly consists of the aps dictionary. But may also contain other arbitrary custom keys. |
| Aps | Represents the aps dictionary that is part of APNs messages. |
| ApsAlert | |
| BaseMessage | |
| BatchResponse | Interface representing the server response from the Messaging.sendEach() and Messaging.sendEachForMulticast() methods. |
| ConditionMessage | |
| CriticalSound | Represents a critical sound configuration that can be included in the aps dictionary of an APNs payload. |
| FcmOptions | Represents platform-independent options for features provided by the FCM SDKs. |
| LightSettings | Represents settings to control notification LED that can be included in AndroidNotification. |
| MessagingTopicManagementResponse | Interface representing the server response from the Messaging.subscribeToTopic() and Messaging.unsubscribeFromTopic() methods.See Manage topics from the server for code samples and detailed documentation. |
| MulticastMessage | Payload for the Messaging.sendEachForMulticast() method. The payload contains all the fields in the BaseMessage type, and a list of tokens. |
| Notification | A notification that can be included in Message. |
| SendResponse | Interface representing the status of an individual message that was sent as part of a batch request. |
| TokenMessage | |
| TopicMessage | |
| WebpushConfig | Represents the WebPush protocol options that can be included in an Message. |
| WebpushFcmOptions | Represents options for features provided by the FCM SDK for Web (which are not part of the Webpush standard). |
| WebpushNotification | Represents 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. |
Variables
| Variable | Description |
|---|---|
| MessagingErrorCode | The constant mapping for valid Messaging client error codes. |
Type Aliases
| Type Alias | Description |
|---|---|
| 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. |
| MessagingErrorCode | The type definition for valid Messaging client error codes. |
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:
export declare function getMessaging(app?: App): Messaging;
Parameters
| Parameter | Type | Description |
|---|---|---|
| app | App | Optional app whose Messaging service to return. If not provided, the default Messaging service will be returned. |
Returns:
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 app
const defaultMessaging = getMessaging();
Example 2
// Get the Messaging service for a given app
const otherMessaging = getMessaging(otherApp);
MessagingErrorCode
The constant mapping for valid Messaging client error codes.
Signature:
MessagingErrorCode: {
readonly INVALID_ARGUMENT: "invalid-argument";
readonly INVALID_RECIPIENT: "invalid-recipient";
readonly INVALID_PAYLOAD: "invalid-payload";
readonly INVALID_DATA_PAYLOAD_KEY: "invalid-data-payload-key";
readonly PAYLOAD_SIZE_LIMIT_EXCEEDED: "payload-size-limit-exceeded";
readonly INVALID_OPTIONS: "invalid-options";
readonly INVALID_REGISTRATION_TOKEN: "invalid-registration-token";
readonly REGISTRATION_TOKEN_NOT_REGISTERED: "registration-token-not-registered";
readonly MISMATCHED_CREDENTIAL: "mismatched-credential";
readonly INVALID_PACKAGE_NAME: "invalid-package-name";
readonly DEVICE_MESSAGE_RATE_EXCEEDED: "device-message-rate-exceeded";
readonly TOPICS_MESSAGE_RATE_EXCEEDED: "topics-message-rate-exceeded";
readonly TOPICS_SUBSCRIPTION_RATE_EXCEEDED: "topics-subscription-rate-exceeded";
readonly MESSAGE_RATE_EXCEEDED: "message-rate-exceeded";
readonly THIRD_PARTY_AUTH_ERROR: "third-party-auth-error";
readonly TOO_MANY_TOPICS: "too-many-topics";
readonly AUTHENTICATION_ERROR: "authentication-error";
readonly SERVER_UNAVAILABLE: "server-unavailable";
readonly INTERNAL_ERROR: "internal-error";
readonly UNKNOWN_ERROR: "unknown-error";
}
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:
export type Message = TokenMessage | TopicMessage | ConditionMessage;
MessagingErrorCode
The type definition for valid Messaging client error codes.
Signature:
export type MessagingErrorCode = typeof MessagingErrorCode[keyof typeof MessagingErrorCode];