Hangouts Chat API . spaces . messages

Instance Methods

create(parent, body, threadKey=None, x__xgafv=None)

Creates a message.

delete(name, x__xgafv=None)

Deletes a message.

get(name, x__xgafv=None)

Returns a message.

update(name, body, updateMask=None, x__xgafv=None)

Updates a message.

Method Details

create(parent, body, threadKey=None, x__xgafv=None)
Creates a message.

Args:
  parent: string, Required. Space resource name, in the form "spaces/*".
Example: spaces/AAAAMpdlehY (required)
  body: object, The request body. (required)
    The object takes the form of:

{ # A message in Hangouts Chat.
    "actionResponse": { # Parameters that a bot can use to configure how it's response is posted. # Input only. Parameters that a bot can use to configure how its response is
        # posted.
      "url": "A String", # URL for users to auth or config. (Only for REQUEST_CONFIG response types.)
      "type": "A String", # The type of bot response.
    },
    "name": "A String", # Resource name, in the form "spaces/*/messages/*".
        # 
        # Example: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4
    "thread": { # A thread in Hangouts Chat. # The thread the message belongs to.
      "name": "A String", # Resource name, in the form "spaces/*/threads/*".
          #
          # Example: spaces/AAAAMpdlehY/threads/UMxbHmzDlr4
    },
    "space": { # A room or DM in Hangouts Chat. # The space the message belongs to.
      "displayName": "A String", # Output only. The display name (only if the space is a room).
      "type": "A String", # Output only. The type of a space.
      "name": "A String", # Resource name of the space, in the form "spaces/*".
          #
          # Example: spaces/AAAAMpdlehYs
    },
    "text": "A String", # Plain-text body of the message.
    "fallbackText": "A String", # A plain-text description of the message's cards, used when the actual cards
        # cannot be displayed (e.g. mobile notifications).
    "annotations": [ # Output only. Annotations associated with the text in this message.
      { # Annotations associated with the plain-text body of the message.
          #
          # Example plain-text message body:
          # ```
          # Hello @FooBot how are you!"
          # ```
          #
          # The corresponding annotations metadata:
          # ```
          # "annotations":[{
          #   "type":"USER_MENTION",
          #   "startIndex":6,
          #   "length":7,
          #   "userMention": {
          #     "user": {
          #       "name":"users/107946847022116401880",
          #       "displayName":"FooBot",
          #       "avatarUrl":"https://goo.gl/aeDtrS",
          #       "type":"BOT"
          #     },
          #     "type":"MENTION"
          #    }
          # }]
          # ```
        "userMention": { # Annotation metadata for user mentions (@). # The metadata of user mention.
          "type": "A String", # The type of user mention.
          "user": { # A user in Hangouts Chat. # The user mentioned.
            "displayName": "A String", # The user's display name.
            "type": "A String", # User type.
            "name": "A String", # Resource name, in the format "users/*".
          },
        },
        "length": 42, # Length of the substring in the plain-text message body this annotation
            # corresponds to.
        "type": "A String", # The type of this annotation.
        "startIndex": 42, # Start index (0-based, inclusive) in the plain-text message body this
            # annotation corresponds to.
      },
    ],
    "argumentText": "A String", # Plain-text body of the message with all bot mentions stripped out.
    "cards": [ # Rich, formatted and interactive cards that can be used to display UI
        # elements such as: formatted texts, buttons, clickable images. Cards are
        # normally displayed below the plain-text body of the message.
      { # A card is a UI element that can contain UI widgets such as texts, images.
        "cardActions": [ # The actions of this card.
          { # A card action is
              # the action associated with the card. For an invoice card, a
              # typical action would be: delete invoice, email invoice or open the
              # invoice in browser.
            "actionLabel": "A String", # The label used to be displayed in the action menu item.
            "onClick": { # An onclick action (e.g. open a link). # The onclick action for this action item.
              "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                "url": "A String", # The URL to open.
              },
              "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                  # For example, an Apps Script can be invoked to handle the form.
                "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                    # clicked/activated.
                "parameters": [ # List of action parameters.
                  { # List of string parameters to supply when the action method is invoked.
                      # For example, consider three snooze buttons: snooze now, snooze 1 day,
                      # snooze next week. You might use action method = snooze(), passing the
                      # snooze type and snooze time in the list of string parameters.
                    "value": "A String", # The value of the parameter.
                    "key": "A String", # The name of the parameter for the action script.
                  },
                ],
              },
            },
          },
        ],
        "sections": [ # Sections are separated by a line divider.
          { # A section contains a collection of widgets that are rendered
              # (vertically) in the order that they are specified. Across all platforms,
              # cards have a narrow fixed width, so
              # there is currently no need for layout properties (e.g. float).
            "widgets": [ # A section must contain at least 1 widget.
              { # A widget is a UI element that presents texts, images, etc.
                "buttons": [ # A list of buttons. Buttons is also oneof data and only one of these
                    # fields should be set.
                  { # A button. Can be a text button or an image button.
                    "imageButton": { # An image button with an onclick action. # A button with image and onclick action.
                      "iconUrl": "A String", # The icon specified by a URL.
                      "name": "A String", # The name of this image_button which will be used for accessibility.
                          # Default value will be provided if developers don't specify.
                      "onClick": { # An onclick action (e.g. open a link). # The onclick action.
                        "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                          "url": "A String", # The URL to open.
                        },
                        "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                            # For example, an Apps Script can be invoked to handle the form.
                          "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                              # clicked/activated.
                          "parameters": [ # List of action parameters.
                            { # List of string parameters to supply when the action method is invoked.
                                # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                # snooze next week. You might use action method = snooze(), passing the
                                # snooze type and snooze time in the list of string parameters.
                              "value": "A String", # The value of the parameter.
                              "key": "A String", # The name of the parameter for the action script.
                            },
                          ],
                        },
                      },
                      "icon": "A String", # The icon specified by an enum that indices to an icon provided by Chat
                          # API.
                    },
                    "textButton": { # A button with text and onclick action. # A button with text and onclick action.
                      "text": "A String", # The text of the button.
                      "onClick": { # An onclick action (e.g. open a link). # The onclick action of the button.
                        "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                          "url": "A String", # The URL to open.
                        },
                        "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                            # For example, an Apps Script can be invoked to handle the form.
                          "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                              # clicked/activated.
                          "parameters": [ # List of action parameters.
                            { # List of string parameters to supply when the action method is invoked.
                                # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                # snooze next week. You might use action method = snooze(), passing the
                                # snooze type and snooze time in the list of string parameters.
                              "value": "A String", # The value of the parameter.
                              "key": "A String", # The name of the parameter for the action script.
                            },
                          ],
                        },
                      },
                    },
                  },
                ],
                "keyValue": { # A UI element contains a key (label) and a value (content). And this # Display a key value item in this widget.
                    # element may also contain some actions such as onclick button.
                  "contentMultiline": True or False, # If the content should be multiline.
                  "bottomLabel": "A String", # The text of the bottom label. Formatted text supported.
                  "topLabel": "A String", # The text of the top label. Formatted text supported.
                  "button": { # A button. Can be a text button or an image button. # A button that can be clicked to trigger an action.
                    "imageButton": { # An image button with an onclick action. # A button with image and onclick action.
                      "iconUrl": "A String", # The icon specified by a URL.
                      "name": "A String", # The name of this image_button which will be used for accessibility.
                          # Default value will be provided if developers don't specify.
                      "onClick": { # An onclick action (e.g. open a link). # The onclick action.
                        "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                          "url": "A String", # The URL to open.
                        },
                        "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                            # For example, an Apps Script can be invoked to handle the form.
                          "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                              # clicked/activated.
                          "parameters": [ # List of action parameters.
                            { # List of string parameters to supply when the action method is invoked.
                                # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                # snooze next week. You might use action method = snooze(), passing the
                                # snooze type and snooze time in the list of string parameters.
                              "value": "A String", # The value of the parameter.
                              "key": "A String", # The name of the parameter for the action script.
                            },
                          ],
                        },
                      },
                      "icon": "A String", # The icon specified by an enum that indices to an icon provided by Chat
                          # API.
                    },
                    "textButton": { # A button with text and onclick action. # A button with text and onclick action.
                      "text": "A String", # The text of the button.
                      "onClick": { # An onclick action (e.g. open a link). # The onclick action of the button.
                        "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                          "url": "A String", # The URL to open.
                        },
                        "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                            # For example, an Apps Script can be invoked to handle the form.
                          "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                              # clicked/activated.
                          "parameters": [ # List of action parameters.
                            { # List of string parameters to supply when the action method is invoked.
                                # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                # snooze next week. You might use action method = snooze(), passing the
                                # snooze type and snooze time in the list of string parameters.
                              "value": "A String", # The value of the parameter.
                              "key": "A String", # The name of the parameter for the action script.
                            },
                          ],
                        },
                      },
                    },
                  },
                  "content": "A String", # The text of the content. Formatted text supported and always required.
                  "iconUrl": "A String", # The icon specified by a URL.
                  "onClick": { # An onclick action (e.g. open a link). # The onclick action. Only the top label, bottom label and content region
                      # are clickable.
                    "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                      "url": "A String", # The URL to open.
                    },
                    "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                        # For example, an Apps Script can be invoked to handle the form.
                      "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                          # clicked/activated.
                      "parameters": [ # List of action parameters.
                        { # List of string parameters to supply when the action method is invoked.
                            # For example, consider three snooze buttons: snooze now, snooze 1 day,
                            # snooze next week. You might use action method = snooze(), passing the
                            # snooze type and snooze time in the list of string parameters.
                          "value": "A String", # The value of the parameter.
                          "key": "A String", # The name of the parameter for the action script.
                        },
                      ],
                    },
                  },
                  "icon": "A String", # An enum value that will be replaced by the Chat API with the
                      # corresponding icon image.
                },
                "image": { # An image that is specified by a URL and can have an onclick action. # Display an image in this widget.
                  "aspectRatio": 3.14, # The aspect ratio of this image (width/height).
                  "imageUrl": "A String", # The URL of the image.
                  "onClick": { # An onclick action (e.g. open a link). # The onclick action.
                    "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                      "url": "A String", # The URL to open.
                    },
                    "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                        # For example, an Apps Script can be invoked to handle the form.
                      "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                          # clicked/activated.
                      "parameters": [ # List of action parameters.
                        { # List of string parameters to supply when the action method is invoked.
                            # For example, consider three snooze buttons: snooze now, snooze 1 day,
                            # snooze next week. You might use action method = snooze(), passing the
                            # snooze type and snooze time in the list of string parameters.
                          "value": "A String", # The value of the parameter.
                          "key": "A String", # The name of the parameter for the action script.
                        },
                      ],
                    },
                  },
                },
                "textParagraph": { # A paragraph of text. Formatted text supported. # Display a text paragraph in this widget.
                  "text": "A String",
                },
              },
            ],
            "header": "A String", # The header of the section, text formatted supported.
          },
        ],
        "name": "A String", # Name of the card.
        "header": { # The header of the card. A header usually contains a title and an image.
          "imageStyle": "A String", # The image's type (e.g. square border or circular border).
          "imageUrl": "A String", # The URL of the image in the card header.
          "subtitle": "A String", # The subtitle of the card header.
          "title": "A String", # The title must be specified. The header has a fixed height: if both a
              # title and subtitle is specified, each will take up 1 line. If only the
              # title is specified, it will take up both lines.
        },
      },
    ],
    "previewText": "A String", # Text for generating preview chips. This text will not be displayed to the
        # user, but any links to images, web pages, videos, etc. included here will
        # generate preview chips.
    "createTime": "A String", # Output only. The time at which the message was created in Hangouts Chat
        # server.
    "sender": { # A user in Hangouts Chat. # The user who created the message.
      "displayName": "A String", # The user's display name.
      "type": "A String", # User type.
      "name": "A String", # Resource name, in the format "users/*".
    },
  }

  threadKey: string, Opaque thread identifier string that can be specified to group messages
