Regen all docs. (#700)

* Stop recursing if discovery == {}

* Generate docs with 'make docs'.
diff --git a/docs/dyn/chat_v1.spaces.messages.html b/docs/dyn/chat_v1.spaces.messages.html
new file mode 100644
index 0000000..6ebea79
--- /dev/null
+++ b/docs/dyn/chat_v1.spaces.messages.html
@@ -0,0 +1,1638 @@
+<html><body>
+<style>
+
+body, h1, h2, h3, div, span, p, pre, a {
+  margin: 0;
+  padding: 0;
+  border: 0;
+  font-weight: inherit;
+  font-style: inherit;
+  font-size: 100%;
+  font-family: inherit;
+  vertical-align: baseline;
+}
+
+body {
+  font-size: 13px;
+  padding: 1em;
+}
+
+h1 {
+  font-size: 26px;
+  margin-bottom: 1em;
+}
+
+h2 {
+  font-size: 24px;
+  margin-bottom: 1em;
+}
+
+h3 {
+  font-size: 20px;
+  margin-bottom: 1em;
+  margin-top: 1em;
+}
+
+pre, code {
+  line-height: 1.5;
+  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
+}
+
+pre {
+  margin-top: 0.5em;
+}
+
+h1, h2, h3, p {
+  font-family: Arial, sans serif;
+}
+
+h1, h2, h3 {
+  border-bottom: solid #CCC 1px;
+}
+
+.toc_element {
+  margin-top: 0.5em;
+}
+
+.firstline {
+  margin-left: 2 em;
+}
+
+.method  {
+  margin-top: 1em;
+  border: solid 1px #CCC;
+  padding: 1em;
+  background: #EEE;
+}
+
+.details {
+  font-weight: bold;
+  font-size: 14px;
+}
+
+</style>
+
+<h1><a href="chat_v1.html">Hangouts Chat API</a> . <a href="chat_v1.spaces.html">spaces</a> . <a href="chat_v1.spaces.messages.html">messages</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#create">create(parent, body, threadKey=None, x__xgafv=None)</a></code></p>
+<p class="firstline">Creates a message.</p>
+<p class="toc_element">
+  <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
+<p class="firstline">Deletes a message.</p>
+<p class="toc_element">
+  <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
+<p class="firstline">Returns a message.</p>
+<p class="toc_element">
+  <code><a href="#update">update(name, body, updateMask=None, x__xgafv=None)</a></code></p>
+<p class="firstline">Updates a message.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="create">create(parent, body, threadKey=None, x__xgafv=None)</code>
+  <pre>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/*".
+      },
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="delete">delete(name, x__xgafv=None)</code>
+  <pre>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 `{}`.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(name, x__xgafv=None)</code>
+  <pre>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/*".
+      },
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(name, body, updateMask=None, x__xgafv=None)</code>
+  <pre>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/*".
+      },
+    }</pre>
+</div>
+
+</body></html>
\ No newline at end of file