docs: docs update (#911)
Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly:
- [ ] Make sure to open an issue as a [bug/issue](https://github.com/googleapis/google-api-python-client/issues/new/choose) before writing your code! That way we can discuss the change, evaluate designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
Fixes #<issue_number_goes_here> 🦕
diff --git a/docs/dyn/fcm_v1.projects.messages.html b/docs/dyn/fcm_v1.projects.messages.html
index d6a1692..256ec89 100644
--- a/docs/dyn/fcm_v1.projects.messages.html
+++ b/docs/dyn/fcm_v1.projects.messages.html
@@ -92,16 +92,13 @@
The object takes the form of:
{ # Request to send a message to specified target.
- "message": { # Message to send by Firebase Cloud Messaging Service. # Required. Message to send.
- "name": "A String", # Output Only. The identifier of the message sent, in the format of
- # `projects/*/messages/{message_id}`.
- "fcmOptions": { # Platform independent options for features provided by the FCM SDKs. # Input only. Template for FCM SDK feature options to use across all
- # platforms.
- "analyticsLabel": "A String", # Label associated with the message's analytics data.
- },
- "notification": { # Basic notification template to use across all platforms. # Input only. Basic notification template to use across all platforms.
- "body": "A String", # The notification's body text.
- "image": "A String", # Contains the URL of an image that is going to be downloaded on the device
+ "message": { # Message to send by Firebase Cloud Messaging Service. # Required. Message to send.
+ "topic": "A String", # Topic name to send a message to, e.g. "weather".
+ # Note: "/topics/" prefix should not be provided.
+ "notification": { # Basic notification template to use across all platforms. # Input only. Basic notification template to use across all platforms.
+ "body": "A String", # The notification's body text.
+ "title": "A String", # The notification's title.
+ "image": "A String", # Contains the URL of an image that is going to be downloaded on the device
# and displayed in a notification.
# JPEG, PNG, BMP have full support across platforms. Animated GIF and video
# only work on iOS. WebP and HEIF have varying levels of support across
@@ -109,119 +106,154 @@
# Android has 1MB image size limit.
# Quota usage and implications/costs for hosting image on Firebase Storage:
# https://firebase.google.com/pricing
- "title": "A String", # The notification's title.
},
- "token": "A String", # Registration token to send a message to.
- "webpush": { # [Webpush protocol](https://tools.ietf.org/html/rfc8030) options. # Input only. [Webpush protocol](https://tools.ietf.org/html/rfc8030)
- # options.
- "notification": { # Web Notification options as a JSON object. Supports Notification instance
- # properties as defined in [Web Notification
- # API](https://developer.mozilla.org/en-US/docs/Web/API/Notification). If
- # present, "title" and "body" fields override
- # [google.firebase.fcm.v1.Notification.title] and
- # [google.firebase.fcm.v1.Notification.body].
- "a_key": "", # Properties of the object.
- },
- "data": { # Arbitrary key/value payload. If present, it will override
+ "fcmOptions": { # Platform independent options for features provided by the FCM SDKs. # Input only. Template for FCM SDK feature options to use across all
+ # platforms.
+ "analyticsLabel": "A String", # Label associated with the message's analytics data.
+ },
+ "data": { # Input only. Arbitrary key/value payload. The key should not be a reserved
+ # word ("from", "message_type", or any word starting with "google" or "gcm").
+ "a_key": "A String",
+ },
+ "token": "A String", # Registration token to send a message to.
+ "android": { # Android specific options for messages sent through # Input only. Android specific options for messages sent through
+ # [FCM connection server](https://goo.gl/4GLdUl).
+ # [FCM connection server](https://goo.gl/4GLdUl).
+ "data": { # Arbitrary key/value payload. If present, it will override
# google.firebase.fcm.v1.Message.data.
- "a_key": "A String",
+ "a_key": "A String",
},
- "fcmOptions": { # Options for features provided by the FCM SDK for Web. # Options for features provided by the FCM SDK for Web.
- "analyticsLabel": "A String", # Label associated with the message's analytics data.
- "link": "A String", # The link to open when the user clicks on the notification.
- # For all URL values, HTTPS is required.
+ "priority": "A String", # Message priority. Can take "normal" and "high" values.
+ # For more information, see [Setting the priority of a
+ # message](https://goo.gl/GjONJv).
+ "collapseKey": "A String", # An identifier of a group of messages that can be collapsed, so that only
+ # the last message gets sent when delivery can be resumed. A maximum of 4
+ # different collapse keys is allowed at any given time.
+ "directBootOk": True or False, # If set to true, messages will be allowed to be delivered to the app while
+ # the device is in direct boot mode. See [Support Direct Boot
+ # mode](https://developer.android.com/training/articles/direct-boot).
+ "fcmOptions": { # Options for features provided by the FCM SDK for Android. # Options for features provided by the FCM SDK for Android.
+ "analyticsLabel": "A String", # Label associated with the message's analytics data.
},
- "headers": { # HTTP headers defined in webpush protocol. Refer to
- # [Webpush protocol](https://tools.ietf.org/html/rfc8030#section-5) for
- # supported headers, e.g. "TTL": "15".
- "a_key": "A String",
- },
- },
- "topic": "A String", # Topic name to send a message to, e.g. "weather".
- # Note: "/topics/" prefix should not be provided.
- "apns": { # [Apple Push Notification Service](https://goo.gl/MXRTPa) specific options. # Input only. [Apple Push Notification Service](https://goo.gl/MXRTPa)
- # specific options.
- "headers": { # HTTP request headers defined in Apple Push Notification Service. Refer to
- # [APNs request
- # headers](https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/sending_notification_requests_to_apns)
- # for supported headers, e.g. "apns-priority": "10".
- "a_key": "A String",
- },
- "payload": { # APNs payload as a JSON object, including both `aps` dictionary and custom
- # payload. See [Payload Key
- # Reference](https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/generating_a_remote_notification).
- # If present, it overrides google.firebase.fcm.v1.Notification.title
- # and google.firebase.fcm.v1.Notification.body.
- "a_key": "", # Properties of the object.
- },
- "fcmOptions": { # Options for features provided by the FCM SDK for iOS. # Options for features provided by the FCM SDK for iOS.
- "image": "A String", # Contains the URL of an image that is going to be displayed in a
+ "notification": { # Notification to send to android devices. # Notification to send to android devices.
+ "tag": "A String", # Identifier used to replace existing notifications in the notification
+ # drawer.
+ # If not specified, each request creates a new notification.
+ # If specified and a notification with the same tag is already being shown,
+ # the new notification replaces the existing one in the notification drawer.
+ "titleLocKey": "A String", # The key to the title string in the app's string resources to use to
+ # localize the title text to the user's current localization.
+ # See [String Resources](https://goo.gl/NdFZGI) for more information.
+ "image": "A String", # Contains the URL of an image that is going to be displayed in a
# notification. If present, it will override
# google.firebase.fcm.v1.Notification.image.
- "analyticsLabel": "A String", # Label associated with the message's analytics data.
- },
- },
- "android": { # Android specific options for messages sent through # Input only. Android specific options for messages sent through
- # [FCM connection server](https://goo.gl/4GLdUl).
- # [FCM connection server](https://goo.gl/4GLdUl).
- "fcmOptions": { # Options for features provided by the FCM SDK for Android. # Options for features provided by the FCM SDK for Android.
- "analyticsLabel": "A String", # Label associated with the message's analytics data.
- },
- "notification": { # Notification to send to android devices. # Notification to send to android devices.
- "defaultVibrateTimings": True or False, # If set to true, use the Android framework's default vibrate pattern for the
+ "visibility": "A String", # Set the
+ # [Notification.visibility](https://developer.android.com/reference/android/app/Notification.html#visibility)
+ # of the notification.
+ "ticker": "A String", # Sets the "ticker" text, which is sent to accessibility services.
+ # Prior to API level 21 (`Lollipop`), sets the text that is displayed in the
+ # status bar when the notification first arrives.
+ "title": "A String", # The notification's title. If present, it will override
+ # google.firebase.fcm.v1.Notification.title.
+ "defaultSound": True or False, # If set to true, use the Android framework's default sound for the
+ # notification. Default values are specified in
+ # [config.xml](https://android.googlesource.com/platform/frameworks/base/+/master/core/res/res/values/config.xml).
+ "sticky": True or False, # When set to false or unset, the notification is automatically
+ # dismissed when the user clicks it in the panel. When set to true, the
+ # notification persists even when the user clicks it.
+ "titleLocArgs": [ # Variable string values to be used in place of the format specifiers in
+ # title_loc_key to use to localize the title text to the user's current
+ # localization.
+ # See [Formatting and Styling](https://goo.gl/MalYE3) for more information.
+ "A String",
+ ],
+ "channelId": "A String", # The [notification's channel
+ # id](https://developer.android.com/guide/topics/ui/notifiers/notifications#ManageChannels)
+ # (new in Android O). The app must create a channel with this channel ID
+ # before any notification with this channel ID is received. If you don't send
+ # this channel ID in the request, or if the channel ID provided has not yet
+ # been created by the app, FCM uses the channel ID specified in the app
+ # manifest.
+ "defaultVibrateTimings": True or False, # If set to true, use the Android framework's default vibrate pattern for the
# notification. Default values are specified in
# [config.xml](https://android.googlesource.com/platform/frameworks/base/+/master/core/res/res/values/config.xml).
# If `default_vibrate_timings` is set to true and `vibrate_timings` is also
# set, the default value is used instead of the user-specified
# `vibrate_timings`.
- "bodyLocKey": "A String", # The key to the body string in the app's string resources to use to localize
- # the body text to the user's current localization.
- # See [String Resources](https://goo.gl/NdFZGI) for more information.
- "color": "A String", # The notification's icon color, expressed in #rrggbb format.
- "image": "A String", # Contains the URL of an image that is going to be displayed in a
- # notification. If present, it will override
- # google.firebase.fcm.v1.Notification.image.
- "channelId": "A String", # The [notification's channel
- # id](https://developer.android.com/guide/topics/ui/notifiers/notifications#ManageChannels)
- # (new in Android O). The app must create a channel with this channel ID
- # before any notification with this channel ID is received. If you don't send
- # this channel ID in the request, or if the channel ID provided has not yet
- # been created by the app, FCM uses the channel ID specified in the app
- # manifest.
- "titleLocKey": "A String", # The key to the title string in the app's string resources to use to
- # localize the title text to the user's current localization.
- # See [String Resources](https://goo.gl/NdFZGI) for more information.
- "sticky": True or False, # When set to false or unset, the notification is automatically
- # dismissed when the user clicks it in the panel. When set to true, the
- # notification persists even when the user clicks it.
- "tag": "A String", # Identifier used to replace existing notifications in the notification
- # drawer.
- # If not specified, each request creates a new notification.
- # If specified and a notification with the same tag is already being shown,
- # the new notification replaces the existing one in the notification drawer.
- "defaultSound": True or False, # If set to true, use the Android framework's default sound for the
- # notification. Default values are specified in
- # [config.xml](https://android.googlesource.com/platform/frameworks/base/+/master/core/res/res/values/config.xml).
- "defaultLightSettings": True or False, # If set to true, use the Android framework's default LED light settings for
+ "clickAction": "A String", # The action associated with a user click on the notification.
+ # If specified, an activity with a matching intent filter is launched when
+ # a user clicks on the notification.
+ "eventTime": "A String", # Set the time that the event in the notification occurred. Notifications in
+ # the panel are sorted by this time. A point in time is represented using
+ # [protobuf.Timestamp](https://developers.google.com/protocol-buffers/docs/reference/java/com/google/protobuf/Timestamp).
+ "defaultLightSettings": True or False, # If set to true, use the Android framework's default LED light settings for
# the notification. Default values are specified in
# [config.xml](https://android.googlesource.com/platform/frameworks/base/+/master/core/res/res/values/config.xml).
# If `default_light_settings` is set to true and `light_settings` is also
# set, the user-specified `light_settings` is used instead of the
# default value.
- "eventTime": "A String", # Set the time that the event in the notification occurred. Notifications in
- # the panel are sorted by this time. A point in time is represented using
- # [protobuf.Timestamp](https://developers.google.com/protocol-buffers/docs/reference/java/com/google/protobuf/Timestamp).
- "lightSettings": { # Settings to control notification LED. # Settings to control the notification's LED blinking rate and color if LED
+ "localOnly": True or False, # Set whether or not this notification is relevant only to the current
+ # device. Some notifications can be bridged to other devices for remote
+ # display, such as a Wear OS watch. This hint can be set to recommend this
+ # notification not be bridged. See [Wear OS
+ # guides](https://developer.android.com/training/wearables/notifications/bridger#existing-method-of-preventing-bridging)
+ "notificationPriority": "A String", # Set the relative priority for this notification. Priority is an indication
+ # of how much of the user's attention should be consumed by this
+ # notification. Low-priority notifications may be hidden from the user in
+ # certain situations, while the user might be interrupted for a
+ # higher-priority notification. The effect of setting the same priorities may
+ # differ slightly on different platforms. Note this priority differs from
+ # `AndroidMessagePriority`. This priority is processed by the client after
+ # the message has been delivered, whereas
+ # [AndroidMessagePriority](https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#androidmessagepriority)
+ # is an FCM concept that controls when the message is delivered.
+ "vibrateTimings": [ # Set the vibration pattern to use. Pass in an array of
+ # [protobuf.Duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.Duration)
+ # to turn on or off the vibrator. The first value indicates the `Duration` to
+ # wait before turning the vibrator on. The next value indicates the
+ # `Duration` to keep the vibrator on. Subsequent values alternate between
+ # `Duration` to turn the vibrator off and to turn the vibrator on.
+ # If `vibrate_timings` is set and `default_vibrate_timings` is set to `true`,
+ # the default value is used instead of the user-specified `vibrate_timings`.
+ "A String",
+ ],
+ "sound": "A String", # The sound to play when the device receives the notification.
+ # Supports "default" or the filename of a sound resource bundled in the app.
+ # Sound files must reside in /res/raw/.
+ "bodyLocKey": "A String", # The key to the body string in the app's string resources to use to localize
+ # the body text to the user's current localization.
+ # See [String Resources](https://goo.gl/NdFZGI) for more information.
+ "notificationCount": 42, # Sets the number of items this notification represents. May be displayed as
+ # a badge count for launchers that support badging.See [Notification
+ # Badge](https://developer.android.com/training/notify-user/badges).
+ # For example, this might be useful if you're using just one notification to
+ # represent multiple new messages but you want the count here to represent
+ # the number of total new messages.
+ # If zero or unspecified, systems that support badging use the default, which
+ # is to increment a number displayed on the long-press menu each time a new
+ # notification arrives.
+ "bodyLocArgs": [ # Variable string values to be used in place of the format specifiers in
+ # body_loc_key to use to localize the body text to the user's current
+ # localization.
+ # See [Formatting and Styling](https://goo.gl/MalYE3) for more information.
+ "A String",
+ ],
+ "body": "A String", # The notification's body text. If present, it will override
+ # google.firebase.fcm.v1.Notification.body.
+ "lightSettings": { # Settings to control notification LED. # Settings to control the notification's LED blinking rate and color if LED
# is available on the device. The total blinking time is controlled by the
# OS.
- "color": { # Represents a color in the RGBA color space. This representation is designed # Required. Set `color` of the LED with
+ "lightOffDuration": "A String", # Required. Along with `light_on_duration `, define the blink rate of LED
+ # flashes. Resolution defined by
+ # [proto.Duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.Duration)
+ "color": { # Represents a color in the RGBA color space. This representation is designed # Required. Set `color` of the LED with
# [google.type.Color](https://github.com/googleapis/googleapis/blob/master/google/type/color.proto).
# for simplicity of conversion to/from color representations in various
# languages over compactness; for example, the fields of this representation
- # can be trivially provided to the constructor of "java.awt.Color" in Java; it
- # can also be trivially provided to UIColor's "+colorWithRed:green:blue:alpha"
+ # can be trivially provided to the constructor of "java.awt.Color" in Java; it
+ # can also be trivially provided to UIColor's "+colorWithRed:green:blue:alpha"
# method in iOS; and, with just a little work, it can be easily formatted into
- # a CSS "rgba()" string in JavaScript, as well.
+ # a CSS "rgba()" string in JavaScript, as well.
#
# Note: this proto does not carry information about the absolute color space
# that should be used to interpret the RGB value (e.g. sRGB, Adobe RGB,
@@ -312,30 +344,32 @@
# var green = Math.floor(greenFrac * 255);
# var blue = Math.floor(blueFrac * 255);
#
- # if (!('alpha' in rgb_color)) {
+ # if (!('alpha' in rgb_color)) {
# return rgbToCssColor_(red, green, blue);
# }
#
# var alphaFrac = rgb_color.alpha.value || 0.0;
- # var rgbParams = [red, green, blue].join(',');
- # return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
+ # var rgbParams = [red, green, blue].join(',');
+ # return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
# };
#
# var rgbToCssColor_ = function(red, green, blue) {
# var rgbNumber = new Number((red << 16) | (green << 8) | blue);
# var hexString = rgbNumber.toString(16);
# var missingZeros = 6 - hexString.length;
- # var resultBuilder = ['#'];
+ # var resultBuilder = ['#'];
# for (var i = 0; i < missingZeros; i++) {
- # resultBuilder.push('0');
+ # resultBuilder.push('0');
# }
# resultBuilder.push(hexString);
- # return resultBuilder.join('');
+ # return resultBuilder.join('');
# };
#
# // ...
- "blue": 3.14, # The amount of blue in the color as a value in the interval [0, 1].
- "alpha": 3.14, # The fraction of this color that should be applied to the pixel. That is,
+ "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
+ "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
+ "blue": 3.14, # The amount of blue in the color as a value in the interval [0, 1].
+ "alpha": 3.14, # The fraction of this color that should be applied to the pixel. That is,
# the final pixel color is defined by the equation:
#
# pixel color = alpha * (this color) + (1.0 - alpha) * (background color)
@@ -346,118 +380,84 @@
# possible to distinguish between a default value and the value being unset.
# If omitted, this color object is to be rendered as a solid color
# (as if the alpha value had been explicitly given with a value of 1.0).
- "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
- "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
},
- "lightOnDuration": "A String", # Required. Along with `light_off_duration`, define the blink rate of LED
- # flashes. Resolution defined by
- # [proto.Duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.Duration)
- "lightOffDuration": "A String", # Required. Along with `light_on_duration `, define the blink rate of LED
+ "lightOnDuration": "A String", # Required. Along with `light_off_duration`, define the blink rate of LED
# flashes. Resolution defined by
# [proto.Duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.Duration)
},
- "title": "A String", # The notification's title. If present, it will override
- # google.firebase.fcm.v1.Notification.title.
- "notificationCount": 42, # Sets the number of items this notification represents. May be displayed as
- # a badge count for launchers that support badging.See [Notification
- # Badge](https://developer.android.com/training/notify-user/badges).
- # For example, this might be useful if you're using just one notification to
- # represent multiple new messages but you want the count here to represent
- # the number of total new messages.
- # If zero or unspecified, systems that support badging use the default, which
- # is to increment a number displayed on the long-press menu each time a new
- # notification arrives.
- "body": "A String", # The notification's body text. If present, it will override
- # google.firebase.fcm.v1.Notification.body.
- "bodyLocArgs": [ # Variable string values to be used in place of the format specifiers in
- # body_loc_key to use to localize the body text to the user's current
- # localization.
- # See [Formatting and Styling](https://goo.gl/MalYE3) for more information.
- "A String",
- ],
- "localOnly": True or False, # Set whether or not this notification is relevant only to the current
- # device. Some notifications can be bridged to other devices for remote
- # display, such as a Wear OS watch. This hint can be set to recommend this
- # notification not be bridged. See [Wear OS
- # guides](https://developer.android.com/training/wearables/notifications/bridger#existing-method-of-preventing-bridging)
- "visibility": "A String", # Set the
- # [Notification.visibility](https://developer.android.com/reference/android/app/Notification.html#visibility)
- # of the notification.
- "ticker": "A String", # Sets the "ticker" text, which is sent to accessibility services.
- # Prior to API level 21 (`Lollipop`), sets the text that is displayed in the
- # status bar when the notification first arrives.
- "icon": "A String", # The notification's icon.
+ "icon": "A String", # The notification's icon.
# Sets the notification icon to myicon for drawable resource myicon.
- # If you don't send this key in the request, FCM displays the launcher icon
+ # If you don't send this key in the request, FCM displays the launcher icon
# specified in your app manifest.
- "sound": "A String", # The sound to play when the device receives the notification.
- # Supports "default" or the filename of a sound resource bundled in the app.
- # Sound files must reside in /res/raw/.
- "clickAction": "A String", # The action associated with a user click on the notification.
- # If specified, an activity with a matching intent filter is launched when
- # a user clicks on the notification.
- "titleLocArgs": [ # Variable string values to be used in place of the format specifiers in
- # title_loc_key to use to localize the title text to the user's current
- # localization.
- # See [Formatting and Styling](https://goo.gl/MalYE3) for more information.
- "A String",
- ],
- "vibrateTimings": [ # Set the vibration pattern to use. Pass in an array of
- # [protobuf.Duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.Duration)
- # to turn on or off the vibrator. The first value indicates the `Duration` to
- # wait before turning the vibrator on. The next value indicates the
- # `Duration` to keep the vibrator on. Subsequent values alternate between
- # `Duration` to turn the vibrator off and to turn the vibrator on.
- # If `vibrate_timings` is set and `default_vibrate_timings` is set to `true`,
- # the default value is used instead of the user-specified `vibrate_timings`.
- "A String",
- ],
- "notificationPriority": "A String", # Set the relative priority for this notification. Priority is an indication
- # of how much of the user's attention should be consumed by this
- # notification. Low-priority notifications may be hidden from the user in
- # certain situations, while the user might be interrupted for a
- # higher-priority notification. The effect of setting the same priorities may
- # differ slightly on different platforms. Note this priority differs from
- # `AndroidMessagePriority`. This priority is processed by the client after
- # the message has been delivered, whereas
- # [AndroidMessagePriority](https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#androidmessagepriority)
- # is an FCM concept that controls when the message is delivered.
+ "color": "A String", # The notification's icon color, expressed in #rrggbb format.
},
- "priority": "A String", # Message priority. Can take "normal" and "high" values.
- # For more information, see [Setting the priority of a
- # message](https://goo.gl/GjONJv).
- "collapseKey": "A String", # An identifier of a group of messages that can be collapsed, so that only
- # the last message gets sent when delivery can be resumed. A maximum of 4
- # different collapse keys is allowed at any given time.
- "directBootOk": True or False, # If set to true, messages will be allowed to be delivered to the app while
- # the device is in direct boot mode. See [Support Direct Boot
- # mode](https://developer.android.com/training/articles/direct-boot).
- "ttl": "A String", # How long (in seconds) the message should be kept in FCM storage if the
+ "restrictedPackageName": "A String", # Package name of the application where the registration token must match in
+ # order to receive the message.
+ "ttl": "A String", # How long (in seconds) the message should be kept in FCM storage if the
# device is offline. The maximum time to live supported is 4 weeks, and the
# default value is 4 weeks if not set. Set it to 0 if want to send the
# message immediately.
# In JSON format, the Duration type is encoded as a string rather than an
- # object, where the string ends in the suffix "s" (indicating seconds) and
+ # object, where the string ends in the suffix "s" (indicating seconds) and
# is preceded by the number of seconds, with nanoseconds expressed as
# fractional seconds. For example, 3 seconds with 0 nanoseconds should be
- # encoded in JSON format as "3s", while 3 seconds and 1 nanosecond should
- # be expressed in JSON format as "3.000000001s". The ttl will be rounded down
+ # encoded in JSON format as "3s", while 3 seconds and 1 nanosecond should
+ # be expressed in JSON format as "3.000000001s". The ttl will be rounded down
# to the nearest second.
- "restrictedPackageName": "A String", # Package name of the application where the registration token must match in
- # order to receive the message.
- "data": { # Arbitrary key/value payload. If present, it will override
- # google.firebase.fcm.v1.Message.data.
- "a_key": "A String",
+ },
+ "condition": "A String", # Condition to send a message to,
+ # e.g. "'foo' in topics && 'bar' in topics".
+ "apns": { # [Apple Push Notification Service](https://goo.gl/MXRTPa) specific options. # Input only. [Apple Push Notification Service](https://goo.gl/MXRTPa)
+ # specific options.
+ "payload": { # APNs payload as a JSON object, including both `aps` dictionary and custom
+ # payload. See [Payload Key
+ # Reference](https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/generating_a_remote_notification).
+ # If present, it overrides google.firebase.fcm.v1.Notification.title
+ # and google.firebase.fcm.v1.Notification.body.
+ "a_key": "", # Properties of the object.
+ },
+ "fcmOptions": { # Options for features provided by the FCM SDK for iOS. # Options for features provided by the FCM SDK for iOS.
+ "image": "A String", # Contains the URL of an image that is going to be displayed in a
+ # notification. If present, it will override
+ # google.firebase.fcm.v1.Notification.image.
+ "analyticsLabel": "A String", # Label associated with the message's analytics data.
+ },
+ "headers": { # HTTP request headers defined in Apple Push Notification Service. Refer to
+ # [APNs request
+ # headers](https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/sending_notification_requests_to_apns)
+ # for supported headers, e.g. "apns-priority": "10".
+ "a_key": "A String",
},
},
- "data": { # Input only. Arbitrary key/value payload. The key should not be a reserved
- # word ("from", "message_type", or any word starting with "google" or "gcm").
- "a_key": "A String",
+ "webpush": { # [Webpush protocol](https://tools.ietf.org/html/rfc8030) options. # Input only. [Webpush protocol](https://tools.ietf.org/html/rfc8030)
+ # options.
+ "notification": { # Web Notification options as a JSON object. Supports Notification instance
+ # properties as defined in [Web Notification
+ # API](https://developer.mozilla.org/en-US/docs/Web/API/Notification). If
+ # present, "title" and "body" fields override
+ # [google.firebase.fcm.v1.Notification.title] and
+ # [google.firebase.fcm.v1.Notification.body].
+ "a_key": "", # Properties of the object.
+ },
+ "fcmOptions": { # Options for features provided by the FCM SDK for Web. # Options for features provided by the FCM SDK for Web.
+ "analyticsLabel": "A String", # Label associated with the message's analytics data.
+ "link": "A String", # The link to open when the user clicks on the notification.
+ # For all URL values, HTTPS is required.
+ },
+ "headers": { # HTTP headers defined in webpush protocol. Refer to
+ # [Webpush protocol](https://tools.ietf.org/html/rfc8030#section-5) for
+ # supported headers, e.g. "TTL": "15".
+ "a_key": "A String",
+ },
+ "data": { # Arbitrary key/value payload. If present, it will override
+ # google.firebase.fcm.v1.Message.data.
+ "a_key": "A String",
+ },
},
- "condition": "A String", # Condition to send a message to,
- # e.g. "'foo' in topics && 'bar' in topics".
+ "name": "A String", # Output Only. The identifier of the message sent, in the format of
+ # `projects/*/messages/{message_id}`.
},
- "validateOnly": True or False, # Flag for testing the request without actually delivering the message.
+ "validateOnly": True or False, # Flag for testing the request without actually delivering the message.
}
x__xgafv: string, V1 error format.
@@ -469,15 +469,12 @@
An object of the form:
{ # Message to send by Firebase Cloud Messaging Service.
- "name": "A String", # Output Only. The identifier of the message sent, in the format of
- # `projects/*/messages/{message_id}`.
- "fcmOptions": { # Platform independent options for features provided by the FCM SDKs. # Input only. Template for FCM SDK feature options to use across all
- # platforms.
- "analyticsLabel": "A String", # Label associated with the message's analytics data.
- },
- "notification": { # Basic notification template to use across all platforms. # Input only. Basic notification template to use across all platforms.
- "body": "A String", # The notification's body text.
- "image": "A String", # Contains the URL of an image that is going to be downloaded on the device
+ "topic": "A String", # Topic name to send a message to, e.g. "weather".
+ # Note: "/topics/" prefix should not be provided.
+ "notification": { # Basic notification template to use across all platforms. # Input only. Basic notification template to use across all platforms.
+ "body": "A String", # The notification's body text.
+ "title": "A String", # The notification's title.
+ "image": "A String", # Contains the URL of an image that is going to be downloaded on the device
# and displayed in a notification.
# JPEG, PNG, BMP have full support across platforms. Animated GIF and video
# only work on iOS. WebP and HEIF have varying levels of support across
@@ -485,119 +482,154 @@
# Android has 1MB image size limit.
# Quota usage and implications/costs for hosting image on Firebase Storage:
# https://firebase.google.com/pricing
- "title": "A String", # The notification's title.
},
- "token": "A String", # Registration token to send a message to.
- "webpush": { # [Webpush protocol](https://tools.ietf.org/html/rfc8030) options. # Input only. [Webpush protocol](https://tools.ietf.org/html/rfc8030)
- # options.
- "notification": { # Web Notification options as a JSON object. Supports Notification instance
- # properties as defined in [Web Notification
- # API](https://developer.mozilla.org/en-US/docs/Web/API/Notification). If
- # present, "title" and "body" fields override
- # [google.firebase.fcm.v1.Notification.title] and
- # [google.firebase.fcm.v1.Notification.body].
- "a_key": "", # Properties of the object.
- },
- "data": { # Arbitrary key/value payload. If present, it will override
+ "fcmOptions": { # Platform independent options for features provided by the FCM SDKs. # Input only. Template for FCM SDK feature options to use across all
+ # platforms.
+ "analyticsLabel": "A String", # Label associated with the message's analytics data.
+ },
+ "data": { # Input only. Arbitrary key/value payload. The key should not be a reserved
+ # word ("from", "message_type", or any word starting with "google" or "gcm").
+ "a_key": "A String",
+ },
+ "token": "A String", # Registration token to send a message to.
+ "android": { # Android specific options for messages sent through # Input only. Android specific options for messages sent through
+ # [FCM connection server](https://goo.gl/4GLdUl).
+ # [FCM connection server](https://goo.gl/4GLdUl).
+ "data": { # Arbitrary key/value payload. If present, it will override
# google.firebase.fcm.v1.Message.data.
- "a_key": "A String",
+ "a_key": "A String",
},
- "fcmOptions": { # Options for features provided by the FCM SDK for Web. # Options for features provided by the FCM SDK for Web.
- "analyticsLabel": "A String", # Label associated with the message's analytics data.
- "link": "A String", # The link to open when the user clicks on the notification.
- # For all URL values, HTTPS is required.
+ "priority": "A String", # Message priority. Can take "normal" and "high" values.
+ # For more information, see [Setting the priority of a
+ # message](https://goo.gl/GjONJv).
+ "collapseKey": "A String", # An identifier of a group of messages that can be collapsed, so that only
+ # the last message gets sent when delivery can be resumed. A maximum of 4
+ # different collapse keys is allowed at any given time.
+ "directBootOk": True or False, # If set to true, messages will be allowed to be delivered to the app while
+ # the device is in direct boot mode. See [Support Direct Boot
+ # mode](https://developer.android.com/training/articles/direct-boot).
+ "fcmOptions": { # Options for features provided by the FCM SDK for Android. # Options for features provided by the FCM SDK for Android.
+ "analyticsLabel": "A String", # Label associated with the message's analytics data.
},
- "headers": { # HTTP headers defined in webpush protocol. Refer to
- # [Webpush protocol](https://tools.ietf.org/html/rfc8030#section-5) for
- # supported headers, e.g. "TTL": "15".
- "a_key": "A String",
- },
- },
- "topic": "A String", # Topic name to send a message to, e.g. "weather".
- # Note: "/topics/" prefix should not be provided.
- "apns": { # [Apple Push Notification Service](https://goo.gl/MXRTPa) specific options. # Input only. [Apple Push Notification Service](https://goo.gl/MXRTPa)
- # specific options.
- "headers": { # HTTP request headers defined in Apple Push Notification Service. Refer to
- # [APNs request
- # headers](https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/sending_notification_requests_to_apns)
- # for supported headers, e.g. "apns-priority": "10".
- "a_key": "A String",
- },
- "payload": { # APNs payload as a JSON object, including both `aps` dictionary and custom
- # payload. See [Payload Key
- # Reference](https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/generating_a_remote_notification).
- # If present, it overrides google.firebase.fcm.v1.Notification.title
- # and google.firebase.fcm.v1.Notification.body.
- "a_key": "", # Properties of the object.
- },
- "fcmOptions": { # Options for features provided by the FCM SDK for iOS. # Options for features provided by the FCM SDK for iOS.
- "image": "A String", # Contains the URL of an image that is going to be displayed in a
+ "notification": { # Notification to send to android devices. # Notification to send to android devices.
+ "tag": "A String", # Identifier used to replace existing notifications in the notification
+ # drawer.
+ # If not specified, each request creates a new notification.
+ # If specified and a notification with the same tag is already being shown,
+ # the new notification replaces the existing one in the notification drawer.
+ "titleLocKey": "A String", # The key to the title string in the app's string resources to use to
+ # localize the title text to the user's current localization.
+ # See [String Resources](https://goo.gl/NdFZGI) for more information.
+ "image": "A String", # Contains the URL of an image that is going to be displayed in a
# notification. If present, it will override
# google.firebase.fcm.v1.Notification.image.
- "analyticsLabel": "A String", # Label associated with the message's analytics data.
- },
- },
- "android": { # Android specific options for messages sent through # Input only. Android specific options for messages sent through
- # [FCM connection server](https://goo.gl/4GLdUl).
- # [FCM connection server](https://goo.gl/4GLdUl).
- "fcmOptions": { # Options for features provided by the FCM SDK for Android. # Options for features provided by the FCM SDK for Android.
- "analyticsLabel": "A String", # Label associated with the message's analytics data.
- },
- "notification": { # Notification to send to android devices. # Notification to send to android devices.
- "defaultVibrateTimings": True or False, # If set to true, use the Android framework's default vibrate pattern for the
+ "visibility": "A String", # Set the
+ # [Notification.visibility](https://developer.android.com/reference/android/app/Notification.html#visibility)
+ # of the notification.
+ "ticker": "A String", # Sets the "ticker" text, which is sent to accessibility services.
+ # Prior to API level 21 (`Lollipop`), sets the text that is displayed in the
+ # status bar when the notification first arrives.
+ "title": "A String", # The notification's title. If present, it will override
+ # google.firebase.fcm.v1.Notification.title.
+ "defaultSound": True or False, # If set to true, use the Android framework's default sound for the
+ # notification. Default values are specified in
+ # [config.xml](https://android.googlesource.com/platform/frameworks/base/+/master/core/res/res/values/config.xml).
+ "sticky": True or False, # When set to false or unset, the notification is automatically
+ # dismissed when the user clicks it in the panel. When set to true, the
+ # notification persists even when the user clicks it.
+ "titleLocArgs": [ # Variable string values to be used in place of the format specifiers in
+ # title_loc_key to use to localize the title text to the user's current
+ # localization.
+ # See [Formatting and Styling](https://goo.gl/MalYE3) for more information.
+ "A String",
+ ],
+ "channelId": "A String", # The [notification's channel
+ # id](https://developer.android.com/guide/topics/ui/notifiers/notifications#ManageChannels)
+ # (new in Android O). The app must create a channel with this channel ID
+ # before any notification with this channel ID is received. If you don't send
+ # this channel ID in the request, or if the channel ID provided has not yet
+ # been created by the app, FCM uses the channel ID specified in the app
+ # manifest.
+ "defaultVibrateTimings": True or False, # If set to true, use the Android framework's default vibrate pattern for the
# notification. Default values are specified in
# [config.xml](https://android.googlesource.com/platform/frameworks/base/+/master/core/res/res/values/config.xml).
# If `default_vibrate_timings` is set to true and `vibrate_timings` is also
# set, the default value is used instead of the user-specified
# `vibrate_timings`.
- "bodyLocKey": "A String", # The key to the body string in the app's string resources to use to localize
- # the body text to the user's current localization.
- # See [String Resources](https://goo.gl/NdFZGI) for more information.
- "color": "A String", # The notification's icon color, expressed in #rrggbb format.
- "image": "A String", # Contains the URL of an image that is going to be displayed in a
- # notification. If present, it will override
- # google.firebase.fcm.v1.Notification.image.
- "channelId": "A String", # The [notification's channel
- # id](https://developer.android.com/guide/topics/ui/notifiers/notifications#ManageChannels)
- # (new in Android O). The app must create a channel with this channel ID
- # before any notification with this channel ID is received. If you don't send
- # this channel ID in the request, or if the channel ID provided has not yet
- # been created by the app, FCM uses the channel ID specified in the app
- # manifest.
- "titleLocKey": "A String", # The key to the title string in the app's string resources to use to
- # localize the title text to the user's current localization.
- # See [String Resources](https://goo.gl/NdFZGI) for more information.
- "sticky": True or False, # When set to false or unset, the notification is automatically
- # dismissed when the user clicks it in the panel. When set to true, the
- # notification persists even when the user clicks it.
- "tag": "A String", # Identifier used to replace existing notifications in the notification
- # drawer.
- # If not specified, each request creates a new notification.
- # If specified and a notification with the same tag is already being shown,
- # the new notification replaces the existing one in the notification drawer.
- "defaultSound": True or False, # If set to true, use the Android framework's default sound for the
- # notification. Default values are specified in
- # [config.xml](https://android.googlesource.com/platform/frameworks/base/+/master/core/res/res/values/config.xml).
- "defaultLightSettings": True or False, # If set to true, use the Android framework's default LED light settings for
+ "clickAction": "A String", # The action associated with a user click on the notification.
+ # If specified, an activity with a matching intent filter is launched when
+ # a user clicks on the notification.
+ "eventTime": "A String", # Set the time that the event in the notification occurred. Notifications in
+ # the panel are sorted by this time. A point in time is represented using
+ # [protobuf.Timestamp](https://developers.google.com/protocol-buffers/docs/reference/java/com/google/protobuf/Timestamp).
+ "defaultLightSettings": True or False, # If set to true, use the Android framework's default LED light settings for
# the notification. Default values are specified in
# [config.xml](https://android.googlesource.com/platform/frameworks/base/+/master/core/res/res/values/config.xml).
# If `default_light_settings` is set to true and `light_settings` is also
# set, the user-specified `light_settings` is used instead of the
# default value.
- "eventTime": "A String", # Set the time that the event in the notification occurred. Notifications in
- # the panel are sorted by this time. A point in time is represented using
- # [protobuf.Timestamp](https://developers.google.com/protocol-buffers/docs/reference/java/com/google/protobuf/Timestamp).
- "lightSettings": { # Settings to control notification LED. # Settings to control the notification's LED blinking rate and color if LED
+ "localOnly": True or False, # Set whether or not this notification is relevant only to the current
+ # device. Some notifications can be bridged to other devices for remote
+ # display, such as a Wear OS watch. This hint can be set to recommend this
+ # notification not be bridged. See [Wear OS
+ # guides](https://developer.android.com/training/wearables/notifications/bridger#existing-method-of-preventing-bridging)
+ "notificationPriority": "A String", # Set the relative priority for this notification. Priority is an indication
+ # of how much of the user's attention should be consumed by this
+ # notification. Low-priority notifications may be hidden from the user in
+ # certain situations, while the user might be interrupted for a
+ # higher-priority notification. The effect of setting the same priorities may
+ # differ slightly on different platforms. Note this priority differs from
+ # `AndroidMessagePriority`. This priority is processed by the client after
+ # the message has been delivered, whereas
+ # [AndroidMessagePriority](https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#androidmessagepriority)
+ # is an FCM concept that controls when the message is delivered.
+ "vibrateTimings": [ # Set the vibration pattern to use. Pass in an array of
+ # [protobuf.Duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.Duration)
+ # to turn on or off the vibrator. The first value indicates the `Duration` to
+ # wait before turning the vibrator on. The next value indicates the
+ # `Duration` to keep the vibrator on. Subsequent values alternate between
+ # `Duration` to turn the vibrator off and to turn the vibrator on.
+ # If `vibrate_timings` is set and `default_vibrate_timings` is set to `true`,
+ # the default value is used instead of the user-specified `vibrate_timings`.
+ "A String",
+ ],
+ "sound": "A String", # The sound to play when the device receives the notification.
+ # Supports "default" or the filename of a sound resource bundled in the app.
+ # Sound files must reside in /res/raw/.
+ "bodyLocKey": "A String", # The key to the body string in the app's string resources to use to localize
+ # the body text to the user's current localization.
+ # See [String Resources](https://goo.gl/NdFZGI) for more information.
+ "notificationCount": 42, # Sets the number of items this notification represents. May be displayed as
+ # a badge count for launchers that support badging.See [Notification
+ # Badge](https://developer.android.com/training/notify-user/badges).
+ # For example, this might be useful if you're using just one notification to
+ # represent multiple new messages but you want the count here to represent
+ # the number of total new messages.
+ # If zero or unspecified, systems that support badging use the default, which
+ # is to increment a number displayed on the long-press menu each time a new
+ # notification arrives.
+ "bodyLocArgs": [ # Variable string values to be used in place of the format specifiers in
+ # body_loc_key to use to localize the body text to the user's current
+ # localization.
+ # See [Formatting and Styling](https://goo.gl/MalYE3) for more information.
+ "A String",
+ ],
+ "body": "A String", # The notification's body text. If present, it will override
+ # google.firebase.fcm.v1.Notification.body.
+ "lightSettings": { # Settings to control notification LED. # Settings to control the notification's LED blinking rate and color if LED
# is available on the device. The total blinking time is controlled by the
# OS.
- "color": { # Represents a color in the RGBA color space. This representation is designed # Required. Set `color` of the LED with
+ "lightOffDuration": "A String", # Required. Along with `light_on_duration `, define the blink rate of LED
+ # flashes. Resolution defined by
+ # [proto.Duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.Duration)
+ "color": { # Represents a color in the RGBA color space. This representation is designed # Required. Set `color` of the LED with
# [google.type.Color](https://github.com/googleapis/googleapis/blob/master/google/type/color.proto).
# for simplicity of conversion to/from color representations in various
# languages over compactness; for example, the fields of this representation
- # can be trivially provided to the constructor of "java.awt.Color" in Java; it
- # can also be trivially provided to UIColor's "+colorWithRed:green:blue:alpha"
+ # can be trivially provided to the constructor of "java.awt.Color" in Java; it
+ # can also be trivially provided to UIColor's "+colorWithRed:green:blue:alpha"
# method in iOS; and, with just a little work, it can be easily formatted into
- # a CSS "rgba()" string in JavaScript, as well.
+ # a CSS "rgba()" string in JavaScript, as well.
#
# Note: this proto does not carry information about the absolute color space
# that should be used to interpret the RGB value (e.g. sRGB, Adobe RGB,
@@ -688,30 +720,32 @@
# var green = Math.floor(greenFrac * 255);
# var blue = Math.floor(blueFrac * 255);
#
- # if (!('alpha' in rgb_color)) {
+ # if (!('alpha' in rgb_color)) {
# return rgbToCssColor_(red, green, blue);
# }
#
# var alphaFrac = rgb_color.alpha.value || 0.0;
- # var rgbParams = [red, green, blue].join(',');
- # return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
+ # var rgbParams = [red, green, blue].join(',');
+ # return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
# };
#
# var rgbToCssColor_ = function(red, green, blue) {
# var rgbNumber = new Number((red << 16) | (green << 8) | blue);
# var hexString = rgbNumber.toString(16);
# var missingZeros = 6 - hexString.length;
- # var resultBuilder = ['#'];
+ # var resultBuilder = ['#'];
# for (var i = 0; i < missingZeros; i++) {
- # resultBuilder.push('0');
+ # resultBuilder.push('0');
# }
# resultBuilder.push(hexString);
- # return resultBuilder.join('');
+ # return resultBuilder.join('');
# };
#
# // ...
- "blue": 3.14, # The amount of blue in the color as a value in the interval [0, 1].
- "alpha": 3.14, # The fraction of this color that should be applied to the pixel. That is,
+ "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
+ "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
+ "blue": 3.14, # The amount of blue in the color as a value in the interval [0, 1].
+ "alpha": 3.14, # The fraction of this color that should be applied to the pixel. That is,
# the final pixel color is defined by the equation:
#
# pixel color = alpha * (this color) + (1.0 - alpha) * (background color)
@@ -722,116 +756,82 @@
# possible to distinguish between a default value and the value being unset.
# If omitted, this color object is to be rendered as a solid color
# (as if the alpha value had been explicitly given with a value of 1.0).
- "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
- "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
},
- "lightOnDuration": "A String", # Required. Along with `light_off_duration`, define the blink rate of LED
- # flashes. Resolution defined by
- # [proto.Duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.Duration)
- "lightOffDuration": "A String", # Required. Along with `light_on_duration `, define the blink rate of LED
+ "lightOnDuration": "A String", # Required. Along with `light_off_duration`, define the blink rate of LED
# flashes. Resolution defined by
# [proto.Duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.Duration)
},
- "title": "A String", # The notification's title. If present, it will override
- # google.firebase.fcm.v1.Notification.title.
- "notificationCount": 42, # Sets the number of items this notification represents. May be displayed as
- # a badge count for launchers that support badging.See [Notification
- # Badge](https://developer.android.com/training/notify-user/badges).
- # For example, this might be useful if you're using just one notification to
- # represent multiple new messages but you want the count here to represent
- # the number of total new messages.
- # If zero or unspecified, systems that support badging use the default, which
- # is to increment a number displayed on the long-press menu each time a new
- # notification arrives.
- "body": "A String", # The notification's body text. If present, it will override
- # google.firebase.fcm.v1.Notification.body.
- "bodyLocArgs": [ # Variable string values to be used in place of the format specifiers in
- # body_loc_key to use to localize the body text to the user's current
- # localization.
- # See [Formatting and Styling](https://goo.gl/MalYE3) for more information.
- "A String",
- ],
- "localOnly": True or False, # Set whether or not this notification is relevant only to the current
- # device. Some notifications can be bridged to other devices for remote
- # display, such as a Wear OS watch. This hint can be set to recommend this
- # notification not be bridged. See [Wear OS
- # guides](https://developer.android.com/training/wearables/notifications/bridger#existing-method-of-preventing-bridging)
- "visibility": "A String", # Set the
- # [Notification.visibility](https://developer.android.com/reference/android/app/Notification.html#visibility)
- # of the notification.
- "ticker": "A String", # Sets the "ticker" text, which is sent to accessibility services.
- # Prior to API level 21 (`Lollipop`), sets the text that is displayed in the
- # status bar when the notification first arrives.
- "icon": "A String", # The notification's icon.
+ "icon": "A String", # The notification's icon.
# Sets the notification icon to myicon for drawable resource myicon.
- # If you don't send this key in the request, FCM displays the launcher icon
+ # If you don't send this key in the request, FCM displays the launcher icon
# specified in your app manifest.
- "sound": "A String", # The sound to play when the device receives the notification.
- # Supports "default" or the filename of a sound resource bundled in the app.
- # Sound files must reside in /res/raw/.
- "clickAction": "A String", # The action associated with a user click on the notification.
- # If specified, an activity with a matching intent filter is launched when
- # a user clicks on the notification.
- "titleLocArgs": [ # Variable string values to be used in place of the format specifiers in
- # title_loc_key to use to localize the title text to the user's current
- # localization.
- # See [Formatting and Styling](https://goo.gl/MalYE3) for more information.
- "A String",
- ],
- "vibrateTimings": [ # Set the vibration pattern to use. Pass in an array of
- # [protobuf.Duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.Duration)
- # to turn on or off the vibrator. The first value indicates the `Duration` to
- # wait before turning the vibrator on. The next value indicates the
- # `Duration` to keep the vibrator on. Subsequent values alternate between
- # `Duration` to turn the vibrator off and to turn the vibrator on.
- # If `vibrate_timings` is set and `default_vibrate_timings` is set to `true`,
- # the default value is used instead of the user-specified `vibrate_timings`.
- "A String",
- ],
- "notificationPriority": "A String", # Set the relative priority for this notification. Priority is an indication
- # of how much of the user's attention should be consumed by this
- # notification. Low-priority notifications may be hidden from the user in
- # certain situations, while the user might be interrupted for a
- # higher-priority notification. The effect of setting the same priorities may
- # differ slightly on different platforms. Note this priority differs from
- # `AndroidMessagePriority`. This priority is processed by the client after
- # the message has been delivered, whereas
- # [AndroidMessagePriority](https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#androidmessagepriority)
- # is an FCM concept that controls when the message is delivered.
+ "color": "A String", # The notification's icon color, expressed in #rrggbb format.
},
- "priority": "A String", # Message priority. Can take "normal" and "high" values.
- # For more information, see [Setting the priority of a
- # message](https://goo.gl/GjONJv).
- "collapseKey": "A String", # An identifier of a group of messages that can be collapsed, so that only
- # the last message gets sent when delivery can be resumed. A maximum of 4
- # different collapse keys is allowed at any given time.
- "directBootOk": True or False, # If set to true, messages will be allowed to be delivered to the app while
- # the device is in direct boot mode. See [Support Direct Boot
- # mode](https://developer.android.com/training/articles/direct-boot).
- "ttl": "A String", # How long (in seconds) the message should be kept in FCM storage if the
+ "restrictedPackageName": "A String", # Package name of the application where the registration token must match in
+ # order to receive the message.
+ "ttl": "A String", # How long (in seconds) the message should be kept in FCM storage if the
# device is offline. The maximum time to live supported is 4 weeks, and the
# default value is 4 weeks if not set. Set it to 0 if want to send the
# message immediately.
# In JSON format, the Duration type is encoded as a string rather than an
- # object, where the string ends in the suffix "s" (indicating seconds) and
+ # object, where the string ends in the suffix "s" (indicating seconds) and
# is preceded by the number of seconds, with nanoseconds expressed as
# fractional seconds. For example, 3 seconds with 0 nanoseconds should be
- # encoded in JSON format as "3s", while 3 seconds and 1 nanosecond should
- # be expressed in JSON format as "3.000000001s". The ttl will be rounded down
+ # encoded in JSON format as "3s", while 3 seconds and 1 nanosecond should
+ # be expressed in JSON format as "3.000000001s". The ttl will be rounded down
# to the nearest second.
- "restrictedPackageName": "A String", # Package name of the application where the registration token must match in
- # order to receive the message.
- "data": { # Arbitrary key/value payload. If present, it will override
- # google.firebase.fcm.v1.Message.data.
- "a_key": "A String",
+ },
+ "condition": "A String", # Condition to send a message to,
+ # e.g. "'foo' in topics && 'bar' in topics".
+ "apns": { # [Apple Push Notification Service](https://goo.gl/MXRTPa) specific options. # Input only. [Apple Push Notification Service](https://goo.gl/MXRTPa)
+ # specific options.
+ "payload": { # APNs payload as a JSON object, including both `aps` dictionary and custom
+ # payload. See [Payload Key
+ # Reference](https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/generating_a_remote_notification).
+ # If present, it overrides google.firebase.fcm.v1.Notification.title
+ # and google.firebase.fcm.v1.Notification.body.
+ "a_key": "", # Properties of the object.
+ },
+ "fcmOptions": { # Options for features provided by the FCM SDK for iOS. # Options for features provided by the FCM SDK for iOS.
+ "image": "A String", # Contains the URL of an image that is going to be displayed in a
+ # notification. If present, it will override
+ # google.firebase.fcm.v1.Notification.image.
+ "analyticsLabel": "A String", # Label associated with the message's analytics data.
+ },
+ "headers": { # HTTP request headers defined in Apple Push Notification Service. Refer to
+ # [APNs request
+ # headers](https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/sending_notification_requests_to_apns)
+ # for supported headers, e.g. "apns-priority": "10".
+ "a_key": "A String",
},
},
- "data": { # Input only. Arbitrary key/value payload. The key should not be a reserved
- # word ("from", "message_type", or any word starting with "google" or "gcm").
- "a_key": "A String",
+ "webpush": { # [Webpush protocol](https://tools.ietf.org/html/rfc8030) options. # Input only. [Webpush protocol](https://tools.ietf.org/html/rfc8030)
+ # options.
+ "notification": { # Web Notification options as a JSON object. Supports Notification instance
+ # properties as defined in [Web Notification
+ # API](https://developer.mozilla.org/en-US/docs/Web/API/Notification). If
+ # present, "title" and "body" fields override
+ # [google.firebase.fcm.v1.Notification.title] and
+ # [google.firebase.fcm.v1.Notification.body].
+ "a_key": "", # Properties of the object.
+ },
+ "fcmOptions": { # Options for features provided by the FCM SDK for Web. # Options for features provided by the FCM SDK for Web.
+ "analyticsLabel": "A String", # Label associated with the message's analytics data.
+ "link": "A String", # The link to open when the user clicks on the notification.
+ # For all URL values, HTTPS is required.
+ },
+ "headers": { # HTTP headers defined in webpush protocol. Refer to
+ # [Webpush protocol](https://tools.ietf.org/html/rfc8030#section-5) for
+ # supported headers, e.g. "TTL": "15".
+ "a_key": "A String",
+ },
+ "data": { # Arbitrary key/value payload. If present, it will override
+ # google.firebase.fcm.v1.Message.data.
+ "a_key": "A String",
+ },
},
- "condition": "A String", # Condition to send a message to,
- # e.g. "'foo' in topics && 'bar' in topics".
+ "name": "A String", # Output Only. The identifier of the message sent, in the format of
+ # `projects/*/messages/{message_id}`.
}</pre>
</div>