into a single thread. If this is the first message with a given thread
identifier, a new thread is created. Subsequent messages with the same
thread identifier will be posted into the same thread. This relieves bots
and webhooks from having to store the Hangouts Chat thread ID of a thread (created earlier by them) to post
further updates to it.

Has no effect if thread field,
corresponding to an existing thread, is set in message.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A message in Hangouts Chat.
      "actionResponse": { # Parameters that a bot can use to configure how it's response is posted. # Input only. Parameters that a bot can use to configure how its response is
          # posted.
        "url": "A String", # URL for users to auth or config. (Only for REQUEST_CONFIG response types.)
        "type": "A String", # The type of bot response.
      },
      "name": "A String", # Resource name, in the form "spaces/*/messages/*".
          #
          # Example: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4
      "thread": { # A thread in Hangouts Chat. # The thread the message belongs to.
        "name": "A String", # Resource name, in the form "spaces/*/threads/*".
            #
            # Example: spaces/AAAAMpdlehY/threads/UMxbHmzDlr4
      },
      "space": { # A room or DM in Hangouts Chat. # The space the message belongs to.
        "displayName": "A String", # Output only. The display name (only if the space is a room).
        "type": "A String", # Output only. The type of a space.
        "name": "A String", # Resource name of the space, in the form "spaces/*".
            #
            # Example: spaces/AAAAMpdlehYs
      },
      "text": "A String", # Plain-text body of the message.
      "fallbackText": "A String", # A plain-text description of the message's cards, used when the actual cards
          # cannot be displayed (e.g. mobile notifications).
      "annotations": [ # Output only. Annotations associated with the text in this message.
        { # Annotations associated with the plain-text body of the message.
            #
            # Example plain-text message body:
            # ```
            # Hello @FooBot how are you!"
            # ```
            #
            # The corresponding annotations metadata:
            # ```
            # "annotations":[{
            #   "type":"USER_MENTION",
            #   "startIndex":6,
            #   "length":7,
            #   "userMention": {
            #     "user": {
            #       "name":"users/107946847022116401880",
            #       "displayName":"FooBot",
            #       "avatarUrl":"https://goo.gl/aeDtrS",
            #       "type":"BOT"
            #     },
            #     "type":"MENTION"
            #    }
            # }]
            # ```
          "userMention": { # Annotation metadata for user mentions (@). # The metadata of user mention.
            "type": "A String", # The type of user mention.
            "user": { # A user in Hangouts Chat. # The user mentioned.
              "displayName": "A String", # The user's display name.
              "type": "A String", # User type.
              "name": "A String", # Resource name, in the format "users/*".
            },
          },
          "length": 42, # Length of the substring in the plain-text message body this annotation
              # corresponds to.
          "type": "A String", # The type of this annotation.
          "startIndex": 42, # Start index (0-based, inclusive) in the plain-text message body this
              # annotation corresponds to.
        },
      ],
      "argumentText": "A String", # Plain-text body of the message with all bot mentions stripped out.
      "cards": [ # Rich, formatted and interactive cards that can be used to display UI
          # elements such as: formatted texts, buttons, clickable images. Cards are
          # normally displayed below the plain-text body of the message.
        { # A card is a UI element that can contain UI widgets such as texts, images.
          "cardActions": [ # The actions of this card.
            { # A card action is
                # the action associated with the card. For an invoice card, a
                # typical action would be: delete invoice, email invoice or open the
                # invoice in browser.
              "actionLabel": "A String", # The label used to be displayed in the action menu item.
              "onClick": { # An onclick action (e.g. open a link). # The onclick action for this action item.
                "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                  "url": "A String", # The URL to open.
                },
                "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                    # For example, an Apps Script can be invoked to handle the form.
                  "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                      # clicked/activated.
                  "parameters": [ # List of action parameters.
                    { # List of string parameters to supply when the action method is invoked.
                        # For example, consider three snooze buttons: snooze now, snooze 1 day,
                        # snooze next week. You might use action method = snooze(), passing the
                        # snooze type and snooze time in the list of string parameters.
                      "value": "A String", # The value of the parameter.
                      "key": "A String", # The name of the parameter for the action script.
                    },
                  ],
                },
              },
            },
          ],
          "sections": [ # Sections are separated by a line divider.
            { # A section contains a collection of widgets that are rendered
                # (vertically) in the order that they are specified. Across all platforms,
                # cards have a narrow fixed width, so
                # there is currently no need for layout properties (e.g. float).
              "widgets": [ # A section must contain at least 1 widget.
                { # A widget is a UI element that presents texts, images, etc.
                  "buttons": [ # A list of buttons. Buttons is also oneof data and only one of these
                      # fields should be set.
                    { # A button. Can be a text button or an image button.
                      "imageButton": { # An image button with an onclick action. # A button with image and onclick action.
                        "iconUrl": "A String", # The icon specified by a URL.
                        "name": "A String", # The name of this image_button which will be used for accessibility.
                            # Default value will be provided if developers don't specify.
                        "onClick": { # An onclick action (e.g. open a link). # The onclick action.
                          "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                            "url": "A String", # The URL to open.
                          },
                          "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                              # For example, an Apps Script can be invoked to handle the form.
                            "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                                # clicked/activated.
                            "parameters": [ # List of action parameters.
                              { # List of string parameters to supply when the action method is invoked.
                                  # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                  # snooze next week. You might use action method = snooze(), passing the
                                  # snooze type and snooze time in the list of string parameters.
                                "value": "A String", # The value of the parameter.
                                "key": "A String", # The name of the parameter for the action script.
                              },
                            ],
                          },
                        },
                        "icon": "A String", # The icon specified by an enum that indices to an icon provided by Chat
                            # API.
                      },
                      "textButton": { # A button with text and onclick action. # A button with text and onclick action.
                        "text": "A String", # The text of the button.
                        "onClick": { # An onclick action (e.g. open a link). # The onclick action of the button.
                          "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                            "url": "A String", # The URL to open.
                          },
                          "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                              # For example, an Apps Script can be invoked to handle the form.
                            "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                                # clicked/activated.
                            "parameters": [ # List of action parameters.
                              { # List of string parameters to supply when the action method is invoked.
                                  # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                  # snooze next week. You might use action method = snooze(), passing the
                                  # snooze type and snooze time in the list of string parameters.
                                "value": "A String", # The value of the parameter.
                                "key": "A String", # The name of the parameter for the action script.
                              },
                            ],
                          },
                        },
                      },
                    },
                  ],
                  "keyValue": { # A UI element contains a key (label) and a value (content). And this # Display a key value item in this widget.
                      # element may also contain some actions such as onclick button.
                    "contentMultiline": True or False, # If the content should be multiline.
                    "bottomLabel": "A String", # The text of the bottom label. Formatted text supported.
                    "topLabel": "A String", # The text of the top label. Formatted text supported.
                    "button": { # A button. Can be a text button or an image button. # A button that can be clicked to trigger an action.
                      "imageButton": { # An image button with an onclick action. # A button with image and onclick action.
                        "iconUrl": "A String", # The icon specified by a URL.
                        "name": "A String", # The name of this image_button which will be used for accessibility.
                            # Default value will be provided if developers don't specify.
                        "onClick": { # An onclick action (e.g. open a link). # The onclick action.
                          "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                            "url": "A String", # The URL to open.
                          },
                          "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                              # For example, an Apps Script can be invoked to handle the form.
                            "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                                # clicked/activated.
                            "parameters": [ # List of action parameters.
                              { # List of string parameters to supply when the action method is invoked.
                                  # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                  # snooze next week. You might use action method = snooze(), passing the
                                  # snooze type and snooze time in the list of string parameters.
                                "value": "A String", # The value of the parameter.
                                "key": "A String", # The name of the parameter for the action script.
                              },
                            ],
                          },
                        },
                        "icon": "A String", # The icon specified by an enum that indices to an icon provided by Chat
                            # API.
                      },
                      "textButton": { # A button with text and onclick action. # A button with text and onclick action.
                        "text": "A String", # The text of the button.
                        "onClick": { # An onclick action (e.g. open a link). # The onclick action of the button.
                          "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                            "url": "A String", # The URL to open.
                          },
                          "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                              # For example, an Apps Script can be invoked to handle the form.
                            "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                                # clicked/activated.
                            "parameters": [ # List of action parameters.
                              { # List of string parameters to supply when the action method is invoked.
                                  # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                  # snooze next week. You might use action method = snooze(), passing the
                                  # snooze type and snooze time in the list of string parameters.
                                "value": "A String", # The value of the parameter.
                                "key": "A String", # The name of the parameter for the action script.
                              },
                            ],
                          },
                        },
                      },
                    },
                    "content": "A String", # The text of the content. Formatted text supported and always required.
                    "iconUrl": "A String", # The icon specified by a URL.
                    "onClick": { # An onclick action (e.g. open a link). # The onclick action. Only the top label, bottom label and content region
                        # are clickable.
                      "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                        "url": "A String", # The URL to open.
                      },
                      "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                          # For example, an Apps Script can be invoked to handle the form.
                        "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                            # clicked/activated.
                        "parameters": [ # List of action parameters.
                          { # List of string parameters to supply when the action method is invoked.
                              # For example, consider three snooze buttons: snooze now, snooze 1 day,
                              # snooze next week. You might use action method = snooze(), passing the
                              # snooze type and snooze time in the list of string parameters.
                            "value": "A String", # The value of the parameter.
                            "key": "A String", # The name of the parameter for the action script.
                          },
                        ],
                      },
                    },
                    "icon": "A String", # An enum value that will be replaced by the Chat API with the
                        # corresponding icon image.
                  },
                  "image": { # An image that is specified by a URL and can have an onclick action. # Display an image in this widget.
                    "aspectRatio": 3.14, # The aspect ratio of this image (width/height).
                    "imageUrl": "A String", # The URL of the image.
                    "onClick": { # An onclick action (e.g. open a link). # The onclick action.
                      "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                        "url": "A String", # The URL to open.
                      },
                      "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                          # For example, an Apps Script can be invoked to handle the form.
                        "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                            # clicked/activated.
                        "parameters": [ # List of action parameters.
                          { # List of string parameters to supply when the action method is invoked.
                              # For example, consider three snooze buttons: snooze now, snooze 1 day,
                              # snooze next week. You might use action method = snooze(), passing the
                              # snooze type and snooze time in the list of string parameters.
                            "value": "A String", # The value of the parameter.
                            "key": "A String", # The name of the parameter for the action script.
                          },
                        ],
                      },
                    },
                  },
                  "textParagraph": { # A paragraph of text. Formatted text supported. # Display a text paragraph in this widget.
                    "text": "A String",
                  },
                },
              ],
              "header": "A String", # The header of the section, text formatted supported.
            },
          ],
          "name": "A String", # Name of the card.
          "header": { # The header of the card. A header usually contains a title and an image.
            "imageStyle": "A String", # The image's type (e.g. square border or circular border).
            "imageUrl": "A String", # The URL of the image in the card header.
            "subtitle": "A String", # The subtitle of the card header.
            "title": "A String", # The title must be specified. The header has a fixed height: if both a
                # title and subtitle is specified, each will take up 1 line. If only the
                # title is specified, it will take up both lines.
          },
        },
      ],
      "previewText": "A String", # Text for generating preview chips. This text will not be displayed to the
          # user, but any links to images, web pages, videos, etc. included here will
          # generate preview chips.
      "createTime": "A String", # Output only. The time at which the message was created in Hangouts Chat
          # server.
      "sender": { # A user in Hangouts Chat. # The user who created the message.
        "displayName": "A String", # The user's display name.
        "type": "A String", # User type.
        "name": "A String", # Resource name, in the format "users/*".
      },
    }
delete(name, x__xgafv=None)
Deletes a message.

Args:
  name: string, Required. Resource name of the message to be deleted, in the form
"spaces/*/messages/*"

Example: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4 (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A generic empty message that you can re-use to avoid defining duplicated
      # empty messages in your APIs. A typical example is to use it as the request
      # or the response type of an API method. For instance:
      #
      #     service Foo {
      #       rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
      #     }
      #
      # The JSON representation for `Empty` is empty JSON object `{}`.
  }
get(name, x__xgafv=None)
Returns a message.

Args:
  name: string, Required. Resource name of the message to be retrieved, in the form
"spaces/*/messages/*".

Example: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4 (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A message in Hangouts Chat.
      "actionResponse": { # Parameters that a bot can use to configure how it's response is posted. # Input only. Parameters that a bot can use to configure how its response is
          # posted.
        "url": "A String", # URL for users to auth or config. (Only for REQUEST_CONFIG response types.)
        "type": "A String", # The type of bot response.
      },
      "name": "A String", # Resource name, in the form "spaces/*/messages/*".
          #
          # Example: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4
      "thread": { # A thread in Hangouts Chat. # The thread the message belongs to.
        "name": "A String", # Resource name, in the form "spaces/*/threads/*".
            #
            # Example: spaces/AAAAMpdlehY/threads/UMxbHmzDlr4
      },
      "space": { # A room or DM in Hangouts Chat. # The space the message belongs to.
        "displayName": "A String", # Output only. The display name (only if the space is a room).
        "type": "A String", # Output only. The type of a space.
        "name": "A String", # Resource name of the space, in the form "spaces/*".
            #
            # Example: spaces/AAAAMpdlehYs
      },
      "text": "A String", # Plain-text body of the message.
      "fallbackText": "A String", # A plain-text description of the message's cards, used when the actual cards
          # cannot be displayed (e.g. mobile notifications).
      "annotations": [ # Output only. Annotations associated with the text in this message.
        { # Annotations associated with the plain-text body of the message.
            #
            # Example plain-text message body:
            # ```
            # Hello @FooBot how are you!"
            # ```
            #
            # The corresponding annotations metadata:
            # ```
            # "annotations":[{
            #   "type":"USER_MENTION",
            #   "startIndex":6,
            #   "length":7,
            #   "userMention": {
            #     "user": {
            #       "name":"users/107946847022116401880",
            #       "displayName":"FooBot",
            #       "avatarUrl":"https://goo.gl/aeDtrS",
            #       "type":"BOT"
            #     },
            #     "type":"MENTION"
            #    }
            # }]
            # ```
          "userMention": { # Annotation metadata for user mentions (@). # The metadata of user mention.
            "type": "A String", # The type of user mention.
            "user": { # A user in Hangouts Chat. # The user mentioned.
              "displayName": "A String", # The user's display name.
              "type": "A String", # User type.
              "name": "A String", # Resource name, in the format "users/*".
            },
          },
          "length": 42, # Length of the substring in the plain-text message body this annotation
              # corresponds to.
          "type": "A String", # The type of this annotation.
          "startIndex": 42, # Start index (0-based, inclusive) in the plain-text message body this
              # annotation corresponds to.
        },
      ],
      "argumentText": "A String", # Plain-text body of the message with all bot mentions stripped out.
      "cards": [ # Rich, formatted and interactive cards that can be used to display UI
          # elements such as: formatted texts, buttons, clickable images. Cards are
          # normally displayed below the plain-text body of the message.
        { # A card is a UI element that can contain UI widgets such as texts, images.
          "cardActions": [ # The actions of this card.
            { # A card action is
                # the action associated with the card. For an invoice card, a
                # typical action would be: delete invoice, email invoice or open the
                # invoice in browser.
              "actionLabel": "A String", # The label used to be displayed in the action menu item.
              "onClick": { # An onclick action (e.g. open a link). # The onclick action for this action item.
                "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                  "url": "A String", # The URL to open.
                },
                "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                    # For example, an Apps Script can be invoked to handle the form.
                  "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                      # clicked/activated.
                  "parameters": [ # List of action parameters.
                    { # List of string parameters to supply when the action method is invoked.
                        # For example, consider three snooze buttons: snooze now, snooze 1 day,
                        # snooze next week. You might use action method = snooze(), passing the
                        # snooze type and snooze time in the list of string parameters.
                      "value": "A String", # The value of the parameter.
                      "key": "A String", # The name of the parameter for the action script.
                    },
                  ],
                },
              },
            },
          ],
          "sections": [ # Sections are separated by a line divider.
            { # A section contains a collection of widgets that are rendered
                # (vertically) in the order that they are specified. Across all platforms,
                # cards have a narrow fixed width, so
                # there is currently no need for layout properties (e.g. float).
              "widgets": [ # A section must contain at least 1 widget.
                { # A widget is a UI element that presents texts, images, etc.
                  "buttons": [ # A list of buttons. Buttons is also oneof data and only one of these
                      # fields should be set.
                    { # A button. Can be a text button or an image button.
                      "imageButton": { # An image button with an onclick action. # A button with image and onclick action.
                        "iconUrl": "A String", # The icon specified by a URL.
                        "name": "A String", # The name of this image_button which will be used for accessibility.
                            # Default value will be provided if developers don't specify.
                        "onClick": { # An onclick action (e.g. open a link). # The onclick action.
                          "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                            "url": "A String", # The URL to open.
                          },
                          "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                              # For example, an Apps Script can be invoked to handle the form.
                            "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                                # clicked/activated.
                            "parameters": [ # List of action parameters.
                              { # List of string parameters to supply when the action method is invoked.
                                  # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                  # snooze next week. You might use action method = snooze(), passing the
                                  # snooze type and snooze time in the list of string parameters.
                                "value": "A String", # The value of the parameter.
                                "key": "A String", # The name of the parameter for the action script.
                              },
                            ],
                          },
                        },
                        "icon": "A String", # The icon specified by an enum that indices to an icon provided by Chat
                            # API.
                      },
                      "textButton": { # A button with text and onclick action. # A button with text and onclick action.
                        "text": "A String", # The text of the button.
                        "onClick": { # An onclick action (e.g. open a link). # The onclick action of the button.
                          "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                            "url": "A String", # The URL to open.
                          },
                          "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                              # For example, an Apps Script can be invoked to handle the form.
                            "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                                # clicked/activated.
                            "parameters": [ # List of action parameters.
                              { # List of string parameters to supply when the action method is invoked.
                                  # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                  # snooze next week. You might use action method = snooze(), passing the
                                  # snooze type and snooze time in the list of string parameters.
                                "value": "A String", # The value of the parameter.
                                "key": "A String", # The name of the parameter for the action script.
                              },
                            ],
                          },
                        },
                      },
                    },
                  ],
                  "keyValue": { # A UI element contains a key (label) and a value (content). And this # Display a key value item in this widget.
                      # element may also contain some actions such as onclick button.
                    "contentMultiline": True or False, # If the content should be multiline.
                    "bottomLabel": "A String", # The text of the bottom label. Formatted text supported.
                    "topLabel": "A String", # The text of the top label. Formatted text supported.
                    "button": { # A button. Can be a text button or an image button. # A button that can be clicked to trigger an action.
                      "imageButton": { # An image button with an onclick action. # A button with image and onclick action.
                        "iconUrl": "A String", # The icon specified by a URL.
                        "name": "A String", # The name of this image_button which will be used for accessibility.
                            # Default value will be provided if developers don't specify.
                        "onClick": { # An onclick action (e.g. open a link). # The onclick action.
                          "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                            "url": "A String", # The URL to open.
                          },
                          "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                              # For example, an Apps Script can be invoked to handle the form.
                            "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                                # clicked/activated.
                            "parameters": [ # List of action parameters.
                              { # List of string parameters to supply when the action method is invoked.
                                  # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                  # snooze next week. You might use action method = snooze(), passing the
                                  # snooze type and snooze time in the list of string parameters.
                                "value": "A String", # The value of the parameter.
                                "key": "A String", # The name of the parameter for the action script.
                              },
                            ],
                          },
                        },
                        "icon": "A String", # The icon specified by an enum that indices to an icon provided by Chat
                            # API.
                      },
                      "textButton": { # A button with text and onclick action. # A button with text and onclick action.
                        "text": "A String", # The text of the button.
                        "onClick": { # An onclick action (e.g. open a link). # The onclick action of the button.
                          "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                            "url": "A String", # The URL to open.
                          },
                          "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                              # For example, an Apps Script can be invoked to handle the form.
                            "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                                # clicked/activated.
                            "parameters": [ # List of action parameters.
                              { # List of string parameters to supply when the action method is invoked.
                                  # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                  # snooze next week. You might use action method = snooze(), passing the
                                  # snooze type and snooze time in the list of string parameters.
                                "value": "A String", # The value of the parameter.
                                "key": "A String", # The name of the parameter for the action script.
                              },
                            ],
                          },
                        },
                      },
                    },
                    "content": "A String", # The text of the content. Formatted text supported and always required.
                    "iconUrl": "A String", # The icon specified by a URL.
                    "onClick": { # An onclick action (e.g. open a link). # The onclick action. Only the top label, bottom label and content region
                        # are clickable.
                      "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                        "url": "A String", # The URL to open.
                      },
                      "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                          # For example, an Apps Script can be invoked to handle the form.
                        "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                            # clicked/activated.
                        "parameters": [ # List of action parameters.
                          { # List of string parameters to supply when the action method is invoked.
                              # For example, consider three snooze buttons: snooze now, snooze 1 day,
                              # snooze next week. You might use action method = snooze(), passing the
                              # snooze type and snooze time in the list of string parameters.
                            "value": "A String", # The value of the parameter.
                            "key": "A String", # The name of the parameter for the action script.
                          },
                        ],
                      },
                    },
                    "icon": "A String", # An enum value that will be replaced by the Chat API with the
                        # corresponding icon image.
                  },
                  "image": { # An image that is specified by a URL and can have an onclick action. # Display an image in this widget.
                    "aspectRatio": 3.14, # The aspect ratio of this image (width/height).
                    "imageUrl": "A String", # The URL of the image.
                    "onClick": { # An onclick action (e.g. open a link). # The onclick action.
                      "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                        "url": "A String", # The URL to open.
                      },
                      "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                          # For example, an Apps Script can be invoked to handle the form.
                        "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                            # clicked/activated.
                        "parameters": [ # List of action parameters.
                          { # List of string parameters to supply when the action method is invoked.
                              # For example, consider three snooze buttons: snooze now, snooze 1 day,
                              # snooze next week. You might use action method = snooze(), passing the
                              # snooze type and snooze time in the list of string parameters.
                            "value": "A String", # The value of the parameter.
                            "key": "A String", # The name of the parameter for the action script.
                          },
                        ],
                      },
                    },
                  },
                  "textParagraph": { # A paragraph of text. Formatted text supported. # Display a text paragraph in this widget.
                    "text": "A String",
                  },
                },
              ],
              "header": "A String", # The header of the section, text formatted supported.
            },
          ],
          "name": "A String", # Name of the card.
          "header": { # The header of the card. A header usually contains a title and an image.
            "imageStyle": "A String", # The image's type (e.g. square border or circular border).
            "imageUrl": "A String", # The URL of the image in the card header.
            "subtitle": "A String", # The subtitle of the card header.
            "title": "A String", # The title must be specified. The header has a fixed height: if both a
                # title and subtitle is specified, each will take up 1 line. If only the
                # title is specified, it will take up both lines.
          },
        },
      ],
      "previewText": "A String", # Text for generating preview chips. This text will not be displayed to the
          # user, but any links to images, web pages, videos, etc. included here will
          # generate preview chips.
      "createTime": "A String", # Output only. The time at which the message was created in Hangouts Chat
          # server.
      "sender": { # A user in Hangouts Chat. # The user who created the message.
        "displayName": "A String", # The user's display name.
        "type": "A String", # User type.
        "name": "A String", # Resource name, in the format "users/*".
      },
    }
update(name, body, updateMask=None, x__xgafv=None)
Updates a message.

Args:
  name: string, Resource name, in the form "spaces/*/messages/*".

Example: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4 (required)
  body: object, The request body. (required)
    The object takes the form of:

{ # A message in Hangouts Chat.
    "actionResponse": { # Parameters that a bot can use to configure how it's response is posted. # Input only. Parameters that a bot can use to configure how its response is
        # posted.
      "url": "A String", # URL for users to auth or config. (Only for REQUEST_CONFIG response types.)
      "type": "A String", # The type of bot response.
    },
    "name": "A String", # Resource name, in the form "spaces/*/messages/*".
        # 
        # Example: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4
    "thread": { # A thread in Hangouts Chat. # The thread the message belongs to.
      "name": "A String", # Resource name, in the form "spaces/*/threads/*".
          #
          # Example: spaces/AAAAMpdlehY/threads/UMxbHmzDlr4
    },
    "space": { # A room or DM in Hangouts Chat. # The space the message belongs to.
      "displayName": "A String", # Output only. The display name (only if the space is a room).
      "type": "A String", # Output only. The type of a space.
      "name": "A String", # Resource name of the space, in the form "spaces/*".
          #
          # Example: spaces/AAAAMpdlehYs
    },
    "text": "A String", # Plain-text body of the message.
    "fallbackText": "A String", # A plain-text description of the message's cards, used when the actual cards
        # cannot be displayed (e.g. mobile notifications).
    "annotations": [ # Output only. Annotations associated with the text in this message.
      { # Annotations associated with the plain-text body of the message.
          #
          # Example plain-text message body:
          # ```
          # Hello @FooBot how are you!"
          # ```
          #
          # The corresponding annotations metadata:
          # ```
          # "annotations":[{
          #   "type":"USER_MENTION",
          #   "startIndex":6,
          #   "length":7,
          #   "userMention": {
          #     "user": {
          #       "name":"users/107946847022116401880",
          #       "displayName":"FooBot",
          #       "avatarUrl":"https://goo.gl/aeDtrS",
          #       "type":"BOT"
          #     },
          #     "type":"MENTION"
          #    }
          # }]
          # ```
        "userMention": { # Annotation metadata for user mentions (@). # The metadata of user mention.
          "type": "A String", # The type of user mention.
          "user": { # A user in Hangouts Chat. # The user mentioned.
            "displayName": "A String", # The user's display name.
            "type": "A String", # User type.
            "name": "A String", # Resource name, in the format "users/*".
          },
        },
        "length": 42, # Length of the substring in the plain-text message body this annotation
            # corresponds to.
        "type": "A String", # The type of this annotation.
        "startIndex": 42, # Start index (0-based, inclusive) in the plain-text message body this
            # annotation corresponds to.
      },
    ],
    "argumentText": "A String", # Plain-text body of the message with all bot mentions stripped out.
    "cards": [ # Rich, formatted and interactive cards that can be used to display UI
        # elements such as: formatted texts, buttons, clickable images. Cards are
        # normally displayed below the plain-text body of the message.
      { # A card is a UI element that can contain UI widgets such as texts, images.
        "cardActions": [ # The actions of this card.
          { # A card action is
              # the action associated with the card. For an invoice card, a
              # typical action would be: delete invoice, email invoice or open the
              # invoice in browser.
            "actionLabel": "A String", # The label used to be displayed in the action menu item.
            "onClick": { # An onclick action (e.g. open a link). # The onclick action for this action item.
              "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                "url": "A String", # The URL to open.
              },
              "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                  # For example, an Apps Script can be invoked to handle the form.
                "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                    # clicked/activated.
                "parameters": [ # List of action parameters.
                  { # List of string parameters to supply when the action method is invoked.
                      # For example, consider three snooze buttons: snooze now, snooze 1 day,
                      # snooze next week. You might use action method = snooze(), passing the
                      # snooze type and snooze time in the list of string parameters.
                    "value": "A String", # The value of the parameter.
                    "key": "A String", # The name of the parameter for the action script.
                  },
                ],
              },
            },
          },
        ],
        "sections": [ # Sections are separated by a line divider.
          { # A section contains a collection of widgets that are rendered
              # (vertically) in the order that they are specified. Across all platforms,
              # cards have a narrow fixed width, so
              # there is currently no need for layout properties (e.g. float).
            "widgets": [ # A section must contain at least 1 widget.
              { # A widget is a UI element that presents texts, images, etc.
                "buttons": [ # A list of buttons. Buttons is also oneof data and only one of these
                    # fields should be set.
                  { # A button. Can be a text button or an image button.
                    "imageButton": { # An image button with an onclick action. # A button with image and onclick action.
                      "iconUrl": "A String", # The icon specified by a URL.
                      "name": "A String", # The name of this image_button which will be used for accessibility.
                          # Default value will be provided if developers don't specify.
                      "onClick": { # An onclick action (e.g. open a link). # The onclick action.
                        "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                          "url": "A String", # The URL to open.
                        },
                        "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                            # For example, an Apps Script can be invoked to handle the form.
                          "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                              # clicked/activated.
                          "parameters": [ # List of action parameters.
                            { # List of string parameters to supply when the action method is invoked.
                                # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                # snooze next week. You might use action method = snooze(), passing the
                                # snooze type and snooze time in the list of string parameters.
                              "value": "A String", # The value of the parameter.
                              "key": "A String", # The name of the parameter for the action script.
                            },
                          ],
                        },
                      },
                      "icon": "A String", # The icon specified by an enum that indices to an icon provided by Chat
                          # API.
                    },
                    "textButton": { # A button with text and onclick action. # A button with text and onclick action.
                      "text": "A String", # The text of the button.
                      "onClick": { # An onclick action (e.g. open a link). # The onclick action of the button.
                        "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                          "url": "A String", # The URL to open.
                        },
                        "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                            # For example, an Apps Script can be invoked to handle the form.
                          "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                              # clicked/activated.
                          "parameters": [ # List of action parameters.
                            { # List of string parameters to supply when the action method is invoked.
                                # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                # snooze next week. You might use action method = snooze(), passing the
                                # snooze type and snooze time in the list of string parameters.
                              "value": "A String", # The value of the parameter.
                              "key": "A String", # The name of the parameter for the action script.
                            },
                          ],
                        },
                      },
                    },
                  },
                ],
                "keyValue": { # A UI element contains a key (label) and a value (content). And this # Display a key value item in this widget.
                    # element may also contain some actions such as onclick button.
                  "contentMultiline": True or False, # If the content should be multiline.
                  "bottomLabel": "A String", # The text of the bottom label. Formatted text supported.
                  "topLabel": "A String", # The text of the top label. Formatted text supported.
                  "button": { # A button. Can be a text button or an image button. # A button that can be clicked to trigger an action.
                    "imageButton": { # An image button with an onclick action. # A button with image and onclick action.
                      "iconUrl": "A String", # The icon specified by a URL.
                      "name": "A String", # The name of this image_button which will be used for accessibility.
                          # Default value will be provided if developers don't specify.
                      "onClick": { # An onclick action (e.g. open a link). # The onclick action.
                        "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                          "url": "A String", # The URL to open.
                        },
                        "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                            # For example, an Apps Script can be invoked to handle the form.
                          "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                              # clicked/activated.
                          "parameters": [ # List of action parameters.
                            { # List of string parameters to supply when the action method is invoked.
                                # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                # snooze next week. You might use action method = snooze(), passing the
                                # snooze type and snooze time in the list of string parameters.
                              "value": "A String", # The value of the parameter.
                              "key": "A String", # The name of the parameter for the action script.
                            },
                          ],
                        },
                      },
                      "icon": "A String", # The icon specified by an enum that indices to an icon provided by Chat
                          # API.
                    },
                    "textButton": { # A button with text and onclick action. # A button with text and onclick action.
                      "text": "A String", # The text of the button.
                      "onClick": { # An onclick action (e.g. open a link). # The onclick action of the button.
                        "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                          "url": "A String", # The URL to open.
                        },
                        "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                            # For example, an Apps Script can be invoked to handle the form.
                          "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                              # clicked/activated.
                          "parameters": [ # List of action parameters.
                            { # List of string parameters to supply when the action method is invoked.
                                # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                # snooze next week. You might use action method = snooze(), passing the
                                # snooze type and snooze time in the list of string parameters.
                              "value": "A String", # The value of the parameter.
                              "key": "A String", # The name of the parameter for the action script.
                            },
                          ],
                        },
                      },
                    },
                  },
                  "content": "A String", # The text of the content. Formatted text supported and always required.
                  "iconUrl": "A String", # The icon specified by a URL.
                  "onClick": { # An onclick action (e.g. open a link). # The onclick action. Only the top label, bottom label and content region
                      # are clickable.
                    "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                      "url": "A String", # The URL to open.
                    },
                    "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                        # For example, an Apps Script can be invoked to handle the form.
                      "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                          # clicked/activated.
                      "parameters": [ # List of action parameters.
                        { # List of string parameters to supply when the action method is invoked.
                            # For example, consider three snooze buttons: snooze now, snooze 1 day,
                            # snooze next week. You might use action method = snooze(), passing the
                            # snooze type and snooze time in the list of string parameters.
                          "value": "A String", # The value of the parameter.
                          "key": "A String", # The name of the parameter for the action script.
                        },
                      ],
                    },
                  },
                  "icon": "A String", # An enum value that will be replaced by the Chat API with the
                      # corresponding icon image.
                },
                "image": { # An image that is specified by a URL and can have an onclick action. # Display an image in this widget.
                  "aspectRatio": 3.14, # The aspect ratio of this image (width/height).
                  "imageUrl": "A String", # The URL of the image.
                  "onClick": { # An onclick action (e.g. open a link). # The onclick action.
                    "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                      "url": "A String", # The URL to open.
                    },
                    "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                        # For example, an Apps Script can be invoked to handle the form.
                      "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                          # clicked/activated.
                      "parameters": [ # List of action parameters.
                        { # List of string parameters to supply when the action method is invoked.
                            # For example, consider three snooze buttons: snooze now, snooze 1 day,
                            # snooze next week. You might use action method = snooze(), passing the
                            # snooze type and snooze time in the list of string parameters.
                          "value": "A String", # The value of the parameter.
                          "key": "A String", # The name of the parameter for the action script.
                        },
                      ],
                    },
                  },
                },
                "textParagraph": { # A paragraph of text. Formatted text supported. # Display a text paragraph in this widget.
                  "text": "A String",
                },
              },
            ],
            "header": "A String", # The header of the section, text formatted supported.
          },
        ],
        "name": "A String", # Name of the card.
        "header": { # The header of the card. A header usually contains a title and an image.
          "imageStyle": "A String", # The image's type (e.g. square border or circular border).
          "imageUrl": "A String", # The URL of the image in the card header.
          "subtitle": "A String", # The subtitle of the card header.
          "title": "A String", # The title must be specified. The header has a fixed height: if both a
              # title and subtitle is specified, each will take up 1 line. If only the
              # title is specified, it will take up both lines.
        },
      },
    ],
    "previewText": "A String", # Text for generating preview chips. This text will not be displayed to the
        # user, but any links to images, web pages, videos, etc. included here will
        # generate preview chips.
    "createTime": "A String", # Output only. The time at which the message was created in Hangouts Chat
        # server.
    "sender": { # A user in Hangouts Chat. # The user who created the message.
      "displayName": "A String", # The user's display name.
      "type": "A String", # User type.
      "name": "A String", # Resource name, in the format "users/*".
    },
  }

  updateMask: string, Required. The field paths to be updated.

Currently supported field paths: "text", "cards".
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A message in Hangouts Chat.
      "actionResponse": { # Parameters that a bot can use to configure how it's response is posted. # Input only. Parameters that a bot can use to configure how its response is
          # posted.
        "url": "A String", # URL for users to auth or config. (Only for REQUEST_CONFIG response types.)
        "type": "A String", # The type of bot response.
      },
      "name": "A String", # Resource name, in the form "spaces/*/messages/*".
          #
          # Example: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4
      "thread": { # A thread in Hangouts Chat. # The thread the message belongs to.
        "name": "A String", # Resource name, in the form "spaces/*/threads/*".
            #
            # Example: spaces/AAAAMpdlehY/threads/UMxbHmzDlr4
      },
      "space": { # A room or DM in Hangouts Chat. # The space the message belongs to.
        "displayName": "A String", # Output only. The display name (only if the space is a room).
        "type": "A String", # Output only. The type of a space.
        "name": "A String", # Resource name of the space, in the form "spaces/*".
            #
            # Example: spaces/AAAAMpdlehYs
      },
      "text": "A String", # Plain-text body of the message.
      "fallbackText": "A String", # A plain-text description of the message's cards, used when the actual cards
          # cannot be displayed (e.g. mobile notifications).
      "annotations": [ # Output only. Annotations associated with the text in this message.
        { # Annotations associated with the plain-text body of the message.
            #
            # Example plain-text message body:
            # ```
            # Hello @FooBot how are you!"
            # ```
            #
            # The corresponding annotations metadata:
            # ```
            # "annotations":[{
            #   "type":"USER_MENTION",
            #   "startIndex":6,
            #   "length":7,
            #   "userMention": {
            #     "user": {
            #       "name":"users/107946847022116401880",
            #       "displayName":"FooBot",
            #       "avatarUrl":"https://goo.gl/aeDtrS",
            #       "type":"BOT"
            #     },
            #     "type":"MENTION"
            #    }
            # }]
            # ```
          "userMention": { # Annotation metadata for user mentions (@). # The metadata of user mention.
            "type": "A String", # The type of user mention.
            "user": { # A user in Hangouts Chat. # The user mentioned.
              "displayName": "A String", # The user's display name.
              "type": "A String", # User type.
              "name": "A String", # Resource name, in the format "users/*".
            },
          },
          "length": 42, # Length of the substring in the plain-text message body this annotation
              # corresponds to.
          "type": "A String", # The type of this annotation.
          "startIndex": 42, # Start index (0-based, inclusive) in the plain-text message body this
              # annotation corresponds to.
        },
      ],
      "argumentText": "A String", # Plain-text body of the message with all bot mentions stripped out.
      "cards": [ # Rich, formatted and interactive cards that can be used to display UI
          # elements such as: formatted texts, buttons, clickable images. Cards are
          # normally displayed below the plain-text body of the message.
        { # A card is a UI element that can contain UI widgets such as texts, images.
          "cardActions": [ # The actions of this card.
            { # A card action is
                # the action associated with the card. For an invoice card, a
                # typical action would be: delete invoice, email invoice or open the
                # invoice in browser.
              "actionLabel": "A String", # The label used to be displayed in the action menu item.
              "onClick": { # An onclick action (e.g. open a link). # The onclick action for this action item.
                "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                  "url": "A String", # The URL to open.
                },
                "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                    # For example, an Apps Script can be invoked to handle the form.
                  "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                      # clicked/activated.
                  "parameters": [ # List of action parameters.
                    { # List of string parameters to supply when the action method is invoked.
                        # For example, consider three snooze buttons: snooze now, snooze 1 day,
                        # snooze next week. You might use action method = snooze(), passing the
                        # snooze type and snooze time in the list of string parameters.
                      "value": "A String", # The value of the parameter.
                      "key": "A String", # The name of the parameter for the action script.
                    },
                  ],
                },
              },
            },
          ],
          "sections": [ # Sections are separated by a line divider.
            { # A section contains a collection of widgets that are rendered
                # (vertically) in the order that they are specified. Across all platforms,
                # cards have a narrow fixed width, so
                # there is currently no need for layout properties (e.g. float).
              "widgets": [ # A section must contain at least 1 widget.
                { # A widget is a UI element that presents texts, images, etc.
                  "buttons": [ # A list of buttons. Buttons is also oneof data and only one of these
                      # fields should be set.
                    { # A button. Can be a text button or an image button.
                      "imageButton": { # An image button with an onclick action. # A button with image and onclick action.
                        "iconUrl": "A String", # The icon specified by a URL.
                        "name": "A String", # The name of this image_button which will be used for accessibility.
                            # Default value will be provided if developers don't specify.
                        "onClick": { # An onclick action (e.g. open a link). # The onclick action.
                          "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                            "url": "A String", # The URL to open.
                          },
                          "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                              # For example, an Apps Script can be invoked to handle the form.
                            "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                                # clicked/activated.
                            "parameters": [ # List of action parameters.
                              { # List of string parameters to supply when the action method is invoked.
                                  # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                  # snooze next week. You might use action method = snooze(), passing the
                                  # snooze type and snooze time in the list of string parameters.
                                "value": "A String", # The value of the parameter.
                                "key": "A String", # The name of the parameter for the action script.
                              },
                            ],
                          },
                        },
                        "icon": "A String", # The icon specified by an enum that indices to an icon provided by Chat
                            # API.
                      },
                      "textButton": { # A button with text and onclick action. # A button with text and onclick action.
                        "text": "A String", # The text of the button.
                        "onClick": { # An onclick action (e.g. open a link). # The onclick action of the button.
                          "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                            "url": "A String", # The URL to open.
                          },
                          "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                              # For example, an Apps Script can be invoked to handle the form.
                            "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                                # clicked/activated.
                            "parameters": [ # List of action parameters.
                              { # List of string parameters to supply when the action method is invoked.
                                  # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                  # snooze next week. You might use action method = snooze(), passing the
                                  # snooze type and snooze time in the list of string parameters.
                                "value": "A String", # The value of the parameter.
                                "key": "A String", # The name of the parameter for the action script.
                              },
                            ],
                          },
                        },
                      },
                    },
                  ],
                  "keyValue": { # A UI element contains a key (label) and a value (content). And this # Display a key value item in this widget.
                      # element may also contain some actions such as onclick button.
                    "contentMultiline": True or False, # If the content should be multiline.
                    "bottomLabel": "A String", # The text of the bottom label. Formatted text supported.
                    "topLabel": "A String", # The text of the top label. Formatted text supported.
                    "button": { # A button. Can be a text button or an image button. # A button that can be clicked to trigger an action.
                      "imageButton": { # An image button with an onclick action. # A button with image and onclick action.
                        "iconUrl": "A String", # The icon specified by a URL.
                        "name": "A String", # The name of this image_button which will be used for accessibility.
                            # Default value will be provided if developers don't specify.
                        "onClick": { # An onclick action (e.g. open a link). # The onclick action.
                          "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                            "url": "A String", # The URL to open.
                          },
                          "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                              # For example, an Apps Script can be invoked to handle the form.
                            "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                                # clicked/activated.
                            "parameters": [ # List of action parameters.
                              { # List of string parameters to supply when the action method is invoked.
                                  # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                  # snooze next week. You might use action method = snooze(), passing the
                                  # snooze type and snooze time in the list of string parameters.
                                "value": "A String", # The value of the parameter.
                                "key": "A String", # The name of the parameter for the action script.
                              },
                            ],
                          },
                        },
                        "icon": "A String", # The icon specified by an enum that indices to an icon provided by Chat
                            # API.
                      },
                      "textButton": { # A button with text and onclick action. # A button with text and onclick action.
                        "text": "A String", # The text of the button.
                        "onClick": { # An onclick action (e.g. open a link). # The onclick action of the button.
                          "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                            "url": "A String", # The URL to open.
                          },
                          "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                              # For example, an Apps Script can be invoked to handle the form.
                            "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                                # clicked/activated.
                            "parameters": [ # List of action parameters.
                              { # List of string parameters to supply when the action method is invoked.
                                  # For example, consider three snooze buttons: snooze now, snooze 1 day,
                                  # snooze next week. You might use action method = snooze(), passing the
                                  # snooze type and snooze time in the list of string parameters.
                                "value": "A String", # The value of the parameter.
                                "key": "A String", # The name of the parameter for the action script.
                              },
                            ],
                          },
                        },
                      },
                    },
                    "content": "A String", # The text of the content. Formatted text supported and always required.
                    "iconUrl": "A String", # The icon specified by a URL.
                    "onClick": { # An onclick action (e.g. open a link). # The onclick action. Only the top label, bottom label and content region
                        # are clickable.
                      "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                        "url": "A String", # The URL to open.
                      },
                      "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                          # For example, an Apps Script can be invoked to handle the form.
                        "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                            # clicked/activated.
                        "parameters": [ # List of action parameters.
                          { # List of string parameters to supply when the action method is invoked.
                              # For example, consider three snooze buttons: snooze now, snooze 1 day,
                              # snooze next week. You might use action method = snooze(), passing the
                              # snooze type and snooze time in the list of string parameters.
                            "value": "A String", # The value of the parameter.
                            "key": "A String", # The name of the parameter for the action script.
                          },
                        ],
                      },
                    },
                    "icon": "A String", # An enum value that will be replaced by the Chat API with the
                        # corresponding icon image.
                  },
                  "image": { # An image that is specified by a URL and can have an onclick action. # Display an image in this widget.
                    "aspectRatio": 3.14, # The aspect ratio of this image (width/height).
                    "imageUrl": "A String", # The URL of the image.
                    "onClick": { # An onclick action (e.g. open a link). # The onclick action.
                      "openLink": { # A link that opens a new window. # This onclick triggers an open link action if specified.
                        "url": "A String", # The URL to open.
                      },
                      "action": { # A form action describes the behavior when the form is submitted. # A form action will be trigger by this onclick if specified.
                          # For example, an Apps Script can be invoked to handle the form.
                        "actionMethodName": "A String", # Apps Script function to invoke when the containing element is
                            # clicked/activated.
                        "parameters": [ # List of action parameters.
                          { # List of string parameters to supply when the action method is invoked.
                              # For example, consider three snooze buttons: snooze now, snooze 1 day,
                              # snooze next week. You might use action method = snooze(), passing the
                              # snooze type and snooze time in the list of string parameters.
                            "value": "A String", # The value of the parameter.
                            "key": "A String", # The name of the parameter for the action script.
                          },
                        ],
                      },
                    },
                  },
                  "textParagraph": { # A paragraph of text. Formatted text supported. # Display a text paragraph in this widget.
                    "text": "A String",
                  },
                },
              ],
              "header": "A String", # The header of the section, text formatted supported.
            },
          ],
          "name": "A String", # Name of the card.
          "header": { # The header of the card. A header usually contains a title and an image.
            "imageStyle": "A String", # The image's type (e.g. square border or circular border).
            "imageUrl": "A String", # The URL of the image in the card header.
            "subtitle": "A String", # The subtitle of the card header.
            "title": "A String", # The title must be specified. The header has a fixed height: if both a
                # title and subtitle is specified, each will take up 1 line. If only the
                # title is specified, it will take up both lines.
          },
        },
      ],
      "previewText": "A String", # Text for generating preview chips. This text will not be displayed to the
          # user, but any links to images, web pages, videos, etc. included here will
          # generate preview chips.
      "createTime": "A String", # Output only. The time at which the message was created in Hangouts Chat
          # server.
      "sender": { # A user in Hangouts Chat. # The user who created the message.
        "displayName": "A String", # The user's display name.
        "type": "A String", # User type.
        "name": "A String", # Resource name, in the format "users/*".
      },
    }