chore: regens API reference docs (#889)

diff --git a/docs/dyn/dialogflow_v2beta1.projects.agent.intents.html b/docs/dyn/dialogflow_v2beta1.projects.agent.intents.html
index bf4eade..934b3fb 100644
--- a/docs/dyn/dialogflow_v2beta1.projects.agent.intents.html
+++ b/docs/dyn/dialogflow_v2beta1.projects.agent.intents.html
@@ -75,13 +75,13 @@
 <h1><a href="dialogflow_v2beta1.html">Dialogflow API</a> . <a href="dialogflow_v2beta1.projects.html">projects</a> . <a href="dialogflow_v2beta1.projects.agent.html">agent</a> . <a href="dialogflow_v2beta1.projects.agent.intents.html">intents</a></h1>
 <h2>Instance Methods</h2>
 <p class="toc_element">
-  <code><a href="#batchDelete">batchDelete(parent, body, x__xgafv=None)</a></code></p>
+  <code><a href="#batchDelete">batchDelete(parent, body=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Deletes intents in the specified agent.</p>
 <p class="toc_element">
-  <code><a href="#batchUpdate">batchUpdate(parent, body, x__xgafv=None)</a></code></p>
+  <code><a href="#batchUpdate">batchUpdate(parent, body=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Updates/Creates multiple intents in the specified agent.</p>
 <p class="toc_element">
-  <code><a href="#create">create(parent, body, languageCode=None, intentView=None, x__xgafv=None)</a></code></p>
+  <code><a href="#create">create(parent, body=None, languageCode=None, intentView=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Creates an intent in the specified agent.</p>
 <p class="toc_element">
   <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
@@ -90,25 +90,25 @@
   <code><a href="#get">get(name, languageCode=None, intentView=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Retrieves the specified intent.</p>
 <p class="toc_element">
-  <code><a href="#list">list(parent, pageSize=None, languageCode=None, intentView=None, pageToken=None, x__xgafv=None)</a></code></p>
+  <code><a href="#list">list(parent, languageCode=None, pageSize=None, intentView=None, pageToken=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Returns the list of all intents in the specified agent.</p>
 <p class="toc_element">
   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
 <p class="firstline">Retrieves the next page of results.</p>
 <p class="toc_element">
-  <code><a href="#patch">patch(name, body, languageCode=None, intentView=None, updateMask=None, x__xgafv=None)</a></code></p>
+  <code><a href="#patch">patch(name, body=None, languageCode=None, intentView=None, updateMask=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Updates the specified intent.</p>
 <h3>Method Details</h3>
 <div class="method">
-    <code class="details" id="batchDelete">batchDelete(parent, body, x__xgafv=None)</code>
+    <code class="details" id="batchDelete">batchDelete(parent, body=None, x__xgafv=None)</code>
   <pre>Deletes intents in the specified agent.
 
-Operation <response: google.protobuf.Empty>
+Operation &lt;response: google.protobuf.Empty&gt;
 
 Args:
   parent: string, Required. The name of the agent to delete all entities types for. Format:
-`projects/<Project ID>/agent`. (required)
-  body: object, The request body. (required)
+`projects/&lt;Project ID&gt;/agent`. (required)
+  body: object, The request body.
     The object takes the form of:
 
 { # The request message for Intents.BatchDeleteIntents.
@@ -126,12 +126,10 @@
         "name": "A String", # The unique identifier of this intent.
             # Required for Intents.UpdateIntent and Intents.BatchUpdateIntents
             # methods.
-            # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+            # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
         "parameters": [ # Optional. The collection of parameters associated with the intent.
           { # Represents intent parameters.
-            "mandatory": True or False, # Optional. Indicates whether the parameter is required. That is,
-                # whether the intent cannot be completed without collecting the parameter
-                # value.
+            "displayName": "A String", # Required. The name of the parameter.
             "name": "A String", # The unique identifier of this parameter.
             "defaultValue": "A String", # Optional. The default value to use when the `value` yields an empty
                 # result.
@@ -147,67 +145,36 @@
                 # - a parameter value from some context defined as
                 #   `#context_name.parameter_name`.
             "prompts": [ # Optional. The collection of prompts that the agent can present to the
-                # user in order to collect value for the parameter.
+                # user in order to collect a value for the parameter.
               "A String",
             ],
             "isList": True or False, # Optional. Indicates whether the parameter represents a list of values.
-            "displayName": "A String", # Required. The name of the parameter.
+            "mandatory": True or False, # Optional. Indicates whether the parameter is required. That is,
+                # whether the intent cannot be completed without collecting the parameter
+                # value.
           },
         ],
-        "trainingPhrases": [ # Optional. The collection of examples that the agent is
-            # trained on.
-          { # Represents an example that the agent is trained on.
-            "parts": [ # Required. The ordered list of training phrase parts.
-                # The parts are concatenated in order to form the training phrase.
-                #
-                # Note: The API does not automatically annotate training phrases like the
-                # Dialogflow Console does.
-                #
-                # Note: Do not forget to include whitespace at part boundaries,
-                # so the training phrase is well formatted when the parts are concatenated.
-                #
-                # If the training phrase does not need to be annotated with parameters,
-                # you just need a single part with only the Part.text field set.
-                #
-                # If you want to annotate the training phrase, you must create multiple
-                # parts, where the fields of each part are populated in one of two ways:
-                #
-                # -   `Part.text` is set to a part of the phrase that has no parameters.
-                # -   `Part.text` is set to a part of the phrase that you want to annotate,
-                #     and the `entity_type`, `alias`, and `user_defined` fields are all
-                #     set.
-              { # Represents a part of a training phrase.
-                "text": "A String", # Required. The text for this part.
-                "entityType": "A String", # Optional. The entity type name prefixed with `@`.
-                    # This field is required for annotated parts of the training phrase.
-                "userDefined": True or False, # Optional. Indicates whether the text was manually annotated.
-                    # This field is set to true when the Dialogflow Console is used to
-                    # manually annotate the part. When creating an annotated part with the
-                    # API, you must set this to true.
-                "alias": "A String", # Optional. The parameter name for the value extracted from the
-                    # annotated part of the example.
-                    # This field is required for annotated parts of the training phrase.
-              },
-            ],
-            "type": "A String", # Required. The type of the training phrase.
-            "name": "A String", # Output only. The unique identifier of this training phrase.
-            "timesAddedCount": 42, # Optional. Indicates how many times this example was added to
-                # the intent. Each time a developer adds an existing sample by editing an
-                # intent or training, this counter is increased.
-          },
-        ],
+        "endInteraction": True or False, # Optional. Indicates that this intent ends an interaction. Some integrations
+            # (e.g., Actions on Google or Dialogflow phone gateway) use this information
+            # to close interaction with an end user. Default is false.
         "followupIntentInfo": [ # Read-only. Information about all followup intents that have this intent as
             # a direct or indirect parent. We populate this field only in the output.
           { # Represents a single followup intent in the chain.
             "followupIntentName": "A String", # The unique identifier of the followup intent.
-                # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+                # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
             "parentFollowupIntentName": "A String", # The unique identifier of the followup intent's parent.
-                # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+                # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
           },
         ],
         "webhookState": "A String", # Optional. Indicates whether webhooks are enabled for the intent.
-        "resetContexts": True or False, # Optional. Indicates whether to delete all contexts in the current
-            # session when this intent is matched.
+        "parentFollowupIntentName": "A String", # Read-only after creation. The unique identifier of the parent intent in the
+            # chain of followup intents. You can set this field when creating an intent,
+            # for example with CreateIntent or
+            # BatchUpdateIntents, in order to make this
+            # intent a followup intent.
+            #
+            # It identifies the parent followup intent.
+            # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
         "messages": [ # Optional. The collection of rich messages corresponding to the
             # `Response` field in the Dialogflow console.
           { # Corresponds to the `Response` field in the Dialogflow console.
@@ -217,12 +184,12 @@
                 # `SimpleResponse`.
               "simpleResponses": [ # Required. The list of simple responses.
                 { # The simple response message containing speech or text.
-                  "textToSpeech": "A String", # One of text_to_speech or ssml must be provided. The plain text of the
-                      # speech output. Mutually exclusive with ssml.
-                  "displayText": "A String", # Optional. The text to display.
                   "ssml": "A String", # One of text_to_speech or ssml must be provided. Structured spoken
                       # response to the user in the SSML format. Mutually exclusive with
                       # text_to_speech.
+                  "textToSpeech": "A String", # One of text_to_speech or ssml must be provided. The plain text of the
+                      # speech output. Mutually exclusive with ssml.
+                  "displayText": "A String", # Optional. The text to display.
                 },
               ],
             },
@@ -232,6 +199,48 @@
               ],
               "title": "A String", # Optional. The title of the collection of quick replies.
             },
+            "rbmText": { # Rich Business Messaging (RBM) text response with suggestions. # Rich Business Messaging (RBM) text response.
+                #
+                # RBM allows businesses to send enriched and branded versions of SMS. See
+                # https://jibe.google.com/business-messaging.
+              "text": "A String", # Required. Text sent and displayed to the user.
+              "rbmSuggestion": [ # Optional. One or more suggestions to show to the user.
+                { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                    # easily select/click a predefined response or perform an action (like
+                    # opening a web uri).
+                  "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                      # can choose from the card.
+                    "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                        # to send back to the agent (https://goo.gl/GXotJW).
+                    },
+                    "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                        # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                        # registered as the default handler for the URL, then this app will be
+                        # opened instead, and its icon will be used in the suggested action UI.
+                      "uri": "A String", # Required. The uri to open on the user device
+                    },
+                    "text": "A String", # Text to display alongside the action.
+                    "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                        # but does not dial automatically (https://goo.gl/ergbB2).
+                      "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                          # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                          # format. An example of a correctly formatted phone number:
+                          # +15556767888.
+                    },
+                    "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                        # when the user taps the suggested action. This data will be also
+                        # forwarded to webhook to allow performing custom business logic.
+                  },
+                  "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                      # instead of typing in their own response.
+                    "text": "A String", # Suggested reply text.
+                    "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                        # when the user taps the suggested reply. This data will be also
+                        # forwarded to webhook to allow performing custom business logic.
+                  },
+                },
+              ],
+            },
             "platform": "A String", # Optional. The platform that this message is intended for.
             "text": { # The text response message. # Returns a text response.
               "text": [ # Optional. The collection of the agent's responses.
@@ -253,22 +262,105 @@
                   # [SSML](https://developers.google.com/actions/reference/ssml).
               "text": "A String", # The raw text to be synthesized.
             },
-            "suggestions": { # The collection of suggestions. # Displays suggestion chips for Actions on Google.
-              "suggestions": [ # Required. The list of suggested replies.
-                { # The suggestion chip message that the user can tap to quickly post a reply
-                    # to the conversation.
-                  "title": "A String", # Required. The text shown the in the suggestion chip.
+            "rbmCarouselRichCard": { # Carousel Rich Business Messaging (RBM) rich card. # Rich Business Messaging (RBM) carousel rich card response.
+                #
+                # Rich cards allow you to respond to users with more vivid content, e.g.
+                # with media and suggestions.
+                #
+                # For more details about RBM rich cards, please see:
+                # https://developers.google.com/rcs-business-messaging/rbm/guides/build/send-messages#rich-cards.
+                # If you want to show a single card with more control over the layout,
+                # please use RbmStandaloneCard instead.
+              "cardContents": [ # Required. The cards in the carousel. A carousel must have at least
+                  # 2 cards and at most 10.
+                { # Rich Business Messaging (RBM) Card content
+                  "media": { # Rich Business Messaging (RBM) Media displayed in Cards # Optional. However at least one of the title, description or media must
+                      # be set. Media (image, GIF or a video) to include in the card.
+                      # The following media-types are currently supported:
+                      #
+                      # Image Types
+                      #
+                      # * image/jpeg
+                      # * image/jpg'
+                      # * image/gif
+                      # * image/png
+                      #
+                      # Video Types
+                      #
+                      # * video/h263
+                      # * video/m4v
+                      # * video/mp4
+                      # * video/mpeg
+                      # * video/mpeg4
+                      # * video/webm
+                    "fileUri": "A String", # Required. Publicly reachable URI of the file. The RBM platform
+                        # determines the MIME type of the file from the content-type field in
+                        # the HTTP headers when the platform fetches the file. The content-type
+                        # field must be present and accurate in the HTTP response from the URL.
+                    "thumbnailUri": "A String", # Optional. Publicly reachable URI of the thumbnail.If you don't
+                        # provide a thumbnail URI, the RBM platform displays a blank
+                        # placeholder thumbnail until the user's device downloads the file.
+                        # Depending on the user's setting, the file may not download
+                        # automatically and may require the user to tap a download button.
+                    "height": "A String", # Required for cards with vertical orientation. The height of the media
+                        # within a rich card with a vertical layout. (https://goo.gl/NeFCjz).
+                        # For a standalone card with horizontal layout, height is not
+                        # customizable, and this field is ignored.
+                  },
+                  "suggestions": [ # Optional. List of suggestions to include in the card.
+                    { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                        # easily select/click a predefined response or perform an action (like
+                        # opening a web uri).
+                      "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                          # can choose from the card.
+                        "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                            # to send back to the agent (https://goo.gl/GXotJW).
+                        },
+                        "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                            # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                            # registered as the default handler for the URL, then this app will be
+                            # opened instead, and its icon will be used in the suggested action UI.
+                          "uri": "A String", # Required. The uri to open on the user device
+                        },
+                        "text": "A String", # Text to display alongside the action.
+                        "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                            # but does not dial automatically (https://goo.gl/ergbB2).
+                          "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                              # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                              # format. An example of a correctly formatted phone number:
+                              # +15556767888.
+                        },
+                        "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                            # when the user taps the suggested action. This data will be also
+                            # forwarded to webhook to allow performing custom business logic.
+                      },
+                      "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                          # instead of typing in their own response.
+                        "text": "A String", # Suggested reply text.
+                        "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                            # when the user taps the suggested reply. This data will be also
+                            # forwarded to webhook to allow performing custom business logic.
+                      },
+                    },
+                  ],
+                  "description": "A String", # Optional. Description of the card (at most 2000 bytes).
+                      #
+                      # At least one of the title, description or media must be set.
+                  "title": "A String", # Optional. Title of the card (at most 200 bytes).
+                      #
+                      # At least one of the title, description or media must be set.
                 },
               ],
+              "cardWidth": "A String", # Required. The width of the cards in the carousel.
             },
             "telephonyPlayAudio": { # Plays audio from a file in Telephony Gateway. # Plays audio from a file in Telephony Gateway.
               "audioUri": "A String", # Required. URI to a Google Cloud Storage object containing the audio to
                   # play, e.g., "gs://bucket/object". The object must contain a single
                   # channel (mono) of linear PCM audio (2 bytes / sample) at 8kHz.
                   #
-                  # This object must be readable by the `service-<Project
-                  # Number>@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
-                  # where <Project Number> is the number of the Telephony Gateway project
+                  # This object must be readable by the `service-&lt;Project
+                  # Number&gt;@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
+                  # where &lt;Project Number&gt; is the number of the Telephony Gateway project
                   # (usually the same as the Dialogflow agent project). If the Google Cloud
                   # Storage bucket is in the Telephony Gateway project, this permission is
                   # added by default when enabling the Dialogflow V2 API.
@@ -276,12 +368,127 @@
                   # For audio from other sources, consider using the
                   # `TelephonySynthesizeSpeech` message with SSML.
             },
+            "rbmStandaloneRichCard": { # Standalone Rich Business Messaging (RBM) rich card. # Standalone Rich Business Messaging (RBM) rich card response.
+                #
+                # Rich cards allow you to respond to users with more vivid content, e.g.
+                # with media and suggestions.
+                #
+                # For more details about RBM rich cards, please see:
+                # https://developers.google.com/rcs-business-messaging/rbm/guides/build/send-messages#rich-cards.
+                # You can group multiple rich cards into one using RbmCarouselCard but
+                # carousel cards will give you less control over the card layout.
+              "thumbnailImageAlignment": "A String", # Required if orientation is horizontal.
+                  # Image preview alignment for standalone cards with horizontal layout.
+              "cardContent": { # Rich Business Messaging (RBM) Card content # Required. Card content.
+                "media": { # Rich Business Messaging (RBM) Media displayed in Cards # Optional. However at least one of the title, description or media must
+                    # be set. Media (image, GIF or a video) to include in the card.
+                    # The following media-types are currently supported:
+                    #
+                    # Image Types
+                    #
+                    # * image/jpeg
+                    # * image/jpg'
+                    # * image/gif
+                    # * image/png
+                    #
+                    # Video Types
+                    #
+                    # * video/h263
+                    # * video/m4v
+                    # * video/mp4
+                    # * video/mpeg
+                    # * video/mpeg4
+                    # * video/webm
+                  "fileUri": "A String", # Required. Publicly reachable URI of the file. The RBM platform
+                      # determines the MIME type of the file from the content-type field in
+                      # the HTTP headers when the platform fetches the file. The content-type
+                      # field must be present and accurate in the HTTP response from the URL.
+                  "thumbnailUri": "A String", # Optional. Publicly reachable URI of the thumbnail.If you don't
+                      # provide a thumbnail URI, the RBM platform displays a blank
+                      # placeholder thumbnail until the user's device downloads the file.
+                      # Depending on the user's setting, the file may not download
+                      # automatically and may require the user to tap a download button.
+                  "height": "A String", # Required for cards with vertical orientation. The height of the media
+                      # within a rich card with a vertical layout. (https://goo.gl/NeFCjz).
+                      # For a standalone card with horizontal layout, height is not
+                      # customizable, and this field is ignored.
+                },
+                "suggestions": [ # Optional. List of suggestions to include in the card.
+                  { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                      # easily select/click a predefined response or perform an action (like
+                      # opening a web uri).
+                    "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                        # can choose from the card.
+                      "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                          # to send back to the agent (https://goo.gl/GXotJW).
+                      },
+                      "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                          # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                          # registered as the default handler for the URL, then this app will be
+                          # opened instead, and its icon will be used in the suggested action UI.
+                        "uri": "A String", # Required. The uri to open on the user device
+                      },
+                      "text": "A String", # Text to display alongside the action.
+                      "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                          # but does not dial automatically (https://goo.gl/ergbB2).
+                        "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                            # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                            # format. An example of a correctly formatted phone number:
+                            # +15556767888.
+                      },
+                      "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                          # when the user taps the suggested action. This data will be also
+                          # forwarded to webhook to allow performing custom business logic.
+                    },
+                    "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                        # instead of typing in their own response.
+                      "text": "A String", # Suggested reply text.
+                      "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                          # when the user taps the suggested reply. This data will be also
+                          # forwarded to webhook to allow performing custom business logic.
+                    },
+                  },
+                ],
+                "description": "A String", # Optional. Description of the card (at most 2000 bytes).
+                    #
+                    # At least one of the title, description or media must be set.
+                "title": "A String", # Optional. Title of the card (at most 200 bytes).
+                    #
+                    # At least one of the title, description or media must be set.
+              },
+              "cardOrientation": "A String", # Required. Orientation of the card.
+            },
             "linkOutSuggestion": { # The suggestion chip message that allows the user to jump out to the app # Displays a link out suggestion chip for Actions on Google.
                 # or website associated with this agent.
               "uri": "A String", # Required. The URI of the app or site to open when the user taps the
                   # suggestion chip.
               "destinationName": "A String", # Required. The name of the app or site this chip is linking to.
             },
+            "browseCarouselCard": { # Browse Carousel Card for Actions on Google. # Browse carousel card for Actions on Google.
+                # https://developers.google.com/actions/assistant/responses#browsing_carousel
+              "items": [ # Required. List of items in the Browse Carousel Card. Minimum of two
+                  # items, maximum of ten.
+                { # Browsing carousel tile
+                  "image": { # The image response message. # Optional. Hero image for the carousel item.
+                    "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                        # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                    "imageUri": "A String", # Optional. The public URI to an image file.
+                  },
+                  "title": "A String", # Required. Title of the carousel item. Maximum of two lines of text.
+                  "description": "A String", # Optional. Description of the carousel item. Maximum of four lines of
+                      # text.
+                  "openUriAction": { # Actions on Google action to open a given url. # Required. Action to present to the user.
+                    "url": "A String", # Required. URL
+                    "urlTypeHint": "A String", # Optional. Specifies the type of viewer that is used when opening
+                        # the URL. Defaults to opening via web browser.
+                  },
+                  "footer": "A String", # Optional. Text that appears at the bottom of the Browse Carousel
+                      # Card. Maximum of one line of text.
+                },
+              ],
+              "imageDisplayOptions": "A String", # Optional. Settings for displaying the image. Applies to every image in
+                  # items.
+            },
             "basicCard": { # The basic card message. Useful for displaying information. # Displays a basic card for Actions on Google.
               "buttons": [ # Optional. The collection of card buttons.
                 { # The button object that appears at the bottom of a card.
@@ -300,6 +507,59 @@
               "subtitle": "A String", # Optional. The subtitle of the card.
               "title": "A String", # Optional. The title of the card.
             },
+            "mediaContent": { # The media content card for Actions on Google. # The media content card for Actions on Google.
+              "mediaObjects": [ # Required. List of media objects.
+                { # Response media object for media content card.
+                  "contentUrl": "A String", # Required. Url where the media is stored.
+                  "description": "A String", # Optional. Description of media card.
+                  "name": "A String", # Required. Name of media card.
+                  "largeImage": { # The image response message. # Optional. Image to display above media content.
+                    "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                        # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                    "imageUri": "A String", # Optional. The public URI to an image file.
+                  },
+                  "icon": { # The image response message. # Optional. Icon to display above media content.
+                    "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                        # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                    "imageUri": "A String", # Optional. The public URI to an image file.
+                  },
+                },
+              ],
+              "mediaType": "A String", # Optional. What type of media is the content (ie "audio").
+            },
+            "tableCard": { # Table card for Actions on Google. # Table card for Actions on Google.
+              "rows": [ # Optional. Rows in this table of data.
+                { # Row of TableCard.
+                  "cells": [ # Optional. List of cells that make up this row.
+                    { # Cell of TableCardRow.
+                      "text": "A String", # Required. Text in this cell.
+                    },
+                  ],
+                  "dividerAfter": True or False, # Optional. Whether to add a visual divider after this row.
+                },
+              ],
+              "subtitle": "A String", # Optional. Subtitle to the title.
+              "title": "A String", # Required. Title of the card.
+              "image": { # The image response message. # Optional. Image which should be displayed on the card.
+                "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                    # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                "imageUri": "A String", # Optional. The public URI to an image file.
+              },
+              "columnProperties": [ # Optional. Display properties for the columns in this table.
+                { # Column properties for TableCard.
+                  "header": "A String", # Required. Column heading.
+                  "horizontalAlignment": "A String", # Optional. Defines text alignment for all cells in this column.
+                },
+              ],
+              "buttons": [ # Optional. List of buttons for the card.
+                { # The button object that appears at the bottom of a card.
+                  "openUriAction": { # Opens the given URI. # Required. Action to take when a user taps on the button.
+                    "uri": "A String", # Required. The HTTP or HTTPS scheme URI.
+                  },
+                  "title": "A String", # Required. The title of the button.
+                },
+              ],
+            },
             "carouselSelect": { # The card for presenting a carousel of options to select from. # Displays a carousel card for Actions on Google.
               "items": [ # Required. Carousel items.
                 { # An item in the carousel.
@@ -343,17 +603,24 @@
                   "title": "A String", # Required. The title of the list item.
                 },
               ],
+              "subtitle": "A String", # Optional. Subtitle of the list.
               "title": "A String", # Optional. The overall title of the list.
             },
+            "suggestions": { # The collection of suggestions. # Displays suggestion chips for Actions on Google.
+              "suggestions": [ # Required. The list of suggested replies.
+                { # The suggestion chip message that the user can tap to quickly post a reply
+                    # to the conversation.
+                  "title": "A String", # Required. The text shown the in the suggestion chip.
+                },
+              ],
+            },
             "telephonyTransferCall": { # Transfers the call in Telephony Gateway. # Transfers the call in Telephony Gateway.
               "phoneNumber": "A String", # Required. The phone number to transfer the call to
                   # in [E.164 format](https://en.wikipedia.org/wiki/E.164).
                   #
                   # We currently only allow transferring to US numbers (+1xxxyyyzzzz).
             },
-            "payload": { # Returns a response containing a custom, platform-specific payload.
-                # See the Intent.Message.Platform type for a description of the
-                # structure that may be required for your platform.
+            "payload": { # A custom platform-specific response.
               "a_key": "", # Properties of the object.
             },
             "card": { # The card response message. # Displays a card.
@@ -370,33 +637,70 @@
             },
           },
         ],
-        "parentFollowupIntentName": "A String", # Read-only after creation. The unique identifier of the parent intent in the
-            # chain of followup intents. You can set this field when creating an intent,
-            # for example with CreateIntent or BatchUpdateIntents, in order to
-            # make this intent a followup intent.
-            #
-            # It identifies the parent followup intent.
-            # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+        "trainingPhrases": [ # Optional. The collection of examples that the agent is
+            # trained on.
+          { # Represents an example that the agent is trained on.
+            "parts": [ # Required. The ordered list of training phrase parts.
+                # The parts are concatenated in order to form the training phrase.
+                #
+                # Note: The API does not automatically annotate training phrases like the
+                # Dialogflow Console does.
+                #
+                # Note: Do not forget to include whitespace at part boundaries,
+                # so the training phrase is well formatted when the parts are concatenated.
+                #
+                # If the training phrase does not need to be annotated with parameters,
+                # you just need a single part with only the Part.text field set.
+                #
+                # If you want to annotate the training phrase, you must create multiple
+                # parts, where the fields of each part are populated in one of two ways:
+                #
+                # -   `Part.text` is set to a part of the phrase that has no parameters.
+                # -   `Part.text` is set to a part of the phrase that you want to annotate,
+                #     and the `entity_type`, `alias`, and `user_defined` fields are all
+                #     set.
+              { # Represents a part of a training phrase.
+                "alias": "A String", # Optional. The parameter name for the value extracted from the
+                    # annotated part of the example.
+                    # This field is required for annotated parts of the training phrase.
+                "entityType": "A String", # Optional. The entity type name prefixed with `@`.
+                    # This field is required for annotated parts of the training phrase.
+                "text": "A String", # Required. The text for this part.
+                "userDefined": True or False, # Optional. Indicates whether the text was manually annotated.
+                    # This field is set to true when the Dialogflow Console is used to
+                    # manually annotate the part. When creating an annotated part with the
+                    # API, you must set this to true.
+              },
+            ],
+            "type": "A String", # Required. The type of the training phrase.
+            "name": "A String", # Output only. The unique identifier of this training phrase.
+            "timesAddedCount": 42, # Optional. Indicates how many times this example was added to
+                # the intent. Each time a developer adds an existing sample by editing an
+                # intent or training, this counter is increased.
+          },
+        ],
         "defaultResponsePlatforms": [ # Optional. The list of platforms for which the first responses will be
             # copied from the messages in PLATFORM_UNSPECIFIED (i.e. default platform).
           "A String",
         ],
-        "priority": 42, # Optional. The priority of this intent. Higher numbers represent higher
-            # priorities. If this is zero or unspecified, we use the default
-            # priority 500000.
+        "priority": 42, # The priority of this intent. Higher numbers represent higher
+            # priorities.
             #
-            # Negative numbers mean that the intent is disabled.
+            # - If the supplied value is unspecified or 0, the service
+            #   translates the value to 500,000, which corresponds to the
+            #   `Normal` priority in the console.
+            # - If the supplied value is negative, the intent is ignored
+            #   in runtime detect intent requests.
         "rootFollowupIntentName": "A String", # Read-only. The unique identifier of the root intent in the chain of
             # followup intents. It identifies the correct followup intents chain for
             # this intent. We populate this field only in the output.
             #
-            # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
-        "endInteraction": True or False, # Optional. Indicates that this intent ends an interaction. Some integrations
-            # (e.g., Actions on Google or Dialogflow phone gateway) use this information
-            # to close interaction with an end user. Default is false.
+            # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
+        "resetContexts": True or False, # Optional. Indicates whether to delete all contexts in the current
+            # session when this intent is matched.
         "inputContextNames": [ # Optional. The list of context names required for this intent to be
             # triggered.
-            # Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+            # Format: `projects/&lt;Project ID&gt;/agent/sessions/-/contexts/&lt;Context ID&gt;`.
           "A String",
         ],
         "mlEnabled": True or False, # Optional. Indicates whether Machine Learning is enabled for the intent.
@@ -416,26 +720,44 @@
             # is matched. Context messages in this collection should not set the
             # parameters field. Setting the `lifespan_count` to 0 will reset the context
             # when the intent is matched.
-            # Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+            # Format: `projects/&lt;Project ID&gt;/agent/sessions/-/contexts/&lt;Context ID&gt;`.
           { # Represents a context.
-            "parameters": { # Optional. The collection of parameters associated with this context.
-                # Refer to [this
-                # doc](https://cloud.google.com/dialogflow-enterprise/docs/intents-actions-parameters)
-                # for syntax.
-              "a_key": "", # Properties of the object.
-            },
             "name": "A String", # Required. The unique identifier of the context. Format:
-                # `projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context ID>`,
-                # or `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
-                # ID>/sessions/<Session ID>/contexts/<Context ID>`.
+                # `projects/&lt;Project ID&gt;/agent/sessions/&lt;Session ID&gt;/contexts/&lt;Context ID&gt;`,
+                # or `projects/&lt;Project ID&gt;/agent/environments/&lt;Environment ID&gt;/users/&lt;User
+                # ID&gt;/sessions/&lt;Session ID&gt;/contexts/&lt;Context ID&gt;`.
                 #
                 # The `Context ID` is always converted to lowercase, may only contain
                 # characters in a-zA-Z0-9_-% and may be at most 250 bytes long.
                 #
                 # If `Environment ID` is not specified, we assume default 'draft'
                 # environment. If `User ID` is not specified, we assume default '-' user.
+                #
+                # The following context names are reserved for internal use by Dialogflow.
+                # You should not use these contexts or create contexts with these names:
+                #
+                # * `__system_counters__`
+                # * `*_id_dialog_context`
+                # * `*_dialog_params_size`
+            "parameters": { # Optional. The collection of parameters associated with this context.
+                #
+                # Depending on your protocol or client library language, this is a
+                # map, associative array, symbol table, dictionary, or JSON object
+                # composed of a collection of (MapKey, MapValue) pairs:
+                #
+                # -   MapKey type: string
+                # -   MapKey value: parameter name
+                # -   MapValue type:
+                #     -   If parameter's entity type is a composite entity: map
+                #     -   Else: string or number, depending on parameter value type
+                # -   MapValue value:
+                #     -   If parameter's entity type is a composite entity:
+                #         map from composite entity property names to property values
+                #     -   Else: parameter value
+              "a_key": "", # Properties of the object.
+            },
             "lifespanCount": 42, # Optional. The number of conversational query requests after which the
-                # context expires. If set to `0` (the default) the context expires
+                # context expires. The default is `0`. If set to `0`, the context expires
                 # immediately. Contexts expire automatically after 20 minutes if there
                 # are no matching queries.
           },
@@ -443,6 +765,7 @@
         "events": [ # Optional. The collection of event names that trigger the intent.
             # If the collection of input contexts is not empty, all of the contexts must
             # be present in the active user session for an event to trigger this intent.
+            # Event names are limited to 150 characters.
           "A String",
         ],
       },
@@ -459,12 +782,28 @@
 
     { # This resource represents a long-running operation that is the result of a
       # network API call.
+    "response": { # The normal response of the operation in case of success.  If the original
+        # method returns no data on success, such as `Delete`, the response is
+        # `google.protobuf.Empty`.  If the original method is standard
+        # `Get`/`Create`/`Update`, the response should be the resource.  For other
+        # methods, the response should have the type `XxxResponse`, where `Xxx`
+        # is the original method name.  For example, if the original method name
+        # is `TakeSnapshot()`, the inferred response type is
+        # `TakeSnapshotResponse`.
+      "a_key": "", # Properties of the object. Contains field @type with type URL.
+    },
     "metadata": { # Service-specific metadata associated with the operation.  It typically
         # contains progress information and common metadata such as create time.
         # Some services might not provide such metadata.  Any method that returns a
         # long-running operation should document the metadata type, if any.
       "a_key": "", # Properties of the object. Contains field @type with type URL.
     },
+    "done": True or False, # If the value is `false`, it means the operation is still in progress.
+        # If `true`, the operation is completed, and either `error` or `response` is
+        # available.
+    "name": "A String", # The server-assigned name, which is only unique within the same service that
+        # originally returns it. If you use the default HTTP mapping, the
+        # `name` should be a resource name ending with `operations/{unique_id}`.
     "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
         # different programming environments, including REST APIs and RPC APIs. It is
         # used by [gRPC](https://github.com/grpc). Each `Status` message contains
@@ -483,44 +822,27 @@
         },
       ],
     },
-    "done": True or False, # If the value is `false`, it means the operation is still in progress.
-        # If `true`, the operation is completed, and either `error` or `response` is
-        # available.
-    "response": { # The normal response of the operation in case of success.  If the original
-        # method returns no data on success, such as `Delete`, the response is
-        # `google.protobuf.Empty`.  If the original method is standard
-        # `Get`/`Create`/`Update`, the response should be the resource.  For other
-        # methods, the response should have the type `XxxResponse`, where `Xxx`
-        # is the original method name.  For example, if the original method name
-        # is `TakeSnapshot()`, the inferred response type is
-        # `TakeSnapshotResponse`.
-      "a_key": "", # Properties of the object. Contains field @type with type URL.
-    },
-    "name": "A String", # The server-assigned name, which is only unique within the same service that
-        # originally returns it. If you use the default HTTP mapping, the
-        # `name` should be a resource name ending with `operations/{unique_id}`.
   }</pre>
 </div>
 
 <div class="method">
-    <code class="details" id="batchUpdate">batchUpdate(parent, body, x__xgafv=None)</code>
+    <code class="details" id="batchUpdate">batchUpdate(parent, body=None, x__xgafv=None)</code>
   <pre>Updates/Creates multiple intents in the specified agent.
 
-Operation <response: BatchUpdateIntentsResponse>
+Operation &lt;response: BatchUpdateIntentsResponse&gt;
 
 Args:
   parent: string, Required. The name of the agent to update or create intents in.
-Format: `projects/<Project ID>/agent`. (required)
-  body: object, The request body. (required)
+Format: `projects/&lt;Project ID&gt;/agent`. (required)
+  body: object, The request body.
     The object takes the form of:
 
 { # The request message for Intents.BatchUpdateIntents.
-    "languageCode": "A String", # Optional. The language of training phrases, parameters and rich messages
-        # defined in `intents`. If not specified, the agent's default language is
-        # used. [Many
-        # languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language)
-        # are supported. Note: languages must be enabled in the agent before they can
-        # be used.
+    "languageCode": "A String", # Optional. The language used to access language-specific data.
+        # If not specified, the agent's default language is used.
+        # For more information, see
+        # [Multilingual intent and entity
+        # data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
     "intentBatchUri": "A String", # The URI to a Google Cloud Storage file containing intents to update or
         # create. The file format can either be a serialized proto (of IntentBatch
         # type) or JSON object. Note: The URI must start with "gs://".
@@ -538,12 +860,10 @@
           "name": "A String", # The unique identifier of this intent.
               # Required for Intents.UpdateIntent and Intents.BatchUpdateIntents
               # methods.
-              # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+              # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
           "parameters": [ # Optional. The collection of parameters associated with the intent.
             { # Represents intent parameters.
-              "mandatory": True or False, # Optional. Indicates whether the parameter is required. That is,
-                  # whether the intent cannot be completed without collecting the parameter
-                  # value.
+              "displayName": "A String", # Required. The name of the parameter.
               "name": "A String", # The unique identifier of this parameter.
               "defaultValue": "A String", # Optional. The default value to use when the `value` yields an empty
                   # result.
@@ -559,67 +879,36 @@
                   # - a parameter value from some context defined as
                   #   `#context_name.parameter_name`.
               "prompts": [ # Optional. The collection of prompts that the agent can present to the
-                  # user in order to collect value for the parameter.
+                  # user in order to collect a value for the parameter.
                 "A String",
               ],
               "isList": True or False, # Optional. Indicates whether the parameter represents a list of values.
-              "displayName": "A String", # Required. The name of the parameter.
+              "mandatory": True or False, # Optional. Indicates whether the parameter is required. That is,
+                  # whether the intent cannot be completed without collecting the parameter
+                  # value.
             },
           ],
-          "trainingPhrases": [ # Optional. The collection of examples that the agent is
-              # trained on.
-            { # Represents an example that the agent is trained on.
-              "parts": [ # Required. The ordered list of training phrase parts.
-                  # The parts are concatenated in order to form the training phrase.
-                  #
-                  # Note: The API does not automatically annotate training phrases like the
-                  # Dialogflow Console does.
-                  #
-                  # Note: Do not forget to include whitespace at part boundaries,
-                  # so the training phrase is well formatted when the parts are concatenated.
-                  #
-                  # If the training phrase does not need to be annotated with parameters,
-                  # you just need a single part with only the Part.text field set.
-                  #
-                  # If you want to annotate the training phrase, you must create multiple
-                  # parts, where the fields of each part are populated in one of two ways:
-                  #
-                  # -   `Part.text` is set to a part of the phrase that has no parameters.
-                  # -   `Part.text` is set to a part of the phrase that you want to annotate,
-                  #     and the `entity_type`, `alias`, and `user_defined` fields are all
-                  #     set.
-                { # Represents a part of a training phrase.
-                  "text": "A String", # Required. The text for this part.
-                  "entityType": "A String", # Optional. The entity type name prefixed with `@`.
-                      # This field is required for annotated parts of the training phrase.
-                  "userDefined": True or False, # Optional. Indicates whether the text was manually annotated.
-                      # This field is set to true when the Dialogflow Console is used to
-                      # manually annotate the part. When creating an annotated part with the
-                      # API, you must set this to true.
-                  "alias": "A String", # Optional. The parameter name for the value extracted from the
-                      # annotated part of the example.
-                      # This field is required for annotated parts of the training phrase.
-                },
-              ],
-              "type": "A String", # Required. The type of the training phrase.
-              "name": "A String", # Output only. The unique identifier of this training phrase.
-              "timesAddedCount": 42, # Optional. Indicates how many times this example was added to
-                  # the intent. Each time a developer adds an existing sample by editing an
-                  # intent or training, this counter is increased.
-            },
-          ],
+          "endInteraction": True or False, # Optional. Indicates that this intent ends an interaction. Some integrations
+              # (e.g., Actions on Google or Dialogflow phone gateway) use this information
+              # to close interaction with an end user. Default is false.
           "followupIntentInfo": [ # Read-only. Information about all followup intents that have this intent as
               # a direct or indirect parent. We populate this field only in the output.
             { # Represents a single followup intent in the chain.
               "followupIntentName": "A String", # The unique identifier of the followup intent.
-                  # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+                  # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
               "parentFollowupIntentName": "A String", # The unique identifier of the followup intent's parent.
-                  # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+                  # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
             },
           ],
           "webhookState": "A String", # Optional. Indicates whether webhooks are enabled for the intent.
-          "resetContexts": True or False, # Optional. Indicates whether to delete all contexts in the current
-              # session when this intent is matched.
+          "parentFollowupIntentName": "A String", # Read-only after creation. The unique identifier of the parent intent in the
+              # chain of followup intents. You can set this field when creating an intent,
+              # for example with CreateIntent or
+              # BatchUpdateIntents, in order to make this
+              # intent a followup intent.
+              #
+              # It identifies the parent followup intent.
+              # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
           "messages": [ # Optional. The collection of rich messages corresponding to the
               # `Response` field in the Dialogflow console.
             { # Corresponds to the `Response` field in the Dialogflow console.
@@ -629,12 +918,12 @@
                   # `SimpleResponse`.
                 "simpleResponses": [ # Required. The list of simple responses.
                   { # The simple response message containing speech or text.
-                    "textToSpeech": "A String", # One of text_to_speech or ssml must be provided. The plain text of the
-                        # speech output. Mutually exclusive with ssml.
-                    "displayText": "A String", # Optional. The text to display.
                     "ssml": "A String", # One of text_to_speech or ssml must be provided. Structured spoken
                         # response to the user in the SSML format. Mutually exclusive with
                         # text_to_speech.
+                    "textToSpeech": "A String", # One of text_to_speech or ssml must be provided. The plain text of the
+                        # speech output. Mutually exclusive with ssml.
+                    "displayText": "A String", # Optional. The text to display.
                   },
                 ],
               },
@@ -644,6 +933,48 @@
                 ],
                 "title": "A String", # Optional. The title of the collection of quick replies.
               },
+              "rbmText": { # Rich Business Messaging (RBM) text response with suggestions. # Rich Business Messaging (RBM) text response.
+                  #
+                  # RBM allows businesses to send enriched and branded versions of SMS. See
+                  # https://jibe.google.com/business-messaging.
+                "text": "A String", # Required. Text sent and displayed to the user.
+                "rbmSuggestion": [ # Optional. One or more suggestions to show to the user.
+                  { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                      # easily select/click a predefined response or perform an action (like
+                      # opening a web uri).
+                    "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                        # can choose from the card.
+                      "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                          # to send back to the agent (https://goo.gl/GXotJW).
+                      },
+                      "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                          # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                          # registered as the default handler for the URL, then this app will be
+                          # opened instead, and its icon will be used in the suggested action UI.
+                        "uri": "A String", # Required. The uri to open on the user device
+                      },
+                      "text": "A String", # Text to display alongside the action.
+                      "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                          # but does not dial automatically (https://goo.gl/ergbB2).
+                        "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                            # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                            # format. An example of a correctly formatted phone number:
+                            # +15556767888.
+                      },
+                      "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                          # when the user taps the suggested action. This data will be also
+                          # forwarded to webhook to allow performing custom business logic.
+                    },
+                    "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                        # instead of typing in their own response.
+                      "text": "A String", # Suggested reply text.
+                      "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                          # when the user taps the suggested reply. This data will be also
+                          # forwarded to webhook to allow performing custom business logic.
+                    },
+                  },
+                ],
+              },
               "platform": "A String", # Optional. The platform that this message is intended for.
               "text": { # The text response message. # Returns a text response.
                 "text": [ # Optional. The collection of the agent's responses.
@@ -665,22 +996,105 @@
                     # [SSML](https://developers.google.com/actions/reference/ssml).
                 "text": "A String", # The raw text to be synthesized.
               },
-              "suggestions": { # The collection of suggestions. # Displays suggestion chips for Actions on Google.
-                "suggestions": [ # Required. The list of suggested replies.
-                  { # The suggestion chip message that the user can tap to quickly post a reply
-                      # to the conversation.
-                    "title": "A String", # Required. The text shown the in the suggestion chip.
+              "rbmCarouselRichCard": { # Carousel Rich Business Messaging (RBM) rich card. # Rich Business Messaging (RBM) carousel rich card response.
+                  #
+                  # Rich cards allow you to respond to users with more vivid content, e.g.
+                  # with media and suggestions.
+                  #
+                  # For more details about RBM rich cards, please see:
+                  # https://developers.google.com/rcs-business-messaging/rbm/guides/build/send-messages#rich-cards.
+                  # If you want to show a single card with more control over the layout,
+                  # please use RbmStandaloneCard instead.
+                "cardContents": [ # Required. The cards in the carousel. A carousel must have at least
+                    # 2 cards and at most 10.
+                  { # Rich Business Messaging (RBM) Card content
+                    "media": { # Rich Business Messaging (RBM) Media displayed in Cards # Optional. However at least one of the title, description or media must
+                        # be set. Media (image, GIF or a video) to include in the card.
+                        # The following media-types are currently supported:
+                        #
+                        # Image Types
+                        #
+                        # * image/jpeg
+                        # * image/jpg'
+                        # * image/gif
+                        # * image/png
+                        #
+                        # Video Types
+                        #
+                        # * video/h263
+                        # * video/m4v
+                        # * video/mp4
+                        # * video/mpeg
+                        # * video/mpeg4
+                        # * video/webm
+                      "fileUri": "A String", # Required. Publicly reachable URI of the file. The RBM platform
+                          # determines the MIME type of the file from the content-type field in
+                          # the HTTP headers when the platform fetches the file. The content-type
+                          # field must be present and accurate in the HTTP response from the URL.
+                      "thumbnailUri": "A String", # Optional. Publicly reachable URI of the thumbnail.If you don't
+                          # provide a thumbnail URI, the RBM platform displays a blank
+                          # placeholder thumbnail until the user's device downloads the file.
+                          # Depending on the user's setting, the file may not download
+                          # automatically and may require the user to tap a download button.
+                      "height": "A String", # Required for cards with vertical orientation. The height of the media
+                          # within a rich card with a vertical layout. (https://goo.gl/NeFCjz).
+                          # For a standalone card with horizontal layout, height is not
+                          # customizable, and this field is ignored.
+                    },
+                    "suggestions": [ # Optional. List of suggestions to include in the card.
+                      { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                          # easily select/click a predefined response or perform an action (like
+                          # opening a web uri).
+                        "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                            # can choose from the card.
+                          "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                              # to send back to the agent (https://goo.gl/GXotJW).
+                          },
+                          "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                              # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                              # registered as the default handler for the URL, then this app will be
+                              # opened instead, and its icon will be used in the suggested action UI.
+                            "uri": "A String", # Required. The uri to open on the user device
+                          },
+                          "text": "A String", # Text to display alongside the action.
+                          "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                              # but does not dial automatically (https://goo.gl/ergbB2).
+                            "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                                # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                                # format. An example of a correctly formatted phone number:
+                                # +15556767888.
+                          },
+                          "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                              # when the user taps the suggested action. This data will be also
+                              # forwarded to webhook to allow performing custom business logic.
+                        },
+                        "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                            # instead of typing in their own response.
+                          "text": "A String", # Suggested reply text.
+                          "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                              # when the user taps the suggested reply. This data will be also
+                              # forwarded to webhook to allow performing custom business logic.
+                        },
+                      },
+                    ],
+                    "description": "A String", # Optional. Description of the card (at most 2000 bytes).
+                        #
+                        # At least one of the title, description or media must be set.
+                    "title": "A String", # Optional. Title of the card (at most 200 bytes).
+                        #
+                        # At least one of the title, description or media must be set.
                   },
                 ],
+                "cardWidth": "A String", # Required. The width of the cards in the carousel.
               },
               "telephonyPlayAudio": { # Plays audio from a file in Telephony Gateway. # Plays audio from a file in Telephony Gateway.
                 "audioUri": "A String", # Required. URI to a Google Cloud Storage object containing the audio to
                     # play, e.g., "gs://bucket/object". The object must contain a single
                     # channel (mono) of linear PCM audio (2 bytes / sample) at 8kHz.
                     #
-                    # This object must be readable by the `service-<Project
-                    # Number>@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
-                    # where <Project Number> is the number of the Telephony Gateway project
+                    # This object must be readable by the `service-&lt;Project
+                    # Number&gt;@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
+                    # where &lt;Project Number&gt; is the number of the Telephony Gateway project
                     # (usually the same as the Dialogflow agent project). If the Google Cloud
                     # Storage bucket is in the Telephony Gateway project, this permission is
                     # added by default when enabling the Dialogflow V2 API.
@@ -688,12 +1102,127 @@
                     # For audio from other sources, consider using the
                     # `TelephonySynthesizeSpeech` message with SSML.
               },
+              "rbmStandaloneRichCard": { # Standalone Rich Business Messaging (RBM) rich card. # Standalone Rich Business Messaging (RBM) rich card response.
+                  #
+                  # Rich cards allow you to respond to users with more vivid content, e.g.
+                  # with media and suggestions.
+                  #
+                  # For more details about RBM rich cards, please see:
+                  # https://developers.google.com/rcs-business-messaging/rbm/guides/build/send-messages#rich-cards.
+                  # You can group multiple rich cards into one using RbmCarouselCard but
+                  # carousel cards will give you less control over the card layout.
+                "thumbnailImageAlignment": "A String", # Required if orientation is horizontal.
+                    # Image preview alignment for standalone cards with horizontal layout.
+                "cardContent": { # Rich Business Messaging (RBM) Card content # Required. Card content.
+                  "media": { # Rich Business Messaging (RBM) Media displayed in Cards # Optional. However at least one of the title, description or media must
+                      # be set. Media (image, GIF or a video) to include in the card.
+                      # The following media-types are currently supported:
+                      #
+                      # Image Types
+                      #
+                      # * image/jpeg
+                      # * image/jpg'
+                      # * image/gif
+                      # * image/png
+                      #
+                      # Video Types
+                      #
+                      # * video/h263
+                      # * video/m4v
+                      # * video/mp4
+                      # * video/mpeg
+                      # * video/mpeg4
+                      # * video/webm
+                    "fileUri": "A String", # Required. Publicly reachable URI of the file. The RBM platform
+                        # determines the MIME type of the file from the content-type field in
+                        # the HTTP headers when the platform fetches the file. The content-type
+                        # field must be present and accurate in the HTTP response from the URL.
+                    "thumbnailUri": "A String", # Optional. Publicly reachable URI of the thumbnail.If you don't
+                        # provide a thumbnail URI, the RBM platform displays a blank
+                        # placeholder thumbnail until the user's device downloads the file.
+                        # Depending on the user's setting, the file may not download
+                        # automatically and may require the user to tap a download button.
+                    "height": "A String", # Required for cards with vertical orientation. The height of the media
+                        # within a rich card with a vertical layout. (https://goo.gl/NeFCjz).
+                        # For a standalone card with horizontal layout, height is not
+                        # customizable, and this field is ignored.
+                  },
+                  "suggestions": [ # Optional. List of suggestions to include in the card.
+                    { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                        # easily select/click a predefined response or perform an action (like
+                        # opening a web uri).
+                      "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                          # can choose from the card.
+                        "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                            # to send back to the agent (https://goo.gl/GXotJW).
+                        },
+                        "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                            # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                            # registered as the default handler for the URL, then this app will be
+                            # opened instead, and its icon will be used in the suggested action UI.
+                          "uri": "A String", # Required. The uri to open on the user device
+                        },
+                        "text": "A String", # Text to display alongside the action.
+                        "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                            # but does not dial automatically (https://goo.gl/ergbB2).
+                          "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                              # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                              # format. An example of a correctly formatted phone number:
+                              # +15556767888.
+                        },
+                        "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                            # when the user taps the suggested action. This data will be also
+                            # forwarded to webhook to allow performing custom business logic.
+                      },
+                      "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                          # instead of typing in their own response.
+                        "text": "A String", # Suggested reply text.
+                        "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                            # when the user taps the suggested reply. This data will be also
+                            # forwarded to webhook to allow performing custom business logic.
+                      },
+                    },
+                  ],
+                  "description": "A String", # Optional. Description of the card (at most 2000 bytes).
+                      #
+                      # At least one of the title, description or media must be set.
+                  "title": "A String", # Optional. Title of the card (at most 200 bytes).
+                      #
+                      # At least one of the title, description or media must be set.
+                },
+                "cardOrientation": "A String", # Required. Orientation of the card.
+              },
               "linkOutSuggestion": { # The suggestion chip message that allows the user to jump out to the app # Displays a link out suggestion chip for Actions on Google.
                   # or website associated with this agent.
                 "uri": "A String", # Required. The URI of the app or site to open when the user taps the
                     # suggestion chip.
                 "destinationName": "A String", # Required. The name of the app or site this chip is linking to.
               },
+              "browseCarouselCard": { # Browse Carousel Card for Actions on Google. # Browse carousel card for Actions on Google.
+                  # https://developers.google.com/actions/assistant/responses#browsing_carousel
+                "items": [ # Required. List of items in the Browse Carousel Card. Minimum of two
+                    # items, maximum of ten.
+                  { # Browsing carousel tile
+                    "image": { # The image response message. # Optional. Hero image for the carousel item.
+                      "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                          # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                      "imageUri": "A String", # Optional. The public URI to an image file.
+                    },
+                    "title": "A String", # Required. Title of the carousel item. Maximum of two lines of text.
+                    "description": "A String", # Optional. Description of the carousel item. Maximum of four lines of
+                        # text.
+                    "openUriAction": { # Actions on Google action to open a given url. # Required. Action to present to the user.
+                      "url": "A String", # Required. URL
+                      "urlTypeHint": "A String", # Optional. Specifies the type of viewer that is used when opening
+                          # the URL. Defaults to opening via web browser.
+                    },
+                    "footer": "A String", # Optional. Text that appears at the bottom of the Browse Carousel
+                        # Card. Maximum of one line of text.
+                  },
+                ],
+                "imageDisplayOptions": "A String", # Optional. Settings for displaying the image. Applies to every image in
+                    # items.
+              },
               "basicCard": { # The basic card message. Useful for displaying information. # Displays a basic card for Actions on Google.
                 "buttons": [ # Optional. The collection of card buttons.
                   { # The button object that appears at the bottom of a card.
@@ -712,6 +1241,59 @@
                 "subtitle": "A String", # Optional. The subtitle of the card.
                 "title": "A String", # Optional. The title of the card.
               },
+              "mediaContent": { # The media content card for Actions on Google. # The media content card for Actions on Google.
+                "mediaObjects": [ # Required. List of media objects.
+                  { # Response media object for media content card.
+                    "contentUrl": "A String", # Required. Url where the media is stored.
+                    "description": "A String", # Optional. Description of media card.
+                    "name": "A String", # Required. Name of media card.
+                    "largeImage": { # The image response message. # Optional. Image to display above media content.
+                      "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                          # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                      "imageUri": "A String", # Optional. The public URI to an image file.
+                    },
+                    "icon": { # The image response message. # Optional. Icon to display above media content.
+                      "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                          # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                      "imageUri": "A String", # Optional. The public URI to an image file.
+                    },
+                  },
+                ],
+                "mediaType": "A String", # Optional. What type of media is the content (ie "audio").
+              },
+              "tableCard": { # Table card for Actions on Google. # Table card for Actions on Google.
+                "rows": [ # Optional. Rows in this table of data.
+                  { # Row of TableCard.
+                    "cells": [ # Optional. List of cells that make up this row.
+                      { # Cell of TableCardRow.
+                        "text": "A String", # Required. Text in this cell.
+                      },
+                    ],
+                    "dividerAfter": True or False, # Optional. Whether to add a visual divider after this row.
+                  },
+                ],
+                "subtitle": "A String", # Optional. Subtitle to the title.
+                "title": "A String", # Required. Title of the card.
+                "image": { # The image response message. # Optional. Image which should be displayed on the card.
+                  "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                      # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                  "imageUri": "A String", # Optional. The public URI to an image file.
+                },
+                "columnProperties": [ # Optional. Display properties for the columns in this table.
+                  { # Column properties for TableCard.
+                    "header": "A String", # Required. Column heading.
+                    "horizontalAlignment": "A String", # Optional. Defines text alignment for all cells in this column.
+                  },
+                ],
+                "buttons": [ # Optional. List of buttons for the card.
+                  { # The button object that appears at the bottom of a card.
+                    "openUriAction": { # Opens the given URI. # Required. Action to take when a user taps on the button.
+                      "uri": "A String", # Required. The HTTP or HTTPS scheme URI.
+                    },
+                    "title": "A String", # Required. The title of the button.
+                  },
+                ],
+              },
               "carouselSelect": { # The card for presenting a carousel of options to select from. # Displays a carousel card for Actions on Google.
                 "items": [ # Required. Carousel items.
                   { # An item in the carousel.
@@ -755,17 +1337,24 @@
                     "title": "A String", # Required. The title of the list item.
                   },
                 ],
+                "subtitle": "A String", # Optional. Subtitle of the list.
                 "title": "A String", # Optional. The overall title of the list.
               },
+              "suggestions": { # The collection of suggestions. # Displays suggestion chips for Actions on Google.
+                "suggestions": [ # Required. The list of suggested replies.
+                  { # The suggestion chip message that the user can tap to quickly post a reply
+                      # to the conversation.
+                    "title": "A String", # Required. The text shown the in the suggestion chip.
+                  },
+                ],
+              },
               "telephonyTransferCall": { # Transfers the call in Telephony Gateway. # Transfers the call in Telephony Gateway.
                 "phoneNumber": "A String", # Required. The phone number to transfer the call to
                     # in [E.164 format](https://en.wikipedia.org/wiki/E.164).
                     #
                     # We currently only allow transferring to US numbers (+1xxxyyyzzzz).
               },
-              "payload": { # Returns a response containing a custom, platform-specific payload.
-                  # See the Intent.Message.Platform type for a description of the
-                  # structure that may be required for your platform.
+              "payload": { # A custom platform-specific response.
                 "a_key": "", # Properties of the object.
               },
               "card": { # The card response message. # Displays a card.
@@ -782,33 +1371,70 @@
               },
             },
           ],
-          "parentFollowupIntentName": "A String", # Read-only after creation. The unique identifier of the parent intent in the
-              # chain of followup intents. You can set this field when creating an intent,
-              # for example with CreateIntent or BatchUpdateIntents, in order to
-              # make this intent a followup intent.
-              #
-              # It identifies the parent followup intent.
-              # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+          "trainingPhrases": [ # Optional. The collection of examples that the agent is
+              # trained on.
+            { # Represents an example that the agent is trained on.
+              "parts": [ # Required. The ordered list of training phrase parts.
+                  # The parts are concatenated in order to form the training phrase.
+                  #
+                  # Note: The API does not automatically annotate training phrases like the
+                  # Dialogflow Console does.
+                  #
+                  # Note: Do not forget to include whitespace at part boundaries,
+                  # so the training phrase is well formatted when the parts are concatenated.
+                  #
+                  # If the training phrase does not need to be annotated with parameters,
+                  # you just need a single part with only the Part.text field set.
+                  #
+                  # If you want to annotate the training phrase, you must create multiple
+                  # parts, where the fields of each part are populated in one of two ways:
+                  #
+                  # -   `Part.text` is set to a part of the phrase that has no parameters.
+                  # -   `Part.text` is set to a part of the phrase that you want to annotate,
+                  #     and the `entity_type`, `alias`, and `user_defined` fields are all
+                  #     set.
+                { # Represents a part of a training phrase.
+                  "alias": "A String", # Optional. The parameter name for the value extracted from the
+                      # annotated part of the example.
+                      # This field is required for annotated parts of the training phrase.
+                  "entityType": "A String", # Optional. The entity type name prefixed with `@`.
+                      # This field is required for annotated parts of the training phrase.
+                  "text": "A String", # Required. The text for this part.
+                  "userDefined": True or False, # Optional. Indicates whether the text was manually annotated.
+                      # This field is set to true when the Dialogflow Console is used to
+                      # manually annotate the part. When creating an annotated part with the
+                      # API, you must set this to true.
+                },
+              ],
+              "type": "A String", # Required. The type of the training phrase.
+              "name": "A String", # Output only. The unique identifier of this training phrase.
+              "timesAddedCount": 42, # Optional. Indicates how many times this example was added to
+                  # the intent. Each time a developer adds an existing sample by editing an
+                  # intent or training, this counter is increased.
+            },
+          ],
           "defaultResponsePlatforms": [ # Optional. The list of platforms for which the first responses will be
               # copied from the messages in PLATFORM_UNSPECIFIED (i.e. default platform).
             "A String",
           ],
-          "priority": 42, # Optional. The priority of this intent. Higher numbers represent higher
-              # priorities. If this is zero or unspecified, we use the default
-              # priority 500000.
+          "priority": 42, # The priority of this intent. Higher numbers represent higher
+              # priorities.
               #
-              # Negative numbers mean that the intent is disabled.
+              # - If the supplied value is unspecified or 0, the service
+              #   translates the value to 500,000, which corresponds to the
+              #   `Normal` priority in the console.
+              # - If the supplied value is negative, the intent is ignored
+              #   in runtime detect intent requests.
           "rootFollowupIntentName": "A String", # Read-only. The unique identifier of the root intent in the chain of
               # followup intents. It identifies the correct followup intents chain for
               # this intent. We populate this field only in the output.
               #
-              # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
-          "endInteraction": True or False, # Optional. Indicates that this intent ends an interaction. Some integrations
-              # (e.g., Actions on Google or Dialogflow phone gateway) use this information
-              # to close interaction with an end user. Default is false.
+              # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
+          "resetContexts": True or False, # Optional. Indicates whether to delete all contexts in the current
+              # session when this intent is matched.
           "inputContextNames": [ # Optional. The list of context names required for this intent to be
               # triggered.
-              # Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+              # Format: `projects/&lt;Project ID&gt;/agent/sessions/-/contexts/&lt;Context ID&gt;`.
             "A String",
           ],
           "mlEnabled": True or False, # Optional. Indicates whether Machine Learning is enabled for the intent.
@@ -828,26 +1454,44 @@
               # is matched. Context messages in this collection should not set the
               # parameters field. Setting the `lifespan_count` to 0 will reset the context
               # when the intent is matched.
-              # Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+              # Format: `projects/&lt;Project ID&gt;/agent/sessions/-/contexts/&lt;Context ID&gt;`.
             { # Represents a context.
-              "parameters": { # Optional. The collection of parameters associated with this context.
-                  # Refer to [this
-                  # doc](https://cloud.google.com/dialogflow-enterprise/docs/intents-actions-parameters)
-                  # for syntax.
-                "a_key": "", # Properties of the object.
-              },
               "name": "A String", # Required. The unique identifier of the context. Format:
-                  # `projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context ID>`,
-                  # or `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
-                  # ID>/sessions/<Session ID>/contexts/<Context ID>`.
+                  # `projects/&lt;Project ID&gt;/agent/sessions/&lt;Session ID&gt;/contexts/&lt;Context ID&gt;`,
+                  # or `projects/&lt;Project ID&gt;/agent/environments/&lt;Environment ID&gt;/users/&lt;User
+                  # ID&gt;/sessions/&lt;Session ID&gt;/contexts/&lt;Context ID&gt;`.
                   #
                   # The `Context ID` is always converted to lowercase, may only contain
                   # characters in a-zA-Z0-9_-% and may be at most 250 bytes long.
                   #
                   # If `Environment ID` is not specified, we assume default 'draft'
                   # environment. If `User ID` is not specified, we assume default '-' user.
+                  #
+                  # The following context names are reserved for internal use by Dialogflow.
+                  # You should not use these contexts or create contexts with these names:
+                  #
+                  # * `__system_counters__`
+                  # * `*_id_dialog_context`
+                  # * `*_dialog_params_size`
+              "parameters": { # Optional. The collection of parameters associated with this context.
+                  #
+                  # Depending on your protocol or client library language, this is a
+                  # map, associative array, symbol table, dictionary, or JSON object
+                  # composed of a collection of (MapKey, MapValue) pairs:
+                  #
+                  # -   MapKey type: string
+                  # -   MapKey value: parameter name
+                  # -   MapValue type:
+                  #     -   If parameter's entity type is a composite entity: map
+                  #     -   Else: string or number, depending on parameter value type
+                  # -   MapValue value:
+                  #     -   If parameter's entity type is a composite entity:
+                  #         map from composite entity property names to property values
+                  #     -   Else: parameter value
+                "a_key": "", # Properties of the object.
+              },
               "lifespanCount": 42, # Optional. The number of conversational query requests after which the
-                  # context expires. If set to `0` (the default) the context expires
+                  # context expires. The default is `0`. If set to `0`, the context expires
                   # immediately. Contexts expire automatically after 20 minutes if there
                   # are no matching queries.
             },
@@ -855,6 +1499,7 @@
           "events": [ # Optional. The collection of event names that trigger the intent.
               # If the collection of input contexts is not empty, all of the contexts must
               # be present in the active user session for an event to trigger this intent.
+              # Event names are limited to 150 characters.
             "A String",
           ],
         },
@@ -874,12 +1519,28 @@
 
     { # This resource represents a long-running operation that is the result of a
       # network API call.
+    "response": { # The normal response of the operation in case of success.  If the original
+        # method returns no data on success, such as `Delete`, the response is
+        # `google.protobuf.Empty`.  If the original method is standard
+        # `Get`/`Create`/`Update`, the response should be the resource.  For other
+        # methods, the response should have the type `XxxResponse`, where `Xxx`
+        # is the original method name.  For example, if the original method name
+        # is `TakeSnapshot()`, the inferred response type is
+        # `TakeSnapshotResponse`.
+      "a_key": "", # Properties of the object. Contains field @type with type URL.
+    },
     "metadata": { # Service-specific metadata associated with the operation.  It typically
         # contains progress information and common metadata such as create time.
         # Some services might not provide such metadata.  Any method that returns a
         # long-running operation should document the metadata type, if any.
       "a_key": "", # Properties of the object. Contains field @type with type URL.
     },
+    "done": True or False, # If the value is `false`, it means the operation is still in progress.
+        # If `true`, the operation is completed, and either `error` or `response` is
+        # available.
+    "name": "A String", # The server-assigned name, which is only unique within the same service that
+        # originally returns it. If you use the default HTTP mapping, the
+        # `name` should be a resource name ending with `operations/{unique_id}`.
     "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
         # different programming environments, including REST APIs and RPC APIs. It is
         # used by [gRPC](https://github.com/grpc). Each `Status` message contains
@@ -898,33 +1559,17 @@
         },
       ],
     },
-    "done": True or False, # If the value is `false`, it means the operation is still in progress.
-        # If `true`, the operation is completed, and either `error` or `response` is
-        # available.
-    "response": { # The normal response of the operation in case of success.  If the original
-        # method returns no data on success, such as `Delete`, the response is
-        # `google.protobuf.Empty`.  If the original method is standard
-        # `Get`/`Create`/`Update`, the response should be the resource.  For other
-        # methods, the response should have the type `XxxResponse`, where `Xxx`
-        # is the original method name.  For example, if the original method name
-        # is `TakeSnapshot()`, the inferred response type is
-        # `TakeSnapshotResponse`.
-      "a_key": "", # Properties of the object. Contains field @type with type URL.
-    },
-    "name": "A String", # The server-assigned name, which is only unique within the same service that
-        # originally returns it. If you use the default HTTP mapping, the
-        # `name` should be a resource name ending with `operations/{unique_id}`.
   }</pre>
 </div>
 
 <div class="method">
-    <code class="details" id="create">create(parent, body, languageCode=None, intentView=None, x__xgafv=None)</code>
+    <code class="details" id="create">create(parent, body=None, languageCode=None, intentView=None, x__xgafv=None)</code>
   <pre>Creates an intent in the specified agent.
 
 Args:
   parent: string, Required. The agent to create a intent for.
-Format: `projects/<Project ID>/agent`. (required)
-  body: object, The request body. (required)
+Format: `projects/&lt;Project ID&gt;/agent`. (required)
+  body: object, The request body.
     The object takes the form of:
 
 { # Represents an intent.
@@ -939,12 +1584,10 @@
   "name": "A String", # The unique identifier of this intent.
       # Required for Intents.UpdateIntent and Intents.BatchUpdateIntents
       # methods.
-      # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+      # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
   "parameters": [ # Optional. The collection of parameters associated with the intent.
     { # Represents intent parameters.
-      "mandatory": True or False, # Optional. Indicates whether the parameter is required. That is,
-          # whether the intent cannot be completed without collecting the parameter
-          # value.
+      "displayName": "A String", # Required. The name of the parameter.
       "name": "A String", # The unique identifier of this parameter.
       "defaultValue": "A String", # Optional. The default value to use when the `value` yields an empty
           # result.
@@ -960,67 +1603,36 @@
           # - a parameter value from some context defined as
           #   `#context_name.parameter_name`.
       "prompts": [ # Optional. The collection of prompts that the agent can present to the
-          # user in order to collect value for the parameter.
+          # user in order to collect a value for the parameter.
         "A String",
       ],
       "isList": True or False, # Optional. Indicates whether the parameter represents a list of values.
-      "displayName": "A String", # Required. The name of the parameter.
+      "mandatory": True or False, # Optional. Indicates whether the parameter is required. That is,
+          # whether the intent cannot be completed without collecting the parameter
+          # value.
     },
   ],
-  "trainingPhrases": [ # Optional. The collection of examples that the agent is
-      # trained on.
-    { # Represents an example that the agent is trained on.
-      "parts": [ # Required. The ordered list of training phrase parts.
-          # The parts are concatenated in order to form the training phrase.
-          #
-          # Note: The API does not automatically annotate training phrases like the
-          # Dialogflow Console does.
-          #
-          # Note: Do not forget to include whitespace at part boundaries,
-          # so the training phrase is well formatted when the parts are concatenated.
-          #
-          # If the training phrase does not need to be annotated with parameters,
-          # you just need a single part with only the Part.text field set.
-          #
-          # If you want to annotate the training phrase, you must create multiple
-          # parts, where the fields of each part are populated in one of two ways:
-          #
-          # -   `Part.text` is set to a part of the phrase that has no parameters.
-          # -   `Part.text` is set to a part of the phrase that you want to annotate,
-          #     and the `entity_type`, `alias`, and `user_defined` fields are all
-          #     set.
-        { # Represents a part of a training phrase.
-          "text": "A String", # Required. The text for this part.
-          "entityType": "A String", # Optional. The entity type name prefixed with `@`.
-              # This field is required for annotated parts of the training phrase.
-          "userDefined": True or False, # Optional. Indicates whether the text was manually annotated.
-              # This field is set to true when the Dialogflow Console is used to
-              # manually annotate the part. When creating an annotated part with the
-              # API, you must set this to true.
-          "alias": "A String", # Optional. The parameter name for the value extracted from the
-              # annotated part of the example.
-              # This field is required for annotated parts of the training phrase.
-        },
-      ],
-      "type": "A String", # Required. The type of the training phrase.
-      "name": "A String", # Output only. The unique identifier of this training phrase.
-      "timesAddedCount": 42, # Optional. Indicates how many times this example was added to
-          # the intent. Each time a developer adds an existing sample by editing an
-          # intent or training, this counter is increased.
-    },
-  ],
+  "endInteraction": True or False, # Optional. Indicates that this intent ends an interaction. Some integrations
+      # (e.g., Actions on Google or Dialogflow phone gateway) use this information
+      # to close interaction with an end user. Default is false.
   "followupIntentInfo": [ # Read-only. Information about all followup intents that have this intent as
       # a direct or indirect parent. We populate this field only in the output.
     { # Represents a single followup intent in the chain.
       "followupIntentName": "A String", # The unique identifier of the followup intent.
-          # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+          # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
       "parentFollowupIntentName": "A String", # The unique identifier of the followup intent's parent.
-          # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+          # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
     },
   ],
   "webhookState": "A String", # Optional. Indicates whether webhooks are enabled for the intent.
-  "resetContexts": True or False, # Optional. Indicates whether to delete all contexts in the current
-      # session when this intent is matched.
+  "parentFollowupIntentName": "A String", # Read-only after creation. The unique identifier of the parent intent in the
+      # chain of followup intents. You can set this field when creating an intent,
+      # for example with CreateIntent or
+      # BatchUpdateIntents, in order to make this
+      # intent a followup intent.
+      # 
+      # It identifies the parent followup intent.
+      # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
   "messages": [ # Optional. The collection of rich messages corresponding to the
       # `Response` field in the Dialogflow console.
     { # Corresponds to the `Response` field in the Dialogflow console.
@@ -1030,12 +1642,12 @@
           # `SimpleResponse`.
         "simpleResponses": [ # Required. The list of simple responses.
           { # The simple response message containing speech or text.
-            "textToSpeech": "A String", # One of text_to_speech or ssml must be provided. The plain text of the
-                # speech output. Mutually exclusive with ssml.
-            "displayText": "A String", # Optional. The text to display.
             "ssml": "A String", # One of text_to_speech or ssml must be provided. Structured spoken
                 # response to the user in the SSML format. Mutually exclusive with
                 # text_to_speech.
+            "textToSpeech": "A String", # One of text_to_speech or ssml must be provided. The plain text of the
+                # speech output. Mutually exclusive with ssml.
+            "displayText": "A String", # Optional. The text to display.
           },
         ],
       },
@@ -1045,6 +1657,48 @@
         ],
         "title": "A String", # Optional. The title of the collection of quick replies.
       },
+      "rbmText": { # Rich Business Messaging (RBM) text response with suggestions. # Rich Business Messaging (RBM) text response.
+          #
+          # RBM allows businesses to send enriched and branded versions of SMS. See
+          # https://jibe.google.com/business-messaging.
+        "text": "A String", # Required. Text sent and displayed to the user.
+        "rbmSuggestion": [ # Optional. One or more suggestions to show to the user.
+          { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+              # easily select/click a predefined response or perform an action (like
+              # opening a web uri).
+            "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                # can choose from the card.
+              "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                  # to send back to the agent (https://goo.gl/GXotJW).
+              },
+              "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                  # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                  # registered as the default handler for the URL, then this app will be
+                  # opened instead, and its icon will be used in the suggested action UI.
+                "uri": "A String", # Required. The uri to open on the user device
+              },
+              "text": "A String", # Text to display alongside the action.
+              "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                  # but does not dial automatically (https://goo.gl/ergbB2).
+                "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                    # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                    # format. An example of a correctly formatted phone number:
+                    # +15556767888.
+              },
+              "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                  # when the user taps the suggested action. This data will be also
+                  # forwarded to webhook to allow performing custom business logic.
+            },
+            "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                # instead of typing in their own response.
+              "text": "A String", # Suggested reply text.
+              "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                  # when the user taps the suggested reply. This data will be also
+                  # forwarded to webhook to allow performing custom business logic.
+            },
+          },
+        ],
+      },
       "platform": "A String", # Optional. The platform that this message is intended for.
       "text": { # The text response message. # Returns a text response.
         "text": [ # Optional. The collection of the agent's responses.
@@ -1066,22 +1720,105 @@
             # [SSML](https://developers.google.com/actions/reference/ssml).
         "text": "A String", # The raw text to be synthesized.
       },
-      "suggestions": { # The collection of suggestions. # Displays suggestion chips for Actions on Google.
-        "suggestions": [ # Required. The list of suggested replies.
-          { # The suggestion chip message that the user can tap to quickly post a reply
-              # to the conversation.
-            "title": "A String", # Required. The text shown the in the suggestion chip.
+      "rbmCarouselRichCard": { # Carousel Rich Business Messaging (RBM) rich card. # Rich Business Messaging (RBM) carousel rich card response.
+          #
+          # Rich cards allow you to respond to users with more vivid content, e.g.
+          # with media and suggestions.
+          #
+          # For more details about RBM rich cards, please see:
+          # https://developers.google.com/rcs-business-messaging/rbm/guides/build/send-messages#rich-cards.
+          # If you want to show a single card with more control over the layout,
+          # please use RbmStandaloneCard instead.
+        "cardContents": [ # Required. The cards in the carousel. A carousel must have at least
+            # 2 cards and at most 10.
+          { # Rich Business Messaging (RBM) Card content
+            "media": { # Rich Business Messaging (RBM) Media displayed in Cards # Optional. However at least one of the title, description or media must
+                # be set. Media (image, GIF or a video) to include in the card.
+                # The following media-types are currently supported:
+                #
+                # Image Types
+                #
+                # * image/jpeg
+                # * image/jpg'
+                # * image/gif
+                # * image/png
+                #
+                # Video Types
+                #
+                # * video/h263
+                # * video/m4v
+                # * video/mp4
+                # * video/mpeg
+                # * video/mpeg4
+                # * video/webm
+              "fileUri": "A String", # Required. Publicly reachable URI of the file. The RBM platform
+                  # determines the MIME type of the file from the content-type field in
+                  # the HTTP headers when the platform fetches the file. The content-type
+                  # field must be present and accurate in the HTTP response from the URL.
+              "thumbnailUri": "A String", # Optional. Publicly reachable URI of the thumbnail.If you don't
+                  # provide a thumbnail URI, the RBM platform displays a blank
+                  # placeholder thumbnail until the user's device downloads the file.
+                  # Depending on the user's setting, the file may not download
+                  # automatically and may require the user to tap a download button.
+              "height": "A String", # Required for cards with vertical orientation. The height of the media
+                  # within a rich card with a vertical layout. (https://goo.gl/NeFCjz).
+                  # For a standalone card with horizontal layout, height is not
+                  # customizable, and this field is ignored.
+            },
+            "suggestions": [ # Optional. List of suggestions to include in the card.
+              { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                  # easily select/click a predefined response or perform an action (like
+                  # opening a web uri).
+                "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                    # can choose from the card.
+                  "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                      # to send back to the agent (https://goo.gl/GXotJW).
+                  },
+                  "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                      # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                      # registered as the default handler for the URL, then this app will be
+                      # opened instead, and its icon will be used in the suggested action UI.
+                    "uri": "A String", # Required. The uri to open on the user device
+                  },
+                  "text": "A String", # Text to display alongside the action.
+                  "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                      # but does not dial automatically (https://goo.gl/ergbB2).
+                    "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                        # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                        # format. An example of a correctly formatted phone number:
+                        # +15556767888.
+                  },
+                  "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                      # when the user taps the suggested action. This data will be also
+                      # forwarded to webhook to allow performing custom business logic.
+                },
+                "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                    # instead of typing in their own response.
+                  "text": "A String", # Suggested reply text.
+                  "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                      # when the user taps the suggested reply. This data will be also
+                      # forwarded to webhook to allow performing custom business logic.
+                },
+              },
+            ],
+            "description": "A String", # Optional. Description of the card (at most 2000 bytes).
+                #
+                # At least one of the title, description or media must be set.
+            "title": "A String", # Optional. Title of the card (at most 200 bytes).
+                #
+                # At least one of the title, description or media must be set.
           },
         ],
+        "cardWidth": "A String", # Required. The width of the cards in the carousel.
       },
       "telephonyPlayAudio": { # Plays audio from a file in Telephony Gateway. # Plays audio from a file in Telephony Gateway.
         "audioUri": "A String", # Required. URI to a Google Cloud Storage object containing the audio to
             # play, e.g., "gs://bucket/object". The object must contain a single
             # channel (mono) of linear PCM audio (2 bytes / sample) at 8kHz.
             #
-            # This object must be readable by the `service-<Project
-            # Number>@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
-            # where <Project Number> is the number of the Telephony Gateway project
+            # This object must be readable by the `service-&lt;Project
+            # Number&gt;@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
+            # where &lt;Project Number&gt; is the number of the Telephony Gateway project
             # (usually the same as the Dialogflow agent project). If the Google Cloud
             # Storage bucket is in the Telephony Gateway project, this permission is
             # added by default when enabling the Dialogflow V2 API.
@@ -1089,12 +1826,127 @@
             # For audio from other sources, consider using the
             # `TelephonySynthesizeSpeech` message with SSML.
       },
+      "rbmStandaloneRichCard": { # Standalone Rich Business Messaging (RBM) rich card. # Standalone Rich Business Messaging (RBM) rich card response.
+          #
+          # Rich cards allow you to respond to users with more vivid content, e.g.
+          # with media and suggestions.
+          #
+          # For more details about RBM rich cards, please see:
+          # https://developers.google.com/rcs-business-messaging/rbm/guides/build/send-messages#rich-cards.
+          # You can group multiple rich cards into one using RbmCarouselCard but
+          # carousel cards will give you less control over the card layout.
+        "thumbnailImageAlignment": "A String", # Required if orientation is horizontal.
+            # Image preview alignment for standalone cards with horizontal layout.
+        "cardContent": { # Rich Business Messaging (RBM) Card content # Required. Card content.
+          "media": { # Rich Business Messaging (RBM) Media displayed in Cards # Optional. However at least one of the title, description or media must
+              # be set. Media (image, GIF or a video) to include in the card.
+              # The following media-types are currently supported:
+              #
+              # Image Types
+              #
+              # * image/jpeg
+              # * image/jpg'
+              # * image/gif
+              # * image/png
+              #
+              # Video Types
+              #
+              # * video/h263
+              # * video/m4v
+              # * video/mp4
+              # * video/mpeg
+              # * video/mpeg4
+              # * video/webm
+            "fileUri": "A String", # Required. Publicly reachable URI of the file. The RBM platform
+                # determines the MIME type of the file from the content-type field in
+                # the HTTP headers when the platform fetches the file. The content-type
+                # field must be present and accurate in the HTTP response from the URL.
+            "thumbnailUri": "A String", # Optional. Publicly reachable URI of the thumbnail.If you don't
+                # provide a thumbnail URI, the RBM platform displays a blank
+                # placeholder thumbnail until the user's device downloads the file.
+                # Depending on the user's setting, the file may not download
+                # automatically and may require the user to tap a download button.
+            "height": "A String", # Required for cards with vertical orientation. The height of the media
+                # within a rich card with a vertical layout. (https://goo.gl/NeFCjz).
+                # For a standalone card with horizontal layout, height is not
+                # customizable, and this field is ignored.
+          },
+          "suggestions": [ # Optional. List of suggestions to include in the card.
+            { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                # easily select/click a predefined response or perform an action (like
+                # opening a web uri).
+              "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                  # can choose from the card.
+                "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                    # to send back to the agent (https://goo.gl/GXotJW).
+                },
+                "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                    # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                    # registered as the default handler for the URL, then this app will be
+                    # opened instead, and its icon will be used in the suggested action UI.
+                  "uri": "A String", # Required. The uri to open on the user device
+                },
+                "text": "A String", # Text to display alongside the action.
+                "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                    # but does not dial automatically (https://goo.gl/ergbB2).
+                  "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                      # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                      # format. An example of a correctly formatted phone number:
+                      # +15556767888.
+                },
+                "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                    # when the user taps the suggested action. This data will be also
+                    # forwarded to webhook to allow performing custom business logic.
+              },
+              "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                  # instead of typing in their own response.
+                "text": "A String", # Suggested reply text.
+                "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                    # when the user taps the suggested reply. This data will be also
+                    # forwarded to webhook to allow performing custom business logic.
+              },
+            },
+          ],
+          "description": "A String", # Optional. Description of the card (at most 2000 bytes).
+              #
+              # At least one of the title, description or media must be set.
+          "title": "A String", # Optional. Title of the card (at most 200 bytes).
+              #
+              # At least one of the title, description or media must be set.
+        },
+        "cardOrientation": "A String", # Required. Orientation of the card.
+      },
       "linkOutSuggestion": { # The suggestion chip message that allows the user to jump out to the app # Displays a link out suggestion chip for Actions on Google.
           # or website associated with this agent.
         "uri": "A String", # Required. The URI of the app or site to open when the user taps the
             # suggestion chip.
         "destinationName": "A String", # Required. The name of the app or site this chip is linking to.
       },
+      "browseCarouselCard": { # Browse Carousel Card for Actions on Google. # Browse carousel card for Actions on Google.
+          # https://developers.google.com/actions/assistant/responses#browsing_carousel
+        "items": [ # Required. List of items in the Browse Carousel Card. Minimum of two
+            # items, maximum of ten.
+          { # Browsing carousel tile
+            "image": { # The image response message. # Optional. Hero image for the carousel item.
+              "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                  # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+              "imageUri": "A String", # Optional. The public URI to an image file.
+            },
+            "title": "A String", # Required. Title of the carousel item. Maximum of two lines of text.
+            "description": "A String", # Optional. Description of the carousel item. Maximum of four lines of
+                # text.
+            "openUriAction": { # Actions on Google action to open a given url. # Required. Action to present to the user.
+              "url": "A String", # Required. URL
+              "urlTypeHint": "A String", # Optional. Specifies the type of viewer that is used when opening
+                  # the URL. Defaults to opening via web browser.
+            },
+            "footer": "A String", # Optional. Text that appears at the bottom of the Browse Carousel
+                # Card. Maximum of one line of text.
+          },
+        ],
+        "imageDisplayOptions": "A String", # Optional. Settings for displaying the image. Applies to every image in
+            # items.
+      },
       "basicCard": { # The basic card message. Useful for displaying information. # Displays a basic card for Actions on Google.
         "buttons": [ # Optional. The collection of card buttons.
           { # The button object that appears at the bottom of a card.
@@ -1113,6 +1965,59 @@
         "subtitle": "A String", # Optional. The subtitle of the card.
         "title": "A String", # Optional. The title of the card.
       },
+      "mediaContent": { # The media content card for Actions on Google. # The media content card for Actions on Google.
+        "mediaObjects": [ # Required. List of media objects.
+          { # Response media object for media content card.
+            "contentUrl": "A String", # Required. Url where the media is stored.
+            "description": "A String", # Optional. Description of media card.
+            "name": "A String", # Required. Name of media card.
+            "largeImage": { # The image response message. # Optional. Image to display above media content.
+              "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                  # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+              "imageUri": "A String", # Optional. The public URI to an image file.
+            },
+            "icon": { # The image response message. # Optional. Icon to display above media content.
+              "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                  # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+              "imageUri": "A String", # Optional. The public URI to an image file.
+            },
+          },
+        ],
+        "mediaType": "A String", # Optional. What type of media is the content (ie "audio").
+      },
+      "tableCard": { # Table card for Actions on Google. # Table card for Actions on Google.
+        "rows": [ # Optional. Rows in this table of data.
+          { # Row of TableCard.
+            "cells": [ # Optional. List of cells that make up this row.
+              { # Cell of TableCardRow.
+                "text": "A String", # Required. Text in this cell.
+              },
+            ],
+            "dividerAfter": True or False, # Optional. Whether to add a visual divider after this row.
+          },
+        ],
+        "subtitle": "A String", # Optional. Subtitle to the title.
+        "title": "A String", # Required. Title of the card.
+        "image": { # The image response message. # Optional. Image which should be displayed on the card.
+          "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+              # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+          "imageUri": "A String", # Optional. The public URI to an image file.
+        },
+        "columnProperties": [ # Optional. Display properties for the columns in this table.
+          { # Column properties for TableCard.
+            "header": "A String", # Required. Column heading.
+            "horizontalAlignment": "A String", # Optional. Defines text alignment for all cells in this column.
+          },
+        ],
+        "buttons": [ # Optional. List of buttons for the card.
+          { # The button object that appears at the bottom of a card.
+            "openUriAction": { # Opens the given URI. # Required. Action to take when a user taps on the button.
+              "uri": "A String", # Required. The HTTP or HTTPS scheme URI.
+            },
+            "title": "A String", # Required. The title of the button.
+          },
+        ],
+      },
       "carouselSelect": { # The card for presenting a carousel of options to select from. # Displays a carousel card for Actions on Google.
         "items": [ # Required. Carousel items.
           { # An item in the carousel.
@@ -1156,17 +2061,24 @@
             "title": "A String", # Required. The title of the list item.
           },
         ],
+        "subtitle": "A String", # Optional. Subtitle of the list.
         "title": "A String", # Optional. The overall title of the list.
       },
+      "suggestions": { # The collection of suggestions. # Displays suggestion chips for Actions on Google.
+        "suggestions": [ # Required. The list of suggested replies.
+          { # The suggestion chip message that the user can tap to quickly post a reply
+              # to the conversation.
+            "title": "A String", # Required. The text shown the in the suggestion chip.
+          },
+        ],
+      },
       "telephonyTransferCall": { # Transfers the call in Telephony Gateway. # Transfers the call in Telephony Gateway.
         "phoneNumber": "A String", # Required. The phone number to transfer the call to
             # in [E.164 format](https://en.wikipedia.org/wiki/E.164).
             #
             # We currently only allow transferring to US numbers (+1xxxyyyzzzz).
       },
-      "payload": { # Returns a response containing a custom, platform-specific payload.
-          # See the Intent.Message.Platform type for a description of the
-          # structure that may be required for your platform.
+      "payload": { # A custom platform-specific response.
         "a_key": "", # Properties of the object.
       },
       "card": { # The card response message. # Displays a card.
@@ -1183,33 +2095,70 @@
       },
     },
   ],
-  "parentFollowupIntentName": "A String", # Read-only after creation. The unique identifier of the parent intent in the
-      # chain of followup intents. You can set this field when creating an intent,
-      # for example with CreateIntent or BatchUpdateIntents, in order to
-      # make this intent a followup intent.
-      # 
-      # It identifies the parent followup intent.
-      # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+  "trainingPhrases": [ # Optional. The collection of examples that the agent is
+      # trained on.
+    { # Represents an example that the agent is trained on.
+      "parts": [ # Required. The ordered list of training phrase parts.
+          # The parts are concatenated in order to form the training phrase.
+          #
+          # Note: The API does not automatically annotate training phrases like the
+          # Dialogflow Console does.
+          #
+          # Note: Do not forget to include whitespace at part boundaries,
+          # so the training phrase is well formatted when the parts are concatenated.
+          #
+          # If the training phrase does not need to be annotated with parameters,
+          # you just need a single part with only the Part.text field set.
+          #
+          # If you want to annotate the training phrase, you must create multiple
+          # parts, where the fields of each part are populated in one of two ways:
+          #
+          # -   `Part.text` is set to a part of the phrase that has no parameters.
+          # -   `Part.text` is set to a part of the phrase that you want to annotate,
+          #     and the `entity_type`, `alias`, and `user_defined` fields are all
+          #     set.
+        { # Represents a part of a training phrase.
+          "alias": "A String", # Optional. The parameter name for the value extracted from the
+              # annotated part of the example.
+              # This field is required for annotated parts of the training phrase.
+          "entityType": "A String", # Optional. The entity type name prefixed with `@`.
+              # This field is required for annotated parts of the training phrase.
+          "text": "A String", # Required. The text for this part.
+          "userDefined": True or False, # Optional. Indicates whether the text was manually annotated.
+              # This field is set to true when the Dialogflow Console is used to
+              # manually annotate the part. When creating an annotated part with the
+              # API, you must set this to true.
+        },
+      ],
+      "type": "A String", # Required. The type of the training phrase.
+      "name": "A String", # Output only. The unique identifier of this training phrase.
+      "timesAddedCount": 42, # Optional. Indicates how many times this example was added to
+          # the intent. Each time a developer adds an existing sample by editing an
+          # intent or training, this counter is increased.
+    },
+  ],
   "defaultResponsePlatforms": [ # Optional. The list of platforms for which the first responses will be
       # copied from the messages in PLATFORM_UNSPECIFIED (i.e. default platform).
     "A String",
   ],
-  "priority": 42, # Optional. The priority of this intent. Higher numbers represent higher
-      # priorities. If this is zero or unspecified, we use the default
-      # priority 500000.
+  "priority": 42, # The priority of this intent. Higher numbers represent higher
+      # priorities.
       # 
-      # Negative numbers mean that the intent is disabled.
+      # - If the supplied value is unspecified or 0, the service
+      #   translates the value to 500,000, which corresponds to the
+      #   `Normal` priority in the console.
+      # - If the supplied value is negative, the intent is ignored
+      #   in runtime detect intent requests.
   "rootFollowupIntentName": "A String", # Read-only. The unique identifier of the root intent in the chain of
       # followup intents. It identifies the correct followup intents chain for
       # this intent. We populate this field only in the output.
       # 
-      # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
-  "endInteraction": True or False, # Optional. Indicates that this intent ends an interaction. Some integrations
-      # (e.g., Actions on Google or Dialogflow phone gateway) use this information
-      # to close interaction with an end user. Default is false.
+      # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
+  "resetContexts": True or False, # Optional. Indicates whether to delete all contexts in the current
+      # session when this intent is matched.
   "inputContextNames": [ # Optional. The list of context names required for this intent to be
       # triggered.
-      # Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+      # Format: `projects/&lt;Project ID&gt;/agent/sessions/-/contexts/&lt;Context ID&gt;`.
     "A String",
   ],
   "mlEnabled": True or False, # Optional. Indicates whether Machine Learning is enabled for the intent.
@@ -1229,26 +2178,44 @@
       # is matched. Context messages in this collection should not set the
       # parameters field. Setting the `lifespan_count` to 0 will reset the context
       # when the intent is matched.
-      # Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+      # Format: `projects/&lt;Project ID&gt;/agent/sessions/-/contexts/&lt;Context ID&gt;`.
     { # Represents a context.
-      "parameters": { # Optional. The collection of parameters associated with this context.
-          # Refer to [this
-          # doc](https://cloud.google.com/dialogflow-enterprise/docs/intents-actions-parameters)
-          # for syntax.
-        "a_key": "", # Properties of the object.
-      },
       "name": "A String", # Required. The unique identifier of the context. Format:
-          # `projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context ID>`,
-          # or `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
-          # ID>/sessions/<Session ID>/contexts/<Context ID>`.
+          # `projects/&lt;Project ID&gt;/agent/sessions/&lt;Session ID&gt;/contexts/&lt;Context ID&gt;`,
+          # or `projects/&lt;Project ID&gt;/agent/environments/&lt;Environment ID&gt;/users/&lt;User
+          # ID&gt;/sessions/&lt;Session ID&gt;/contexts/&lt;Context ID&gt;`.
           #
           # The `Context ID` is always converted to lowercase, may only contain
           # characters in a-zA-Z0-9_-% and may be at most 250 bytes long.
           #
           # If `Environment ID` is not specified, we assume default 'draft'
           # environment. If `User ID` is not specified, we assume default '-' user.
+          #
+          # The following context names are reserved for internal use by Dialogflow.
+          # You should not use these contexts or create contexts with these names:
+          #
+          # * `__system_counters__`
+          # * `*_id_dialog_context`
+          # * `*_dialog_params_size`
+      "parameters": { # Optional. The collection of parameters associated with this context.
+          #
+          # Depending on your protocol or client library language, this is a
+          # map, associative array, symbol table, dictionary, or JSON object
+          # composed of a collection of (MapKey, MapValue) pairs:
+          #
+          # -   MapKey type: string
+          # -   MapKey value: parameter name
+          # -   MapValue type:
+          #     -   If parameter's entity type is a composite entity: map
+          #     -   Else: string or number, depending on parameter value type
+          # -   MapValue value:
+          #     -   If parameter's entity type is a composite entity:
+          #         map from composite entity property names to property values
+          #     -   Else: parameter value
+        "a_key": "", # Properties of the object.
+      },
       "lifespanCount": 42, # Optional. The number of conversational query requests after which the
-          # context expires. If set to `0` (the default) the context expires
+          # context expires. The default is `0`. If set to `0`, the context expires
           # immediately. Contexts expire automatically after 20 minutes if there
           # are no matching queries.
     },
@@ -1256,16 +2223,16 @@
   "events": [ # Optional. The collection of event names that trigger the intent.
       # If the collection of input contexts is not empty, all of the contexts must
       # be present in the active user session for an event to trigger this intent.
+      # Event names are limited to 150 characters.
     "A String",
   ],
 }
 
-  languageCode: string, Optional. The language of training phrases, parameters and rich messages
-defined in `intent`. If not specified, the agent's default language is
-used. [Many
-languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language)
-are supported. Note: languages must be enabled in the agent before they can
-be used.
+  languageCode: string, Optional. The language used to access language-specific data.
+If not specified, the agent's default language is used.
+For more information, see
+[Multilingual intent and entity
+data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
   intentView: string, Optional. The resource view to apply to the returned intent.
   x__xgafv: string, V1 error format.
     Allowed values
@@ -1287,12 +2254,10 @@
     "name": "A String", # The unique identifier of this intent.
         # Required for Intents.UpdateIntent and Intents.BatchUpdateIntents
         # methods.
-        # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+        # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
     "parameters": [ # Optional. The collection of parameters associated with the intent.
       { # Represents intent parameters.
-        "mandatory": True or False, # Optional. Indicates whether the parameter is required. That is,
-            # whether the intent cannot be completed without collecting the parameter
-            # value.
+        "displayName": "A String", # Required. The name of the parameter.
         "name": "A String", # The unique identifier of this parameter.
         "defaultValue": "A String", # Optional. The default value to use when the `value` yields an empty
             # result.
@@ -1308,67 +2273,36 @@
             # - a parameter value from some context defined as
             #   `#context_name.parameter_name`.
         "prompts": [ # Optional. The collection of prompts that the agent can present to the
-            # user in order to collect value for the parameter.
+            # user in order to collect a value for the parameter.
           "A String",
         ],
         "isList": True or False, # Optional. Indicates whether the parameter represents a list of values.
-        "displayName": "A String", # Required. The name of the parameter.
+        "mandatory": True or False, # Optional. Indicates whether the parameter is required. That is,
+            # whether the intent cannot be completed without collecting the parameter
+            # value.
       },
     ],
-    "trainingPhrases": [ # Optional. The collection of examples that the agent is
-        # trained on.
-      { # Represents an example that the agent is trained on.
-        "parts": [ # Required. The ordered list of training phrase parts.
-            # The parts are concatenated in order to form the training phrase.
-            #
-            # Note: The API does not automatically annotate training phrases like the
-            # Dialogflow Console does.
-            #
-            # Note: Do not forget to include whitespace at part boundaries,
-            # so the training phrase is well formatted when the parts are concatenated.
-            #
-            # If the training phrase does not need to be annotated with parameters,
-            # you just need a single part with only the Part.text field set.
-            #
-            # If you want to annotate the training phrase, you must create multiple
-            # parts, where the fields of each part are populated in one of two ways:
-            #
-            # -   `Part.text` is set to a part of the phrase that has no parameters.
-            # -   `Part.text` is set to a part of the phrase that you want to annotate,
-            #     and the `entity_type`, `alias`, and `user_defined` fields are all
-            #     set.
-          { # Represents a part of a training phrase.
-            "text": "A String", # Required. The text for this part.
-            "entityType": "A String", # Optional. The entity type name prefixed with `@`.
-                # This field is required for annotated parts of the training phrase.
-            "userDefined": True or False, # Optional. Indicates whether the text was manually annotated.
-                # This field is set to true when the Dialogflow Console is used to
-                # manually annotate the part. When creating an annotated part with the
-                # API, you must set this to true.
-            "alias": "A String", # Optional. The parameter name for the value extracted from the
-                # annotated part of the example.
-                # This field is required for annotated parts of the training phrase.
-          },
-        ],
-        "type": "A String", # Required. The type of the training phrase.
-        "name": "A String", # Output only. The unique identifier of this training phrase.
-        "timesAddedCount": 42, # Optional. Indicates how many times this example was added to
-            # the intent. Each time a developer adds an existing sample by editing an
-            # intent or training, this counter is increased.
-      },
-    ],
+    "endInteraction": True or False, # Optional. Indicates that this intent ends an interaction. Some integrations
+        # (e.g., Actions on Google or Dialogflow phone gateway) use this information
+        # to close interaction with an end user. Default is false.
     "followupIntentInfo": [ # Read-only. Information about all followup intents that have this intent as
         # a direct or indirect parent. We populate this field only in the output.
       { # Represents a single followup intent in the chain.
         "followupIntentName": "A String", # The unique identifier of the followup intent.
-            # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+            # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
         "parentFollowupIntentName": "A String", # The unique identifier of the followup intent's parent.
-            # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+            # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
       },
     ],
     "webhookState": "A String", # Optional. Indicates whether webhooks are enabled for the intent.
-    "resetContexts": True or False, # Optional. Indicates whether to delete all contexts in the current
-        # session when this intent is matched.
+    "parentFollowupIntentName": "A String", # Read-only after creation. The unique identifier of the parent intent in the
+        # chain of followup intents. You can set this field when creating an intent,
+        # for example with CreateIntent or
+        # BatchUpdateIntents, in order to make this
+        # intent a followup intent.
+        #
+        # It identifies the parent followup intent.
+        # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
     "messages": [ # Optional. The collection of rich messages corresponding to the
         # `Response` field in the Dialogflow console.
       { # Corresponds to the `Response` field in the Dialogflow console.
@@ -1378,12 +2312,12 @@
             # `SimpleResponse`.
           "simpleResponses": [ # Required. The list of simple responses.
             { # The simple response message containing speech or text.
-              "textToSpeech": "A String", # One of text_to_speech or ssml must be provided. The plain text of the
-                  # speech output. Mutually exclusive with ssml.
-              "displayText": "A String", # Optional. The text to display.
               "ssml": "A String", # One of text_to_speech or ssml must be provided. Structured spoken
                   # response to the user in the SSML format. Mutually exclusive with
                   # text_to_speech.
+              "textToSpeech": "A String", # One of text_to_speech or ssml must be provided. The plain text of the
+                  # speech output. Mutually exclusive with ssml.
+              "displayText": "A String", # Optional. The text to display.
             },
           ],
         },
@@ -1393,6 +2327,48 @@
           ],
           "title": "A String", # Optional. The title of the collection of quick replies.
         },
+        "rbmText": { # Rich Business Messaging (RBM) text response with suggestions. # Rich Business Messaging (RBM) text response.
+            #
+            # RBM allows businesses to send enriched and branded versions of SMS. See
+            # https://jibe.google.com/business-messaging.
+          "text": "A String", # Required. Text sent and displayed to the user.
+          "rbmSuggestion": [ # Optional. One or more suggestions to show to the user.
+            { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                # easily select/click a predefined response or perform an action (like
+                # opening a web uri).
+              "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                  # can choose from the card.
+                "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                    # to send back to the agent (https://goo.gl/GXotJW).
+                },
+                "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                    # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                    # registered as the default handler for the URL, then this app will be
+                    # opened instead, and its icon will be used in the suggested action UI.
+                  "uri": "A String", # Required. The uri to open on the user device
+                },
+                "text": "A String", # Text to display alongside the action.
+                "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                    # but does not dial automatically (https://goo.gl/ergbB2).
+                  "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                      # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                      # format. An example of a correctly formatted phone number:
+                      # +15556767888.
+                },
+                "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                    # when the user taps the suggested action. This data will be also
+                    # forwarded to webhook to allow performing custom business logic.
+              },
+              "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                  # instead of typing in their own response.
+                "text": "A String", # Suggested reply text.
+                "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                    # when the user taps the suggested reply. This data will be also
+                    # forwarded to webhook to allow performing custom business logic.
+              },
+            },
+          ],
+        },
         "platform": "A String", # Optional. The platform that this message is intended for.
         "text": { # The text response message. # Returns a text response.
           "text": [ # Optional. The collection of the agent's responses.
@@ -1414,22 +2390,105 @@
               # [SSML](https://developers.google.com/actions/reference/ssml).
           "text": "A String", # The raw text to be synthesized.
         },
-        "suggestions": { # The collection of suggestions. # Displays suggestion chips for Actions on Google.
-          "suggestions": [ # Required. The list of suggested replies.
-            { # The suggestion chip message that the user can tap to quickly post a reply
-                # to the conversation.
-              "title": "A String", # Required. The text shown the in the suggestion chip.
+        "rbmCarouselRichCard": { # Carousel Rich Business Messaging (RBM) rich card. # Rich Business Messaging (RBM) carousel rich card response.
+            #
+            # Rich cards allow you to respond to users with more vivid content, e.g.
+            # with media and suggestions.
+            #
+            # For more details about RBM rich cards, please see:
+            # https://developers.google.com/rcs-business-messaging/rbm/guides/build/send-messages#rich-cards.
+            # If you want to show a single card with more control over the layout,
+            # please use RbmStandaloneCard instead.
+          "cardContents": [ # Required. The cards in the carousel. A carousel must have at least
+              # 2 cards and at most 10.
+            { # Rich Business Messaging (RBM) Card content
+              "media": { # Rich Business Messaging (RBM) Media displayed in Cards # Optional. However at least one of the title, description or media must
+                  # be set. Media (image, GIF or a video) to include in the card.
+                  # The following media-types are currently supported:
+                  #
+                  # Image Types
+                  #
+                  # * image/jpeg
+                  # * image/jpg'
+                  # * image/gif
+                  # * image/png
+                  #
+                  # Video Types
+                  #
+                  # * video/h263
+                  # * video/m4v
+                  # * video/mp4
+                  # * video/mpeg
+                  # * video/mpeg4
+                  # * video/webm
+                "fileUri": "A String", # Required. Publicly reachable URI of the file. The RBM platform
+                    # determines the MIME type of the file from the content-type field in
+                    # the HTTP headers when the platform fetches the file. The content-type
+                    # field must be present and accurate in the HTTP response from the URL.
+                "thumbnailUri": "A String", # Optional. Publicly reachable URI of the thumbnail.If you don't
+                    # provide a thumbnail URI, the RBM platform displays a blank
+                    # placeholder thumbnail until the user's device downloads the file.
+                    # Depending on the user's setting, the file may not download
+                    # automatically and may require the user to tap a download button.
+                "height": "A String", # Required for cards with vertical orientation. The height of the media
+                    # within a rich card with a vertical layout. (https://goo.gl/NeFCjz).
+                    # For a standalone card with horizontal layout, height is not
+                    # customizable, and this field is ignored.
+              },
+              "suggestions": [ # Optional. List of suggestions to include in the card.
+                { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                    # easily select/click a predefined response or perform an action (like
+                    # opening a web uri).
+                  "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                      # can choose from the card.
+                    "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                        # to send back to the agent (https://goo.gl/GXotJW).
+                    },
+                    "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                        # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                        # registered as the default handler for the URL, then this app will be
+                        # opened instead, and its icon will be used in the suggested action UI.
+                      "uri": "A String", # Required. The uri to open on the user device
+                    },
+                    "text": "A String", # Text to display alongside the action.
+                    "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                        # but does not dial automatically (https://goo.gl/ergbB2).
+                      "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                          # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                          # format. An example of a correctly formatted phone number:
+                          # +15556767888.
+                    },
+                    "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                        # when the user taps the suggested action. This data will be also
+                        # forwarded to webhook to allow performing custom business logic.
+                  },
+                  "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                      # instead of typing in their own response.
+                    "text": "A String", # Suggested reply text.
+                    "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                        # when the user taps the suggested reply. This data will be also
+                        # forwarded to webhook to allow performing custom business logic.
+                  },
+                },
+              ],
+              "description": "A String", # Optional. Description of the card (at most 2000 bytes).
+                  #
+                  # At least one of the title, description or media must be set.
+              "title": "A String", # Optional. Title of the card (at most 200 bytes).
+                  #
+                  # At least one of the title, description or media must be set.
             },
           ],
+          "cardWidth": "A String", # Required. The width of the cards in the carousel.
         },
         "telephonyPlayAudio": { # Plays audio from a file in Telephony Gateway. # Plays audio from a file in Telephony Gateway.
           "audioUri": "A String", # Required. URI to a Google Cloud Storage object containing the audio to
               # play, e.g., "gs://bucket/object". The object must contain a single
               # channel (mono) of linear PCM audio (2 bytes / sample) at 8kHz.
               #
-              # This object must be readable by the `service-<Project
-              # Number>@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
-              # where <Project Number> is the number of the Telephony Gateway project
+              # This object must be readable by the `service-&lt;Project
+              # Number&gt;@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
+              # where &lt;Project Number&gt; is the number of the Telephony Gateway project
               # (usually the same as the Dialogflow agent project). If the Google Cloud
               # Storage bucket is in the Telephony Gateway project, this permission is
               # added by default when enabling the Dialogflow V2 API.
@@ -1437,12 +2496,127 @@
               # For audio from other sources, consider using the
               # `TelephonySynthesizeSpeech` message with SSML.
         },
+        "rbmStandaloneRichCard": { # Standalone Rich Business Messaging (RBM) rich card. # Standalone Rich Business Messaging (RBM) rich card response.
+            #
+            # Rich cards allow you to respond to users with more vivid content, e.g.
+            # with media and suggestions.
+            #
+            # For more details about RBM rich cards, please see:
+            # https://developers.google.com/rcs-business-messaging/rbm/guides/build/send-messages#rich-cards.
+            # You can group multiple rich cards into one using RbmCarouselCard but
+            # carousel cards will give you less control over the card layout.
+          "thumbnailImageAlignment": "A String", # Required if orientation is horizontal.
+              # Image preview alignment for standalone cards with horizontal layout.
+          "cardContent": { # Rich Business Messaging (RBM) Card content # Required. Card content.
+            "media": { # Rich Business Messaging (RBM) Media displayed in Cards # Optional. However at least one of the title, description or media must
+                # be set. Media (image, GIF or a video) to include in the card.
+                # The following media-types are currently supported:
+                #
+                # Image Types
+                #
+                # * image/jpeg
+                # * image/jpg'
+                # * image/gif
+                # * image/png
+                #
+                # Video Types
+                #
+                # * video/h263
+                # * video/m4v
+                # * video/mp4
+                # * video/mpeg
+                # * video/mpeg4
+                # * video/webm
+              "fileUri": "A String", # Required. Publicly reachable URI of the file. The RBM platform
+                  # determines the MIME type of the file from the content-type field in
+                  # the HTTP headers when the platform fetches the file. The content-type
+                  # field must be present and accurate in the HTTP response from the URL.
+              "thumbnailUri": "A String", # Optional. Publicly reachable URI of the thumbnail.If you don't
+                  # provide a thumbnail URI, the RBM platform displays a blank
+                  # placeholder thumbnail until the user's device downloads the file.
+                  # Depending on the user's setting, the file may not download
+                  # automatically and may require the user to tap a download button.
+              "height": "A String", # Required for cards with vertical orientation. The height of the media
+                  # within a rich card with a vertical layout. (https://goo.gl/NeFCjz).
+                  # For a standalone card with horizontal layout, height is not
+                  # customizable, and this field is ignored.
+            },
+            "suggestions": [ # Optional. List of suggestions to include in the card.
+              { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                  # easily select/click a predefined response or perform an action (like
+                  # opening a web uri).
+                "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                    # can choose from the card.
+                  "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                      # to send back to the agent (https://goo.gl/GXotJW).
+                  },
+                  "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                      # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                      # registered as the default handler for the URL, then this app will be
+                      # opened instead, and its icon will be used in the suggested action UI.
+                    "uri": "A String", # Required. The uri to open on the user device
+                  },
+                  "text": "A String", # Text to display alongside the action.
+                  "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                      # but does not dial automatically (https://goo.gl/ergbB2).
+                    "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                        # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                        # format. An example of a correctly formatted phone number:
+                        # +15556767888.
+                  },
+                  "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                      # when the user taps the suggested action. This data will be also
+                      # forwarded to webhook to allow performing custom business logic.
+                },
+                "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                    # instead of typing in their own response.
+                  "text": "A String", # Suggested reply text.
+                  "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                      # when the user taps the suggested reply. This data will be also
+                      # forwarded to webhook to allow performing custom business logic.
+                },
+              },
+            ],
+            "description": "A String", # Optional. Description of the card (at most 2000 bytes).
+                #
+                # At least one of the title, description or media must be set.
+            "title": "A String", # Optional. Title of the card (at most 200 bytes).
+                #
+                # At least one of the title, description or media must be set.
+          },
+          "cardOrientation": "A String", # Required. Orientation of the card.
+        },
         "linkOutSuggestion": { # The suggestion chip message that allows the user to jump out to the app # Displays a link out suggestion chip for Actions on Google.
             # or website associated with this agent.
           "uri": "A String", # Required. The URI of the app or site to open when the user taps the
               # suggestion chip.
           "destinationName": "A String", # Required. The name of the app or site this chip is linking to.
         },
+        "browseCarouselCard": { # Browse Carousel Card for Actions on Google. # Browse carousel card for Actions on Google.
+            # https://developers.google.com/actions/assistant/responses#browsing_carousel
+          "items": [ # Required. List of items in the Browse Carousel Card. Minimum of two
+              # items, maximum of ten.
+            { # Browsing carousel tile
+              "image": { # The image response message. # Optional. Hero image for the carousel item.
+                "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                    # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                "imageUri": "A String", # Optional. The public URI to an image file.
+              },
+              "title": "A String", # Required. Title of the carousel item. Maximum of two lines of text.
+              "description": "A String", # Optional. Description of the carousel item. Maximum of four lines of
+                  # text.
+              "openUriAction": { # Actions on Google action to open a given url. # Required. Action to present to the user.
+                "url": "A String", # Required. URL
+                "urlTypeHint": "A String", # Optional. Specifies the type of viewer that is used when opening
+                    # the URL. Defaults to opening via web browser.
+              },
+              "footer": "A String", # Optional. Text that appears at the bottom of the Browse Carousel
+                  # Card. Maximum of one line of text.
+            },
+          ],
+          "imageDisplayOptions": "A String", # Optional. Settings for displaying the image. Applies to every image in
+              # items.
+        },
         "basicCard": { # The basic card message. Useful for displaying information. # Displays a basic card for Actions on Google.
           "buttons": [ # Optional. The collection of card buttons.
             { # The button object that appears at the bottom of a card.
@@ -1461,6 +2635,59 @@
           "subtitle": "A String", # Optional. The subtitle of the card.
           "title": "A String", # Optional. The title of the card.
         },
+        "mediaContent": { # The media content card for Actions on Google. # The media content card for Actions on Google.
+          "mediaObjects": [ # Required. List of media objects.
+            { # Response media object for media content card.
+              "contentUrl": "A String", # Required. Url where the media is stored.
+              "description": "A String", # Optional. Description of media card.
+              "name": "A String", # Required. Name of media card.
+              "largeImage": { # The image response message. # Optional. Image to display above media content.
+                "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                    # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                "imageUri": "A String", # Optional. The public URI to an image file.
+              },
+              "icon": { # The image response message. # Optional. Icon to display above media content.
+                "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                    # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                "imageUri": "A String", # Optional. The public URI to an image file.
+              },
+            },
+          ],
+          "mediaType": "A String", # Optional. What type of media is the content (ie "audio").
+        },
+        "tableCard": { # Table card for Actions on Google. # Table card for Actions on Google.
+          "rows": [ # Optional. Rows in this table of data.
+            { # Row of TableCard.
+              "cells": [ # Optional. List of cells that make up this row.
+                { # Cell of TableCardRow.
+                  "text": "A String", # Required. Text in this cell.
+                },
+              ],
+              "dividerAfter": True or False, # Optional. Whether to add a visual divider after this row.
+            },
+          ],
+          "subtitle": "A String", # Optional. Subtitle to the title.
+          "title": "A String", # Required. Title of the card.
+          "image": { # The image response message. # Optional. Image which should be displayed on the card.
+            "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+            "imageUri": "A String", # Optional. The public URI to an image file.
+          },
+          "columnProperties": [ # Optional. Display properties for the columns in this table.
+            { # Column properties for TableCard.
+              "header": "A String", # Required. Column heading.
+              "horizontalAlignment": "A String", # Optional. Defines text alignment for all cells in this column.
+            },
+          ],
+          "buttons": [ # Optional. List of buttons for the card.
+            { # The button object that appears at the bottom of a card.
+              "openUriAction": { # Opens the given URI. # Required. Action to take when a user taps on the button.
+                "uri": "A String", # Required. The HTTP or HTTPS scheme URI.
+              },
+              "title": "A String", # Required. The title of the button.
+            },
+          ],
+        },
         "carouselSelect": { # The card for presenting a carousel of options to select from. # Displays a carousel card for Actions on Google.
           "items": [ # Required. Carousel items.
             { # An item in the carousel.
@@ -1504,17 +2731,24 @@
               "title": "A String", # Required. The title of the list item.
             },
           ],
+          "subtitle": "A String", # Optional. Subtitle of the list.
           "title": "A String", # Optional. The overall title of the list.
         },
+        "suggestions": { # The collection of suggestions. # Displays suggestion chips for Actions on Google.
+          "suggestions": [ # Required. The list of suggested replies.
+            { # The suggestion chip message that the user can tap to quickly post a reply
+                # to the conversation.
+              "title": "A String", # Required. The text shown the in the suggestion chip.
+            },
+          ],
+        },
         "telephonyTransferCall": { # Transfers the call in Telephony Gateway. # Transfers the call in Telephony Gateway.
           "phoneNumber": "A String", # Required. The phone number to transfer the call to
               # in [E.164 format](https://en.wikipedia.org/wiki/E.164).
               #
               # We currently only allow transferring to US numbers (+1xxxyyyzzzz).
         },
-        "payload": { # Returns a response containing a custom, platform-specific payload.
-            # See the Intent.Message.Platform type for a description of the
-            # structure that may be required for your platform.
+        "payload": { # A custom platform-specific response.
           "a_key": "", # Properties of the object.
         },
         "card": { # The card response message. # Displays a card.
@@ -1531,33 +2765,70 @@
         },
       },
     ],
-    "parentFollowupIntentName": "A String", # Read-only after creation. The unique identifier of the parent intent in the
-        # chain of followup intents. You can set this field when creating an intent,
-        # for example with CreateIntent or BatchUpdateIntents, in order to
-        # make this intent a followup intent.
-        #
-        # It identifies the parent followup intent.
-        # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+    "trainingPhrases": [ # Optional. The collection of examples that the agent is
+        # trained on.
+      { # Represents an example that the agent is trained on.
+        "parts": [ # Required. The ordered list of training phrase parts.
+            # The parts are concatenated in order to form the training phrase.
+            #
+            # Note: The API does not automatically annotate training phrases like the
+            # Dialogflow Console does.
+            #
+            # Note: Do not forget to include whitespace at part boundaries,
+            # so the training phrase is well formatted when the parts are concatenated.
+            #
+            # If the training phrase does not need to be annotated with parameters,
+            # you just need a single part with only the Part.text field set.
+            #
+            # If you want to annotate the training phrase, you must create multiple
+            # parts, where the fields of each part are populated in one of two ways:
+            #
+            # -   `Part.text` is set to a part of the phrase that has no parameters.
+            # -   `Part.text` is set to a part of the phrase that you want to annotate,
+            #     and the `entity_type`, `alias`, and `user_defined` fields are all
+            #     set.
+          { # Represents a part of a training phrase.
+            "alias": "A String", # Optional. The parameter name for the value extracted from the
+                # annotated part of the example.
+                # This field is required for annotated parts of the training phrase.
+            "entityType": "A String", # Optional. The entity type name prefixed with `@`.
+                # This field is required for annotated parts of the training phrase.
+            "text": "A String", # Required. The text for this part.
+            "userDefined": True or False, # Optional. Indicates whether the text was manually annotated.
+                # This field is set to true when the Dialogflow Console is used to
+                # manually annotate the part. When creating an annotated part with the
+                # API, you must set this to true.
+          },
+        ],
+        "type": "A String", # Required. The type of the training phrase.
+        "name": "A String", # Output only. The unique identifier of this training phrase.
+        "timesAddedCount": 42, # Optional. Indicates how many times this example was added to
+            # the intent. Each time a developer adds an existing sample by editing an
+            # intent or training, this counter is increased.
+      },
+    ],
     "defaultResponsePlatforms": [ # Optional. The list of platforms for which the first responses will be
         # copied from the messages in PLATFORM_UNSPECIFIED (i.e. default platform).
       "A String",
     ],
-    "priority": 42, # Optional. The priority of this intent. Higher numbers represent higher
-        # priorities. If this is zero or unspecified, we use the default
-        # priority 500000.
+    "priority": 42, # The priority of this intent. Higher numbers represent higher
+        # priorities.
         #
-        # Negative numbers mean that the intent is disabled.
+        # - If the supplied value is unspecified or 0, the service
+        #   translates the value to 500,000, which corresponds to the
+        #   `Normal` priority in the console.
+        # - If the supplied value is negative, the intent is ignored
+        #   in runtime detect intent requests.
     "rootFollowupIntentName": "A String", # Read-only. The unique identifier of the root intent in the chain of
         # followup intents. It identifies the correct followup intents chain for
         # this intent. We populate this field only in the output.
         #
-        # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
-    "endInteraction": True or False, # Optional. Indicates that this intent ends an interaction. Some integrations
-        # (e.g., Actions on Google or Dialogflow phone gateway) use this information
-        # to close interaction with an end user. Default is false.
+        # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
+    "resetContexts": True or False, # Optional. Indicates whether to delete all contexts in the current
+        # session when this intent is matched.
     "inputContextNames": [ # Optional. The list of context names required for this intent to be
         # triggered.
-        # Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+        # Format: `projects/&lt;Project ID&gt;/agent/sessions/-/contexts/&lt;Context ID&gt;`.
       "A String",
     ],
     "mlEnabled": True or False, # Optional. Indicates whether Machine Learning is enabled for the intent.
@@ -1577,26 +2848,44 @@
         # is matched. Context messages in this collection should not set the
         # parameters field. Setting the `lifespan_count` to 0 will reset the context
         # when the intent is matched.
-        # Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+        # Format: `projects/&lt;Project ID&gt;/agent/sessions/-/contexts/&lt;Context ID&gt;`.
       { # Represents a context.
-        "parameters": { # Optional. The collection of parameters associated with this context.
-            # Refer to [this
-            # doc](https://cloud.google.com/dialogflow-enterprise/docs/intents-actions-parameters)
-            # for syntax.
-          "a_key": "", # Properties of the object.
-        },
         "name": "A String", # Required. The unique identifier of the context. Format:
-            # `projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context ID>`,
-            # or `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
-            # ID>/sessions/<Session ID>/contexts/<Context ID>`.
+            # `projects/&lt;Project ID&gt;/agent/sessions/&lt;Session ID&gt;/contexts/&lt;Context ID&gt;`,
+            # or `projects/&lt;Project ID&gt;/agent/environments/&lt;Environment ID&gt;/users/&lt;User
+            # ID&gt;/sessions/&lt;Session ID&gt;/contexts/&lt;Context ID&gt;`.
             #
             # The `Context ID` is always converted to lowercase, may only contain
             # characters in a-zA-Z0-9_-% and may be at most 250 bytes long.
             #
             # If `Environment ID` is not specified, we assume default 'draft'
             # environment. If `User ID` is not specified, we assume default '-' user.
+            #
+            # The following context names are reserved for internal use by Dialogflow.
+            # You should not use these contexts or create contexts with these names:
+            #
+            # * `__system_counters__`
+            # * `*_id_dialog_context`
+            # * `*_dialog_params_size`
+        "parameters": { # Optional. The collection of parameters associated with this context.
+            #
+            # Depending on your protocol or client library language, this is a
+            # map, associative array, symbol table, dictionary, or JSON object
+            # composed of a collection of (MapKey, MapValue) pairs:
+            #
+            # -   MapKey type: string
+            # -   MapKey value: parameter name
+            # -   MapValue type:
+            #     -   If parameter's entity type is a composite entity: map
+            #     -   Else: string or number, depending on parameter value type
+            # -   MapValue value:
+            #     -   If parameter's entity type is a composite entity:
+            #         map from composite entity property names to property values
+            #     -   Else: parameter value
+          "a_key": "", # Properties of the object.
+        },
         "lifespanCount": 42, # Optional. The number of conversational query requests after which the
-            # context expires. If set to `0` (the default) the context expires
+            # context expires. The default is `0`. If set to `0`, the context expires
             # immediately. Contexts expire automatically after 20 minutes if there
             # are no matching queries.
       },
@@ -1604,6 +2893,7 @@
     "events": [ # Optional. The collection of event names that trigger the intent.
         # If the collection of input contexts is not empty, all of the contexts must
         # be present in the active user session for an event to trigger this intent.
+        # Event names are limited to 150 characters.
       "A String",
     ],
   }</pre>
@@ -1617,7 +2907,7 @@
   name: string, Required. The name of the intent to delete. If this intent has direct or
 indirect followup intents, we also delete them.
 
-Format: `projects/<Project ID>/agent/intents/<Intent ID>`. (required)
+Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`. (required)
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -1644,13 +2934,12 @@
 
 Args:
   name: string, Required. The name of the intent.
-Format: `projects/<Project ID>/agent/intents/<Intent ID>`. (required)
-  languageCode: string, Optional. The language to retrieve training phrases, parameters and rich
-messages for. If not specified, the agent's default language is used.
-[Many
-languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language)
-are supported. Note: languages must be enabled in the agent before they can
-be used.
+Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`. (required)
+  languageCode: string, Optional. The language used to access language-specific data.
+If not specified, the agent's default language is used.
+For more information, see
+[Multilingual intent and entity
+data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
   intentView: string, Optional. The resource view to apply to the returned intent.
   x__xgafv: string, V1 error format.
     Allowed values
@@ -1672,12 +2961,10 @@
     "name": "A String", # The unique identifier of this intent.
         # Required for Intents.UpdateIntent and Intents.BatchUpdateIntents
         # methods.
-        # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+        # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
     "parameters": [ # Optional. The collection of parameters associated with the intent.
       { # Represents intent parameters.
-        "mandatory": True or False, # Optional. Indicates whether the parameter is required. That is,
-            # whether the intent cannot be completed without collecting the parameter
-            # value.
+        "displayName": "A String", # Required. The name of the parameter.
         "name": "A String", # The unique identifier of this parameter.
         "defaultValue": "A String", # Optional. The default value to use when the `value` yields an empty
             # result.
@@ -1693,67 +2980,36 @@
             # - a parameter value from some context defined as
             #   `#context_name.parameter_name`.
         "prompts": [ # Optional. The collection of prompts that the agent can present to the
-            # user in order to collect value for the parameter.
+            # user in order to collect a value for the parameter.
           "A String",
         ],
         "isList": True or False, # Optional. Indicates whether the parameter represents a list of values.
-        "displayName": "A String", # Required. The name of the parameter.
+        "mandatory": True or False, # Optional. Indicates whether the parameter is required. That is,
+            # whether the intent cannot be completed without collecting the parameter
+            # value.
       },
     ],
-    "trainingPhrases": [ # Optional. The collection of examples that the agent is
-        # trained on.
-      { # Represents an example that the agent is trained on.
-        "parts": [ # Required. The ordered list of training phrase parts.
-            # The parts are concatenated in order to form the training phrase.
-            #
-            # Note: The API does not automatically annotate training phrases like the
-            # Dialogflow Console does.
-            #
-            # Note: Do not forget to include whitespace at part boundaries,
-            # so the training phrase is well formatted when the parts are concatenated.
-            #
-            # If the training phrase does not need to be annotated with parameters,
-            # you just need a single part with only the Part.text field set.
-            #
-            # If you want to annotate the training phrase, you must create multiple
-            # parts, where the fields of each part are populated in one of two ways:
-            #
-            # -   `Part.text` is set to a part of the phrase that has no parameters.
-            # -   `Part.text` is set to a part of the phrase that you want to annotate,
-            #     and the `entity_type`, `alias`, and `user_defined` fields are all
-            #     set.
-          { # Represents a part of a training phrase.
-            "text": "A String", # Required. The text for this part.
-            "entityType": "A String", # Optional. The entity type name prefixed with `@`.
-                # This field is required for annotated parts of the training phrase.
-            "userDefined": True or False, # Optional. Indicates whether the text was manually annotated.
-                # This field is set to true when the Dialogflow Console is used to
-                # manually annotate the part. When creating an annotated part with the
-                # API, you must set this to true.
-            "alias": "A String", # Optional. The parameter name for the value extracted from the
-                # annotated part of the example.
-                # This field is required for annotated parts of the training phrase.
-          },
-        ],
-        "type": "A String", # Required. The type of the training phrase.
-        "name": "A String", # Output only. The unique identifier of this training phrase.
-        "timesAddedCount": 42, # Optional. Indicates how many times this example was added to
-            # the intent. Each time a developer adds an existing sample by editing an
-            # intent or training, this counter is increased.
-      },
-    ],
+    "endInteraction": True or False, # Optional. Indicates that this intent ends an interaction. Some integrations
+        # (e.g., Actions on Google or Dialogflow phone gateway) use this information
+        # to close interaction with an end user. Default is false.
     "followupIntentInfo": [ # Read-only. Information about all followup intents that have this intent as
         # a direct or indirect parent. We populate this field only in the output.
       { # Represents a single followup intent in the chain.
         "followupIntentName": "A String", # The unique identifier of the followup intent.
-            # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+            # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
         "parentFollowupIntentName": "A String", # The unique identifier of the followup intent's parent.
-            # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+            # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
       },
     ],
     "webhookState": "A String", # Optional. Indicates whether webhooks are enabled for the intent.
-    "resetContexts": True or False, # Optional. Indicates whether to delete all contexts in the current
-        # session when this intent is matched.
+    "parentFollowupIntentName": "A String", # Read-only after creation. The unique identifier of the parent intent in the
+        # chain of followup intents. You can set this field when creating an intent,
+        # for example with CreateIntent or
+        # BatchUpdateIntents, in order to make this
+        # intent a followup intent.
+        #
+        # It identifies the parent followup intent.
+        # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
     "messages": [ # Optional. The collection of rich messages corresponding to the
         # `Response` field in the Dialogflow console.
       { # Corresponds to the `Response` field in the Dialogflow console.
@@ -1763,12 +3019,12 @@
             # `SimpleResponse`.
           "simpleResponses": [ # Required. The list of simple responses.
             { # The simple response message containing speech or text.
-              "textToSpeech": "A String", # One of text_to_speech or ssml must be provided. The plain text of the
-                  # speech output. Mutually exclusive with ssml.
-              "displayText": "A String", # Optional. The text to display.
               "ssml": "A String", # One of text_to_speech or ssml must be provided. Structured spoken
                   # response to the user in the SSML format. Mutually exclusive with
                   # text_to_speech.
+              "textToSpeech": "A String", # One of text_to_speech or ssml must be provided. The plain text of the
+                  # speech output. Mutually exclusive with ssml.
+              "displayText": "A String", # Optional. The text to display.
             },
           ],
         },
@@ -1778,6 +3034,48 @@
           ],
           "title": "A String", # Optional. The title of the collection of quick replies.
         },
+        "rbmText": { # Rich Business Messaging (RBM) text response with suggestions. # Rich Business Messaging (RBM) text response.
+            #
+            # RBM allows businesses to send enriched and branded versions of SMS. See
+            # https://jibe.google.com/business-messaging.
+          "text": "A String", # Required. Text sent and displayed to the user.
+          "rbmSuggestion": [ # Optional. One or more suggestions to show to the user.
+            { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                # easily select/click a predefined response or perform an action (like
+                # opening a web uri).
+              "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                  # can choose from the card.
+                "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                    # to send back to the agent (https://goo.gl/GXotJW).
+                },
+                "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                    # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                    # registered as the default handler for the URL, then this app will be
+                    # opened instead, and its icon will be used in the suggested action UI.
+                  "uri": "A String", # Required. The uri to open on the user device
+                },
+                "text": "A String", # Text to display alongside the action.
+                "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                    # but does not dial automatically (https://goo.gl/ergbB2).
+                  "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                      # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                      # format. An example of a correctly formatted phone number:
+                      # +15556767888.
+                },
+                "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                    # when the user taps the suggested action. This data will be also
+                    # forwarded to webhook to allow performing custom business logic.
+              },
+              "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                  # instead of typing in their own response.
+                "text": "A String", # Suggested reply text.
+                "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                    # when the user taps the suggested reply. This data will be also
+                    # forwarded to webhook to allow performing custom business logic.
+              },
+            },
+          ],
+        },
         "platform": "A String", # Optional. The platform that this message is intended for.
         "text": { # The text response message. # Returns a text response.
           "text": [ # Optional. The collection of the agent's responses.
@@ -1799,22 +3097,105 @@
               # [SSML](https://developers.google.com/actions/reference/ssml).
           "text": "A String", # The raw text to be synthesized.
         },
-        "suggestions": { # The collection of suggestions. # Displays suggestion chips for Actions on Google.
-          "suggestions": [ # Required. The list of suggested replies.
-            { # The suggestion chip message that the user can tap to quickly post a reply
-                # to the conversation.
-              "title": "A String", # Required. The text shown the in the suggestion chip.
+        "rbmCarouselRichCard": { # Carousel Rich Business Messaging (RBM) rich card. # Rich Business Messaging (RBM) carousel rich card response.
+            #
+            # Rich cards allow you to respond to users with more vivid content, e.g.
+            # with media and suggestions.
+            #
+            # For more details about RBM rich cards, please see:
+            # https://developers.google.com/rcs-business-messaging/rbm/guides/build/send-messages#rich-cards.
+            # If you want to show a single card with more control over the layout,
+            # please use RbmStandaloneCard instead.
+          "cardContents": [ # Required. The cards in the carousel. A carousel must have at least
+              # 2 cards and at most 10.
+            { # Rich Business Messaging (RBM) Card content
+              "media": { # Rich Business Messaging (RBM) Media displayed in Cards # Optional. However at least one of the title, description or media must
+                  # be set. Media (image, GIF or a video) to include in the card.
+                  # The following media-types are currently supported:
+                  #
+                  # Image Types
+                  #
+                  # * image/jpeg
+                  # * image/jpg'
+                  # * image/gif
+                  # * image/png
+                  #
+                  # Video Types
+                  #
+                  # * video/h263
+                  # * video/m4v
+                  # * video/mp4
+                  # * video/mpeg
+                  # * video/mpeg4
+                  # * video/webm
+                "fileUri": "A String", # Required. Publicly reachable URI of the file. The RBM platform
+                    # determines the MIME type of the file from the content-type field in
+                    # the HTTP headers when the platform fetches the file. The content-type
+                    # field must be present and accurate in the HTTP response from the URL.
+                "thumbnailUri": "A String", # Optional. Publicly reachable URI of the thumbnail.If you don't
+                    # provide a thumbnail URI, the RBM platform displays a blank
+                    # placeholder thumbnail until the user's device downloads the file.
+                    # Depending on the user's setting, the file may not download
+                    # automatically and may require the user to tap a download button.
+                "height": "A String", # Required for cards with vertical orientation. The height of the media
+                    # within a rich card with a vertical layout. (https://goo.gl/NeFCjz).
+                    # For a standalone card with horizontal layout, height is not
+                    # customizable, and this field is ignored.
+              },
+              "suggestions": [ # Optional. List of suggestions to include in the card.
+                { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                    # easily select/click a predefined response or perform an action (like
+                    # opening a web uri).
+                  "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                      # can choose from the card.
+                    "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                        # to send back to the agent (https://goo.gl/GXotJW).
+                    },
+                    "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                        # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                        # registered as the default handler for the URL, then this app will be
+                        # opened instead, and its icon will be used in the suggested action UI.
+                      "uri": "A String", # Required. The uri to open on the user device
+                    },
+                    "text": "A String", # Text to display alongside the action.
+                    "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                        # but does not dial automatically (https://goo.gl/ergbB2).
+                      "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                          # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                          # format. An example of a correctly formatted phone number:
+                          # +15556767888.
+                    },
+                    "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                        # when the user taps the suggested action. This data will be also
+                        # forwarded to webhook to allow performing custom business logic.
+                  },
+                  "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                      # instead of typing in their own response.
+                    "text": "A String", # Suggested reply text.
+                    "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                        # when the user taps the suggested reply. This data will be also
+                        # forwarded to webhook to allow performing custom business logic.
+                  },
+                },
+              ],
+              "description": "A String", # Optional. Description of the card (at most 2000 bytes).
+                  #
+                  # At least one of the title, description or media must be set.
+              "title": "A String", # Optional. Title of the card (at most 200 bytes).
+                  #
+                  # At least one of the title, description or media must be set.
             },
           ],
+          "cardWidth": "A String", # Required. The width of the cards in the carousel.
         },
         "telephonyPlayAudio": { # Plays audio from a file in Telephony Gateway. # Plays audio from a file in Telephony Gateway.
           "audioUri": "A String", # Required. URI to a Google Cloud Storage object containing the audio to
               # play, e.g., "gs://bucket/object". The object must contain a single
               # channel (mono) of linear PCM audio (2 bytes / sample) at 8kHz.
               #
-              # This object must be readable by the `service-<Project
-              # Number>@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
-              # where <Project Number> is the number of the Telephony Gateway project
+              # This object must be readable by the `service-&lt;Project
+              # Number&gt;@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
+              # where &lt;Project Number&gt; is the number of the Telephony Gateway project
               # (usually the same as the Dialogflow agent project). If the Google Cloud
               # Storage bucket is in the Telephony Gateway project, this permission is
               # added by default when enabling the Dialogflow V2 API.
@@ -1822,12 +3203,127 @@
               # For audio from other sources, consider using the
               # `TelephonySynthesizeSpeech` message with SSML.
         },
+        "rbmStandaloneRichCard": { # Standalone Rich Business Messaging (RBM) rich card. # Standalone Rich Business Messaging (RBM) rich card response.
+            #
+            # Rich cards allow you to respond to users with more vivid content, e.g.
+            # with media and suggestions.
+            #
+            # For more details about RBM rich cards, please see:
+            # https://developers.google.com/rcs-business-messaging/rbm/guides/build/send-messages#rich-cards.
+            # You can group multiple rich cards into one using RbmCarouselCard but
+            # carousel cards will give you less control over the card layout.
+          "thumbnailImageAlignment": "A String", # Required if orientation is horizontal.
+              # Image preview alignment for standalone cards with horizontal layout.
+          "cardContent": { # Rich Business Messaging (RBM) Card content # Required. Card content.
+            "media": { # Rich Business Messaging (RBM) Media displayed in Cards # Optional. However at least one of the title, description or media must
+                # be set. Media (image, GIF or a video) to include in the card.
+                # The following media-types are currently supported:
+                #
+                # Image Types
+                #
+                # * image/jpeg
+                # * image/jpg'
+                # * image/gif
+                # * image/png
+                #
+                # Video Types
+                #
+                # * video/h263
+                # * video/m4v
+                # * video/mp4
+                # * video/mpeg
+                # * video/mpeg4
+                # * video/webm
+              "fileUri": "A String", # Required. Publicly reachable URI of the file. The RBM platform
+                  # determines the MIME type of the file from the content-type field in
+                  # the HTTP headers when the platform fetches the file. The content-type
+                  # field must be present and accurate in the HTTP response from the URL.
+              "thumbnailUri": "A String", # Optional. Publicly reachable URI of the thumbnail.If you don't
+                  # provide a thumbnail URI, the RBM platform displays a blank
+                  # placeholder thumbnail until the user's device downloads the file.
+                  # Depending on the user's setting, the file may not download
+                  # automatically and may require the user to tap a download button.
+              "height": "A String", # Required for cards with vertical orientation. The height of the media
+                  # within a rich card with a vertical layout. (https://goo.gl/NeFCjz).
+                  # For a standalone card with horizontal layout, height is not
+                  # customizable, and this field is ignored.
+            },
+            "suggestions": [ # Optional. List of suggestions to include in the card.
+              { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                  # easily select/click a predefined response or perform an action (like
+                  # opening a web uri).
+                "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                    # can choose from the card.
+                  "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                      # to send back to the agent (https://goo.gl/GXotJW).
+                  },
+                  "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                      # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                      # registered as the default handler for the URL, then this app will be
+                      # opened instead, and its icon will be used in the suggested action UI.
+                    "uri": "A String", # Required. The uri to open on the user device
+                  },
+                  "text": "A String", # Text to display alongside the action.
+                  "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                      # but does not dial automatically (https://goo.gl/ergbB2).
+                    "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                        # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                        # format. An example of a correctly formatted phone number:
+                        # +15556767888.
+                  },
+                  "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                      # when the user taps the suggested action. This data will be also
+                      # forwarded to webhook to allow performing custom business logic.
+                },
+                "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                    # instead of typing in their own response.
+                  "text": "A String", # Suggested reply text.
+                  "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                      # when the user taps the suggested reply. This data will be also
+                      # forwarded to webhook to allow performing custom business logic.
+                },
+              },
+            ],
+            "description": "A String", # Optional. Description of the card (at most 2000 bytes).
+                #
+                # At least one of the title, description or media must be set.
+            "title": "A String", # Optional. Title of the card (at most 200 bytes).
+                #
+                # At least one of the title, description or media must be set.
+          },
+          "cardOrientation": "A String", # Required. Orientation of the card.
+        },
         "linkOutSuggestion": { # The suggestion chip message that allows the user to jump out to the app # Displays a link out suggestion chip for Actions on Google.
             # or website associated with this agent.
           "uri": "A String", # Required. The URI of the app or site to open when the user taps the
               # suggestion chip.
           "destinationName": "A String", # Required. The name of the app or site this chip is linking to.
         },
+        "browseCarouselCard": { # Browse Carousel Card for Actions on Google. # Browse carousel card for Actions on Google.
+            # https://developers.google.com/actions/assistant/responses#browsing_carousel
+          "items": [ # Required. List of items in the Browse Carousel Card. Minimum of two
+              # items, maximum of ten.
+            { # Browsing carousel tile
+              "image": { # The image response message. # Optional. Hero image for the carousel item.
+                "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                    # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                "imageUri": "A String", # Optional. The public URI to an image file.
+              },
+              "title": "A String", # Required. Title of the carousel item. Maximum of two lines of text.
+              "description": "A String", # Optional. Description of the carousel item. Maximum of four lines of
+                  # text.
+              "openUriAction": { # Actions on Google action to open a given url. # Required. Action to present to the user.
+                "url": "A String", # Required. URL
+                "urlTypeHint": "A String", # Optional. Specifies the type of viewer that is used when opening
+                    # the URL. Defaults to opening via web browser.
+              },
+              "footer": "A String", # Optional. Text that appears at the bottom of the Browse Carousel
+                  # Card. Maximum of one line of text.
+            },
+          ],
+          "imageDisplayOptions": "A String", # Optional. Settings for displaying the image. Applies to every image in
+              # items.
+        },
         "basicCard": { # The basic card message. Useful for displaying information. # Displays a basic card for Actions on Google.
           "buttons": [ # Optional. The collection of card buttons.
             { # The button object that appears at the bottom of a card.
@@ -1846,6 +3342,59 @@
           "subtitle": "A String", # Optional. The subtitle of the card.
           "title": "A String", # Optional. The title of the card.
         },
+        "mediaContent": { # The media content card for Actions on Google. # The media content card for Actions on Google.
+          "mediaObjects": [ # Required. List of media objects.
+            { # Response media object for media content card.
+              "contentUrl": "A String", # Required. Url where the media is stored.
+              "description": "A String", # Optional. Description of media card.
+              "name": "A String", # Required. Name of media card.
+              "largeImage": { # The image response message. # Optional. Image to display above media content.
+                "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                    # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                "imageUri": "A String", # Optional. The public URI to an image file.
+              },
+              "icon": { # The image response message. # Optional. Icon to display above media content.
+                "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                    # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                "imageUri": "A String", # Optional. The public URI to an image file.
+              },
+            },
+          ],
+          "mediaType": "A String", # Optional. What type of media is the content (ie "audio").
+        },
+        "tableCard": { # Table card for Actions on Google. # Table card for Actions on Google.
+          "rows": [ # Optional. Rows in this table of data.
+            { # Row of TableCard.
+              "cells": [ # Optional. List of cells that make up this row.
+                { # Cell of TableCardRow.
+                  "text": "A String", # Required. Text in this cell.
+                },
+              ],
+              "dividerAfter": True or False, # Optional. Whether to add a visual divider after this row.
+            },
+          ],
+          "subtitle": "A String", # Optional. Subtitle to the title.
+          "title": "A String", # Required. Title of the card.
+          "image": { # The image response message. # Optional. Image which should be displayed on the card.
+            "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+            "imageUri": "A String", # Optional. The public URI to an image file.
+          },
+          "columnProperties": [ # Optional. Display properties for the columns in this table.
+            { # Column properties for TableCard.
+              "header": "A String", # Required. Column heading.
+              "horizontalAlignment": "A String", # Optional. Defines text alignment for all cells in this column.
+            },
+          ],
+          "buttons": [ # Optional. List of buttons for the card.
+            { # The button object that appears at the bottom of a card.
+              "openUriAction": { # Opens the given URI. # Required. Action to take when a user taps on the button.
+                "uri": "A String", # Required. The HTTP or HTTPS scheme URI.
+              },
+              "title": "A String", # Required. The title of the button.
+            },
+          ],
+        },
         "carouselSelect": { # The card for presenting a carousel of options to select from. # Displays a carousel card for Actions on Google.
           "items": [ # Required. Carousel items.
             { # An item in the carousel.
@@ -1889,17 +3438,24 @@
               "title": "A String", # Required. The title of the list item.
             },
           ],
+          "subtitle": "A String", # Optional. Subtitle of the list.
           "title": "A String", # Optional. The overall title of the list.
         },
+        "suggestions": { # The collection of suggestions. # Displays suggestion chips for Actions on Google.
+          "suggestions": [ # Required. The list of suggested replies.
+            { # The suggestion chip message that the user can tap to quickly post a reply
+                # to the conversation.
+              "title": "A String", # Required. The text shown the in the suggestion chip.
+            },
+          ],
+        },
         "telephonyTransferCall": { # Transfers the call in Telephony Gateway. # Transfers the call in Telephony Gateway.
           "phoneNumber": "A String", # Required. The phone number to transfer the call to
               # in [E.164 format](https://en.wikipedia.org/wiki/E.164).
               #
               # We currently only allow transferring to US numbers (+1xxxyyyzzzz).
         },
-        "payload": { # Returns a response containing a custom, platform-specific payload.
-            # See the Intent.Message.Platform type for a description of the
-            # structure that may be required for your platform.
+        "payload": { # A custom platform-specific response.
           "a_key": "", # Properties of the object.
         },
         "card": { # The card response message. # Displays a card.
@@ -1916,33 +3472,70 @@
         },
       },
     ],
-    "parentFollowupIntentName": "A String", # Read-only after creation. The unique identifier of the parent intent in the
-        # chain of followup intents. You can set this field when creating an intent,
-        # for example with CreateIntent or BatchUpdateIntents, in order to
-        # make this intent a followup intent.
-        #
-        # It identifies the parent followup intent.
-        # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+    "trainingPhrases": [ # Optional. The collection of examples that the agent is
+        # trained on.
+      { # Represents an example that the agent is trained on.
+        "parts": [ # Required. The ordered list of training phrase parts.
+            # The parts are concatenated in order to form the training phrase.
+            #
+            # Note: The API does not automatically annotate training phrases like the
+            # Dialogflow Console does.
+            #
+            # Note: Do not forget to include whitespace at part boundaries,
+            # so the training phrase is well formatted when the parts are concatenated.
+            #
+            # If the training phrase does not need to be annotated with parameters,
+            # you just need a single part with only the Part.text field set.
+            #
+            # If you want to annotate the training phrase, you must create multiple
+            # parts, where the fields of each part are populated in one of two ways:
+            #
+            # -   `Part.text` is set to a part of the phrase that has no parameters.
+            # -   `Part.text` is set to a part of the phrase that you want to annotate,
+            #     and the `entity_type`, `alias`, and `user_defined` fields are all
+            #     set.
+          { # Represents a part of a training phrase.
+            "alias": "A String", # Optional. The parameter name for the value extracted from the
+                # annotated part of the example.
+                # This field is required for annotated parts of the training phrase.
+            "entityType": "A String", # Optional. The entity type name prefixed with `@`.
+                # This field is required for annotated parts of the training phrase.
+            "text": "A String", # Required. The text for this part.
+            "userDefined": True or False, # Optional. Indicates whether the text was manually annotated.
+                # This field is set to true when the Dialogflow Console is used to
+                # manually annotate the part. When creating an annotated part with the
+                # API, you must set this to true.
+          },
+        ],
+        "type": "A String", # Required. The type of the training phrase.
+        "name": "A String", # Output only. The unique identifier of this training phrase.
+        "timesAddedCount": 42, # Optional. Indicates how many times this example was added to
+            # the intent. Each time a developer adds an existing sample by editing an
+            # intent or training, this counter is increased.
+      },
+    ],
     "defaultResponsePlatforms": [ # Optional. The list of platforms for which the first responses will be
         # copied from the messages in PLATFORM_UNSPECIFIED (i.e. default platform).
       "A String",
     ],
-    "priority": 42, # Optional. The priority of this intent. Higher numbers represent higher
-        # priorities. If this is zero or unspecified, we use the default
-        # priority 500000.
+    "priority": 42, # The priority of this intent. Higher numbers represent higher
+        # priorities.
         #
-        # Negative numbers mean that the intent is disabled.
+        # - If the supplied value is unspecified or 0, the service
+        #   translates the value to 500,000, which corresponds to the
+        #   `Normal` priority in the console.
+        # - If the supplied value is negative, the intent is ignored
+        #   in runtime detect intent requests.
     "rootFollowupIntentName": "A String", # Read-only. The unique identifier of the root intent in the chain of
         # followup intents. It identifies the correct followup intents chain for
         # this intent. We populate this field only in the output.
         #
-        # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
-    "endInteraction": True or False, # Optional. Indicates that this intent ends an interaction. Some integrations
-        # (e.g., Actions on Google or Dialogflow phone gateway) use this information
-        # to close interaction with an end user. Default is false.
+        # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
+    "resetContexts": True or False, # Optional. Indicates whether to delete all contexts in the current
+        # session when this intent is matched.
     "inputContextNames": [ # Optional. The list of context names required for this intent to be
         # triggered.
-        # Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+        # Format: `projects/&lt;Project ID&gt;/agent/sessions/-/contexts/&lt;Context ID&gt;`.
       "A String",
     ],
     "mlEnabled": True or False, # Optional. Indicates whether Machine Learning is enabled for the intent.
@@ -1962,26 +3555,44 @@
         # is matched. Context messages in this collection should not set the
         # parameters field. Setting the `lifespan_count` to 0 will reset the context
         # when the intent is matched.
-        # Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+        # Format: `projects/&lt;Project ID&gt;/agent/sessions/-/contexts/&lt;Context ID&gt;`.
       { # Represents a context.
-        "parameters": { # Optional. The collection of parameters associated with this context.
-            # Refer to [this
-            # doc](https://cloud.google.com/dialogflow-enterprise/docs/intents-actions-parameters)
-            # for syntax.
-          "a_key": "", # Properties of the object.
-        },
         "name": "A String", # Required. The unique identifier of the context. Format:
-            # `projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context ID>`,
-            # or `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
-            # ID>/sessions/<Session ID>/contexts/<Context ID>`.
+            # `projects/&lt;Project ID&gt;/agent/sessions/&lt;Session ID&gt;/contexts/&lt;Context ID&gt;`,
+            # or `projects/&lt;Project ID&gt;/agent/environments/&lt;Environment ID&gt;/users/&lt;User
+            # ID&gt;/sessions/&lt;Session ID&gt;/contexts/&lt;Context ID&gt;`.
             #
             # The `Context ID` is always converted to lowercase, may only contain
             # characters in a-zA-Z0-9_-% and may be at most 250 bytes long.
             #
             # If `Environment ID` is not specified, we assume default 'draft'
             # environment. If `User ID` is not specified, we assume default '-' user.
+            #
+            # The following context names are reserved for internal use by Dialogflow.
+            # You should not use these contexts or create contexts with these names:
+            #
+            # * `__system_counters__`
+            # * `*_id_dialog_context`
+            # * `*_dialog_params_size`
+        "parameters": { # Optional. The collection of parameters associated with this context.
+            #
+            # Depending on your protocol or client library language, this is a
+            # map, associative array, symbol table, dictionary, or JSON object
+            # composed of a collection of (MapKey, MapValue) pairs:
+            #
+            # -   MapKey type: string
+            # -   MapKey value: parameter name
+            # -   MapValue type:
+            #     -   If parameter's entity type is a composite entity: map
+            #     -   Else: string or number, depending on parameter value type
+            # -   MapValue value:
+            #     -   If parameter's entity type is a composite entity:
+            #         map from composite entity property names to property values
+            #     -   Else: parameter value
+          "a_key": "", # Properties of the object.
+        },
         "lifespanCount": 42, # Optional. The number of conversational query requests after which the
-            # context expires. If set to `0` (the default) the context expires
+            # context expires. The default is `0`. If set to `0`, the context expires
             # immediately. Contexts expire automatically after 20 minutes if there
             # are no matching queries.
       },
@@ -1989,26 +3600,26 @@
     "events": [ # Optional. The collection of event names that trigger the intent.
         # If the collection of input contexts is not empty, all of the contexts must
         # be present in the active user session for an event to trigger this intent.
+        # Event names are limited to 150 characters.
       "A String",
     ],
   }</pre>
 </div>
 
 <div class="method">
-    <code class="details" id="list">list(parent, pageSize=None, languageCode=None, intentView=None, pageToken=None, x__xgafv=None)</code>
+    <code class="details" id="list">list(parent, languageCode=None, pageSize=None, intentView=None, pageToken=None, x__xgafv=None)</code>
   <pre>Returns the list of all intents in the specified agent.
 
 Args:
   parent: string, Required. The agent to list all intents from.
-Format: `projects/<Project ID>/agent`. (required)
+Format: `projects/&lt;Project ID&gt;/agent`. (required)
+  languageCode: string, Optional. The language used to access language-specific data.
+If not specified, the agent's default language is used.
+For more information, see
+[Multilingual intent and entity
+data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
   pageSize: integer, Optional. The maximum number of items to return in a single page. By
 default 100 and at most 1000.
-  languageCode: string, Optional. The language to list training phrases, parameters and rich
-messages for. If not specified, the agent's default language is used.
-[Many
-languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language)
-are supported. Note: languages must be enabled in the agent before they can
-be used.
   intentView: string, Optional. The resource view to apply to the returned intent.
   pageToken: string, Optional. The next_page_token value returned from a previous list request.
   x__xgafv: string, V1 error format.
@@ -2036,12 +3647,10 @@
         "name": "A String", # The unique identifier of this intent.
             # Required for Intents.UpdateIntent and Intents.BatchUpdateIntents
             # methods.
-            # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+            # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
         "parameters": [ # Optional. The collection of parameters associated with the intent.
           { # Represents intent parameters.
-            "mandatory": True or False, # Optional. Indicates whether the parameter is required. That is,
-                # whether the intent cannot be completed without collecting the parameter
-                # value.
+            "displayName": "A String", # Required. The name of the parameter.
             "name": "A String", # The unique identifier of this parameter.
             "defaultValue": "A String", # Optional. The default value to use when the `value` yields an empty
                 # result.
@@ -2057,67 +3666,36 @@
                 # - a parameter value from some context defined as
                 #   `#context_name.parameter_name`.
             "prompts": [ # Optional. The collection of prompts that the agent can present to the
-                # user in order to collect value for the parameter.
+                # user in order to collect a value for the parameter.
               "A String",
             ],
             "isList": True or False, # Optional. Indicates whether the parameter represents a list of values.
-            "displayName": "A String", # Required. The name of the parameter.
+            "mandatory": True or False, # Optional. Indicates whether the parameter is required. That is,
+                # whether the intent cannot be completed without collecting the parameter
+                # value.
           },
         ],
-        "trainingPhrases": [ # Optional. The collection of examples that the agent is
-            # trained on.
-          { # Represents an example that the agent is trained on.
-            "parts": [ # Required. The ordered list of training phrase parts.
-                # The parts are concatenated in order to form the training phrase.
-                #
-                # Note: The API does not automatically annotate training phrases like the
-                # Dialogflow Console does.
-                #
-                # Note: Do not forget to include whitespace at part boundaries,
-                # so the training phrase is well formatted when the parts are concatenated.
-                #
-                # If the training phrase does not need to be annotated with parameters,
-                # you just need a single part with only the Part.text field set.
-                #
-                # If you want to annotate the training phrase, you must create multiple
-                # parts, where the fields of each part are populated in one of two ways:
-                #
-                # -   `Part.text` is set to a part of the phrase that has no parameters.
-                # -   `Part.text` is set to a part of the phrase that you want to annotate,
-                #     and the `entity_type`, `alias`, and `user_defined` fields are all
-                #     set.
-              { # Represents a part of a training phrase.
-                "text": "A String", # Required. The text for this part.
-                "entityType": "A String", # Optional. The entity type name prefixed with `@`.
-                    # This field is required for annotated parts of the training phrase.
-                "userDefined": True or False, # Optional. Indicates whether the text was manually annotated.
-                    # This field is set to true when the Dialogflow Console is used to
-                    # manually annotate the part. When creating an annotated part with the
-                    # API, you must set this to true.
-                "alias": "A String", # Optional. The parameter name for the value extracted from the
-                    # annotated part of the example.
-                    # This field is required for annotated parts of the training phrase.
-              },
-            ],
-            "type": "A String", # Required. The type of the training phrase.
-            "name": "A String", # Output only. The unique identifier of this training phrase.
-            "timesAddedCount": 42, # Optional. Indicates how many times this example was added to
-                # the intent. Each time a developer adds an existing sample by editing an
-                # intent or training, this counter is increased.
-          },
-        ],
+        "endInteraction": True or False, # Optional. Indicates that this intent ends an interaction. Some integrations
+            # (e.g., Actions on Google or Dialogflow phone gateway) use this information
+            # to close interaction with an end user. Default is false.
         "followupIntentInfo": [ # Read-only. Information about all followup intents that have this intent as
             # a direct or indirect parent. We populate this field only in the output.
           { # Represents a single followup intent in the chain.
             "followupIntentName": "A String", # The unique identifier of the followup intent.
-                # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+                # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
             "parentFollowupIntentName": "A String", # The unique identifier of the followup intent's parent.
-                # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+                # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
           },
         ],
         "webhookState": "A String", # Optional. Indicates whether webhooks are enabled for the intent.
-        "resetContexts": True or False, # Optional. Indicates whether to delete all contexts in the current
-            # session when this intent is matched.
+        "parentFollowupIntentName": "A String", # Read-only after creation. The unique identifier of the parent intent in the
+            # chain of followup intents. You can set this field when creating an intent,
+            # for example with CreateIntent or
+            # BatchUpdateIntents, in order to make this
+            # intent a followup intent.
+            #
+            # It identifies the parent followup intent.
+            # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
         "messages": [ # Optional. The collection of rich messages corresponding to the
             # `Response` field in the Dialogflow console.
           { # Corresponds to the `Response` field in the Dialogflow console.
@@ -2127,12 +3705,12 @@
                 # `SimpleResponse`.
               "simpleResponses": [ # Required. The list of simple responses.
                 { # The simple response message containing speech or text.
-                  "textToSpeech": "A String", # One of text_to_speech or ssml must be provided. The plain text of the
-                      # speech output. Mutually exclusive with ssml.
-                  "displayText": "A String", # Optional. The text to display.
                   "ssml": "A String", # One of text_to_speech or ssml must be provided. Structured spoken
                       # response to the user in the SSML format. Mutually exclusive with
                       # text_to_speech.
+                  "textToSpeech": "A String", # One of text_to_speech or ssml must be provided. The plain text of the
+                      # speech output. Mutually exclusive with ssml.
+                  "displayText": "A String", # Optional. The text to display.
                 },
               ],
             },
@@ -2142,6 +3720,48 @@
               ],
               "title": "A String", # Optional. The title of the collection of quick replies.
             },
+            "rbmText": { # Rich Business Messaging (RBM) text response with suggestions. # Rich Business Messaging (RBM) text response.
+                #
+                # RBM allows businesses to send enriched and branded versions of SMS. See
+                # https://jibe.google.com/business-messaging.
+              "text": "A String", # Required. Text sent and displayed to the user.
+              "rbmSuggestion": [ # Optional. One or more suggestions to show to the user.
+                { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                    # easily select/click a predefined response or perform an action (like
+                    # opening a web uri).
+                  "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                      # can choose from the card.
+                    "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                        # to send back to the agent (https://goo.gl/GXotJW).
+                    },
+                    "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                        # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                        # registered as the default handler for the URL, then this app will be
+                        # opened instead, and its icon will be used in the suggested action UI.
+                      "uri": "A String", # Required. The uri to open on the user device
+                    },
+                    "text": "A String", # Text to display alongside the action.
+                    "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                        # but does not dial automatically (https://goo.gl/ergbB2).
+                      "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                          # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                          # format. An example of a correctly formatted phone number:
+                          # +15556767888.
+                    },
+                    "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                        # when the user taps the suggested action. This data will be also
+                        # forwarded to webhook to allow performing custom business logic.
+                  },
+                  "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                      # instead of typing in their own response.
+                    "text": "A String", # Suggested reply text.
+                    "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                        # when the user taps the suggested reply. This data will be also
+                        # forwarded to webhook to allow performing custom business logic.
+                  },
+                },
+              ],
+            },
             "platform": "A String", # Optional. The platform that this message is intended for.
             "text": { # The text response message. # Returns a text response.
               "text": [ # Optional. The collection of the agent's responses.
@@ -2163,22 +3783,105 @@
                   # [SSML](https://developers.google.com/actions/reference/ssml).
               "text": "A String", # The raw text to be synthesized.
             },
-            "suggestions": { # The collection of suggestions. # Displays suggestion chips for Actions on Google.
-              "suggestions": [ # Required. The list of suggested replies.
-                { # The suggestion chip message that the user can tap to quickly post a reply
-                    # to the conversation.
-                  "title": "A String", # Required. The text shown the in the suggestion chip.
+            "rbmCarouselRichCard": { # Carousel Rich Business Messaging (RBM) rich card. # Rich Business Messaging (RBM) carousel rich card response.
+                #
+                # Rich cards allow you to respond to users with more vivid content, e.g.
+                # with media and suggestions.
+                #
+                # For more details about RBM rich cards, please see:
+                # https://developers.google.com/rcs-business-messaging/rbm/guides/build/send-messages#rich-cards.
+                # If you want to show a single card with more control over the layout,
+                # please use RbmStandaloneCard instead.
+              "cardContents": [ # Required. The cards in the carousel. A carousel must have at least
+                  # 2 cards and at most 10.
+                { # Rich Business Messaging (RBM) Card content
+                  "media": { # Rich Business Messaging (RBM) Media displayed in Cards # Optional. However at least one of the title, description or media must
+                      # be set. Media (image, GIF or a video) to include in the card.
+                      # The following media-types are currently supported:
+                      #
+                      # Image Types
+                      #
+                      # * image/jpeg
+                      # * image/jpg'
+                      # * image/gif
+                      # * image/png
+                      #
+                      # Video Types
+                      #
+                      # * video/h263
+                      # * video/m4v
+                      # * video/mp4
+                      # * video/mpeg
+                      # * video/mpeg4
+                      # * video/webm
+                    "fileUri": "A String", # Required. Publicly reachable URI of the file. The RBM platform
+                        # determines the MIME type of the file from the content-type field in
+                        # the HTTP headers when the platform fetches the file. The content-type
+                        # field must be present and accurate in the HTTP response from the URL.
+                    "thumbnailUri": "A String", # Optional. Publicly reachable URI of the thumbnail.If you don't
+                        # provide a thumbnail URI, the RBM platform displays a blank
+                        # placeholder thumbnail until the user's device downloads the file.
+                        # Depending on the user's setting, the file may not download
+                        # automatically and may require the user to tap a download button.
+                    "height": "A String", # Required for cards with vertical orientation. The height of the media
+                        # within a rich card with a vertical layout. (https://goo.gl/NeFCjz).
+                        # For a standalone card with horizontal layout, height is not
+                        # customizable, and this field is ignored.
+                  },
+                  "suggestions": [ # Optional. List of suggestions to include in the card.
+                    { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                        # easily select/click a predefined response or perform an action (like
+                        # opening a web uri).
+                      "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                          # can choose from the card.
+                        "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                            # to send back to the agent (https://goo.gl/GXotJW).
+                        },
+                        "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                            # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                            # registered as the default handler for the URL, then this app will be
+                            # opened instead, and its icon will be used in the suggested action UI.
+                          "uri": "A String", # Required. The uri to open on the user device
+                        },
+                        "text": "A String", # Text to display alongside the action.
+                        "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                            # but does not dial automatically (https://goo.gl/ergbB2).
+                          "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                              # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                              # format. An example of a correctly formatted phone number:
+                              # +15556767888.
+                        },
+                        "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                            # when the user taps the suggested action. This data will be also
+                            # forwarded to webhook to allow performing custom business logic.
+                      },
+                      "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                          # instead of typing in their own response.
+                        "text": "A String", # Suggested reply text.
+                        "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                            # when the user taps the suggested reply. This data will be also
+                            # forwarded to webhook to allow performing custom business logic.
+                      },
+                    },
+                  ],
+                  "description": "A String", # Optional. Description of the card (at most 2000 bytes).
+                      #
+                      # At least one of the title, description or media must be set.
+                  "title": "A String", # Optional. Title of the card (at most 200 bytes).
+                      #
+                      # At least one of the title, description or media must be set.
                 },
               ],
+              "cardWidth": "A String", # Required. The width of the cards in the carousel.
             },
             "telephonyPlayAudio": { # Plays audio from a file in Telephony Gateway. # Plays audio from a file in Telephony Gateway.
               "audioUri": "A String", # Required. URI to a Google Cloud Storage object containing the audio to
                   # play, e.g., "gs://bucket/object". The object must contain a single
                   # channel (mono) of linear PCM audio (2 bytes / sample) at 8kHz.
                   #
-                  # This object must be readable by the `service-<Project
-                  # Number>@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
-                  # where <Project Number> is the number of the Telephony Gateway project
+                  # This object must be readable by the `service-&lt;Project
+                  # Number&gt;@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
+                  # where &lt;Project Number&gt; is the number of the Telephony Gateway project
                   # (usually the same as the Dialogflow agent project). If the Google Cloud
                   # Storage bucket is in the Telephony Gateway project, this permission is
                   # added by default when enabling the Dialogflow V2 API.
@@ -2186,12 +3889,127 @@
                   # For audio from other sources, consider using the
                   # `TelephonySynthesizeSpeech` message with SSML.
             },
+            "rbmStandaloneRichCard": { # Standalone Rich Business Messaging (RBM) rich card. # Standalone Rich Business Messaging (RBM) rich card response.
+                #
+                # Rich cards allow you to respond to users with more vivid content, e.g.
+                # with media and suggestions.
+                #
+                # For more details about RBM rich cards, please see:
+                # https://developers.google.com/rcs-business-messaging/rbm/guides/build/send-messages#rich-cards.
+                # You can group multiple rich cards into one using RbmCarouselCard but
+                # carousel cards will give you less control over the card layout.
+              "thumbnailImageAlignment": "A String", # Required if orientation is horizontal.
+                  # Image preview alignment for standalone cards with horizontal layout.
+              "cardContent": { # Rich Business Messaging (RBM) Card content # Required. Card content.
+                "media": { # Rich Business Messaging (RBM) Media displayed in Cards # Optional. However at least one of the title, description or media must
+                    # be set. Media (image, GIF or a video) to include in the card.
+                    # The following media-types are currently supported:
+                    #
+                    # Image Types
+                    #
+                    # * image/jpeg
+                    # * image/jpg'
+                    # * image/gif
+                    # * image/png
+                    #
+                    # Video Types
+                    #
+                    # * video/h263
+                    # * video/m4v
+                    # * video/mp4
+                    # * video/mpeg
+                    # * video/mpeg4
+                    # * video/webm
+                  "fileUri": "A String", # Required. Publicly reachable URI of the file. The RBM platform
+                      # determines the MIME type of the file from the content-type field in
+                      # the HTTP headers when the platform fetches the file. The content-type
+                      # field must be present and accurate in the HTTP response from the URL.
+                  "thumbnailUri": "A String", # Optional. Publicly reachable URI of the thumbnail.If you don't
+                      # provide a thumbnail URI, the RBM platform displays a blank
+                      # placeholder thumbnail until the user's device downloads the file.
+                      # Depending on the user's setting, the file may not download
+                      # automatically and may require the user to tap a download button.
+                  "height": "A String", # Required for cards with vertical orientation. The height of the media
+                      # within a rich card with a vertical layout. (https://goo.gl/NeFCjz).
+                      # For a standalone card with horizontal layout, height is not
+                      # customizable, and this field is ignored.
+                },
+                "suggestions": [ # Optional. List of suggestions to include in the card.
+                  { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                      # easily select/click a predefined response or perform an action (like
+                      # opening a web uri).
+                    "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                        # can choose from the card.
+                      "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                          # to send back to the agent (https://goo.gl/GXotJW).
+                      },
+                      "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                          # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                          # registered as the default handler for the URL, then this app will be
+                          # opened instead, and its icon will be used in the suggested action UI.
+                        "uri": "A String", # Required. The uri to open on the user device
+                      },
+                      "text": "A String", # Text to display alongside the action.
+                      "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                          # but does not dial automatically (https://goo.gl/ergbB2).
+                        "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                            # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                            # format. An example of a correctly formatted phone number:
+                            # +15556767888.
+                      },
+                      "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                          # when the user taps the suggested action. This data will be also
+                          # forwarded to webhook to allow performing custom business logic.
+                    },
+                    "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                        # instead of typing in their own response.
+                      "text": "A String", # Suggested reply text.
+                      "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                          # when the user taps the suggested reply. This data will be also
+                          # forwarded to webhook to allow performing custom business logic.
+                    },
+                  },
+                ],
+                "description": "A String", # Optional. Description of the card (at most 2000 bytes).
+                    #
+                    # At least one of the title, description or media must be set.
+                "title": "A String", # Optional. Title of the card (at most 200 bytes).
+                    #
+                    # At least one of the title, description or media must be set.
+              },
+              "cardOrientation": "A String", # Required. Orientation of the card.
+            },
             "linkOutSuggestion": { # The suggestion chip message that allows the user to jump out to the app # Displays a link out suggestion chip for Actions on Google.
                 # or website associated with this agent.
               "uri": "A String", # Required. The URI of the app or site to open when the user taps the
                   # suggestion chip.
               "destinationName": "A String", # Required. The name of the app or site this chip is linking to.
             },
+            "browseCarouselCard": { # Browse Carousel Card for Actions on Google. # Browse carousel card for Actions on Google.
+                # https://developers.google.com/actions/assistant/responses#browsing_carousel
+              "items": [ # Required. List of items in the Browse Carousel Card. Minimum of two
+                  # items, maximum of ten.
+                { # Browsing carousel tile
+                  "image": { # The image response message. # Optional. Hero image for the carousel item.
+                    "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                        # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                    "imageUri": "A String", # Optional. The public URI to an image file.
+                  },
+                  "title": "A String", # Required. Title of the carousel item. Maximum of two lines of text.
+                  "description": "A String", # Optional. Description of the carousel item. Maximum of four lines of
+                      # text.
+                  "openUriAction": { # Actions on Google action to open a given url. # Required. Action to present to the user.
+                    "url": "A String", # Required. URL
+                    "urlTypeHint": "A String", # Optional. Specifies the type of viewer that is used when opening
+                        # the URL. Defaults to opening via web browser.
+                  },
+                  "footer": "A String", # Optional. Text that appears at the bottom of the Browse Carousel
+                      # Card. Maximum of one line of text.
+                },
+              ],
+              "imageDisplayOptions": "A String", # Optional. Settings for displaying the image. Applies to every image in
+                  # items.
+            },
             "basicCard": { # The basic card message. Useful for displaying information. # Displays a basic card for Actions on Google.
               "buttons": [ # Optional. The collection of card buttons.
                 { # The button object that appears at the bottom of a card.
@@ -2210,6 +4028,59 @@
               "subtitle": "A String", # Optional. The subtitle of the card.
               "title": "A String", # Optional. The title of the card.
             },
+            "mediaContent": { # The media content card for Actions on Google. # The media content card for Actions on Google.
+              "mediaObjects": [ # Required. List of media objects.
+                { # Response media object for media content card.
+                  "contentUrl": "A String", # Required. Url where the media is stored.
+                  "description": "A String", # Optional. Description of media card.
+                  "name": "A String", # Required. Name of media card.
+                  "largeImage": { # The image response message. # Optional. Image to display above media content.
+                    "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                        # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                    "imageUri": "A String", # Optional. The public URI to an image file.
+                  },
+                  "icon": { # The image response message. # Optional. Icon to display above media content.
+                    "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                        # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                    "imageUri": "A String", # Optional. The public URI to an image file.
+                  },
+                },
+              ],
+              "mediaType": "A String", # Optional. What type of media is the content (ie "audio").
+            },
+            "tableCard": { # Table card for Actions on Google. # Table card for Actions on Google.
+              "rows": [ # Optional. Rows in this table of data.
+                { # Row of TableCard.
+                  "cells": [ # Optional. List of cells that make up this row.
+                    { # Cell of TableCardRow.
+                      "text": "A String", # Required. Text in this cell.
+                    },
+                  ],
+                  "dividerAfter": True or False, # Optional. Whether to add a visual divider after this row.
+                },
+              ],
+              "subtitle": "A String", # Optional. Subtitle to the title.
+              "title": "A String", # Required. Title of the card.
+              "image": { # The image response message. # Optional. Image which should be displayed on the card.
+                "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                    # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                "imageUri": "A String", # Optional. The public URI to an image file.
+              },
+              "columnProperties": [ # Optional. Display properties for the columns in this table.
+                { # Column properties for TableCard.
+                  "header": "A String", # Required. Column heading.
+                  "horizontalAlignment": "A String", # Optional. Defines text alignment for all cells in this column.
+                },
+              ],
+              "buttons": [ # Optional. List of buttons for the card.
+                { # The button object that appears at the bottom of a card.
+                  "openUriAction": { # Opens the given URI. # Required. Action to take when a user taps on the button.
+                    "uri": "A String", # Required. The HTTP or HTTPS scheme URI.
+                  },
+                  "title": "A String", # Required. The title of the button.
+                },
+              ],
+            },
             "carouselSelect": { # The card for presenting a carousel of options to select from. # Displays a carousel card for Actions on Google.
               "items": [ # Required. Carousel items.
                 { # An item in the carousel.
@@ -2253,17 +4124,24 @@
                   "title": "A String", # Required. The title of the list item.
                 },
               ],
+              "subtitle": "A String", # Optional. Subtitle of the list.
               "title": "A String", # Optional. The overall title of the list.
             },
+            "suggestions": { # The collection of suggestions. # Displays suggestion chips for Actions on Google.
+              "suggestions": [ # Required. The list of suggested replies.
+                { # The suggestion chip message that the user can tap to quickly post a reply
+                    # to the conversation.
+                  "title": "A String", # Required. The text shown the in the suggestion chip.
+                },
+              ],
+            },
             "telephonyTransferCall": { # Transfers the call in Telephony Gateway. # Transfers the call in Telephony Gateway.
               "phoneNumber": "A String", # Required. The phone number to transfer the call to
                   # in [E.164 format](https://en.wikipedia.org/wiki/E.164).
                   #
                   # We currently only allow transferring to US numbers (+1xxxyyyzzzz).
             },
-            "payload": { # Returns a response containing a custom, platform-specific payload.
-                # See the Intent.Message.Platform type for a description of the
-                # structure that may be required for your platform.
+            "payload": { # A custom platform-specific response.
               "a_key": "", # Properties of the object.
             },
             "card": { # The card response message. # Displays a card.
@@ -2280,33 +4158,70 @@
             },
           },
         ],
-        "parentFollowupIntentName": "A String", # Read-only after creation. The unique identifier of the parent intent in the
-            # chain of followup intents. You can set this field when creating an intent,
-            # for example with CreateIntent or BatchUpdateIntents, in order to
-            # make this intent a followup intent.
-            #
-            # It identifies the parent followup intent.
-            # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+        "trainingPhrases": [ # Optional. The collection of examples that the agent is
+            # trained on.
+          { # Represents an example that the agent is trained on.
+            "parts": [ # Required. The ordered list of training phrase parts.
+                # The parts are concatenated in order to form the training phrase.
+                #
+                # Note: The API does not automatically annotate training phrases like the
+                # Dialogflow Console does.
+                #
+                # Note: Do not forget to include whitespace at part boundaries,
+                # so the training phrase is well formatted when the parts are concatenated.
+                #
+                # If the training phrase does not need to be annotated with parameters,
+                # you just need a single part with only the Part.text field set.
+                #
+                # If you want to annotate the training phrase, you must create multiple
+                # parts, where the fields of each part are populated in one of two ways:
+                #
+                # -   `Part.text` is set to a part of the phrase that has no parameters.
+                # -   `Part.text` is set to a part of the phrase that you want to annotate,
+                #     and the `entity_type`, `alias`, and `user_defined` fields are all
+                #     set.
+              { # Represents a part of a training phrase.
+                "alias": "A String", # Optional. The parameter name for the value extracted from the
+                    # annotated part of the example.
+                    # This field is required for annotated parts of the training phrase.
+                "entityType": "A String", # Optional. The entity type name prefixed with `@`.
+                    # This field is required for annotated parts of the training phrase.
+                "text": "A String", # Required. The text for this part.
+                "userDefined": True or False, # Optional. Indicates whether the text was manually annotated.
+                    # This field is set to true when the Dialogflow Console is used to
+                    # manually annotate the part. When creating an annotated part with the
+                    # API, you must set this to true.
+              },
+            ],
+            "type": "A String", # Required. The type of the training phrase.
+            "name": "A String", # Output only. The unique identifier of this training phrase.
+            "timesAddedCount": 42, # Optional. Indicates how many times this example was added to
+                # the intent. Each time a developer adds an existing sample by editing an
+                # intent or training, this counter is increased.
+          },
+        ],
         "defaultResponsePlatforms": [ # Optional. The list of platforms for which the first responses will be
             # copied from the messages in PLATFORM_UNSPECIFIED (i.e. default platform).
           "A String",
         ],
-        "priority": 42, # Optional. The priority of this intent. Higher numbers represent higher
-            # priorities. If this is zero or unspecified, we use the default
-            # priority 500000.
+        "priority": 42, # The priority of this intent. Higher numbers represent higher
+            # priorities.
             #
-            # Negative numbers mean that the intent is disabled.
+            # - If the supplied value is unspecified or 0, the service
+            #   translates the value to 500,000, which corresponds to the
+            #   `Normal` priority in the console.
+            # - If the supplied value is negative, the intent is ignored
+            #   in runtime detect intent requests.
         "rootFollowupIntentName": "A String", # Read-only. The unique identifier of the root intent in the chain of
             # followup intents. It identifies the correct followup intents chain for
             # this intent. We populate this field only in the output.
             #
-            # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
-        "endInteraction": True or False, # Optional. Indicates that this intent ends an interaction. Some integrations
-            # (e.g., Actions on Google or Dialogflow phone gateway) use this information
-            # to close interaction with an end user. Default is false.
+            # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
+        "resetContexts": True or False, # Optional. Indicates whether to delete all contexts in the current
+            # session when this intent is matched.
         "inputContextNames": [ # Optional. The list of context names required for this intent to be
             # triggered.
-            # Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+            # Format: `projects/&lt;Project ID&gt;/agent/sessions/-/contexts/&lt;Context ID&gt;`.
           "A String",
         ],
         "mlEnabled": True or False, # Optional. Indicates whether Machine Learning is enabled for the intent.
@@ -2326,26 +4241,44 @@
             # is matched. Context messages in this collection should not set the
             # parameters field. Setting the `lifespan_count` to 0 will reset the context
             # when the intent is matched.
-            # Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+            # Format: `projects/&lt;Project ID&gt;/agent/sessions/-/contexts/&lt;Context ID&gt;`.
           { # Represents a context.
-            "parameters": { # Optional. The collection of parameters associated with this context.
-                # Refer to [this
-                # doc](https://cloud.google.com/dialogflow-enterprise/docs/intents-actions-parameters)
-                # for syntax.
-              "a_key": "", # Properties of the object.
-            },
             "name": "A String", # Required. The unique identifier of the context. Format:
-                # `projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context ID>`,
-                # or `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
-                # ID>/sessions/<Session ID>/contexts/<Context ID>`.
+                # `projects/&lt;Project ID&gt;/agent/sessions/&lt;Session ID&gt;/contexts/&lt;Context ID&gt;`,
+                # or `projects/&lt;Project ID&gt;/agent/environments/&lt;Environment ID&gt;/users/&lt;User
+                # ID&gt;/sessions/&lt;Session ID&gt;/contexts/&lt;Context ID&gt;`.
                 #
                 # The `Context ID` is always converted to lowercase, may only contain
                 # characters in a-zA-Z0-9_-% and may be at most 250 bytes long.
                 #
                 # If `Environment ID` is not specified, we assume default 'draft'
                 # environment. If `User ID` is not specified, we assume default '-' user.
+                #
+                # The following context names are reserved for internal use by Dialogflow.
+                # You should not use these contexts or create contexts with these names:
+                #
+                # * `__system_counters__`
+                # * `*_id_dialog_context`
+                # * `*_dialog_params_size`
+            "parameters": { # Optional. The collection of parameters associated with this context.
+                #
+                # Depending on your protocol or client library language, this is a
+                # map, associative array, symbol table, dictionary, or JSON object
+                # composed of a collection of (MapKey, MapValue) pairs:
+                #
+                # -   MapKey type: string
+                # -   MapKey value: parameter name
+                # -   MapValue type:
+                #     -   If parameter's entity type is a composite entity: map
+                #     -   Else: string or number, depending on parameter value type
+                # -   MapValue value:
+                #     -   If parameter's entity type is a composite entity:
+                #         map from composite entity property names to property values
+                #     -   Else: parameter value
+              "a_key": "", # Properties of the object.
+            },
             "lifespanCount": 42, # Optional. The number of conversational query requests after which the
-                # context expires. If set to `0` (the default) the context expires
+                # context expires. The default is `0`. If set to `0`, the context expires
                 # immediately. Contexts expire automatically after 20 minutes if there
                 # are no matching queries.
           },
@@ -2353,6 +4286,7 @@
         "events": [ # Optional. The collection of event names that trigger the intent.
             # If the collection of input contexts is not empty, all of the contexts must
             # be present in the active user session for an event to trigger this intent.
+            # Event names are limited to 150 characters.
           "A String",
         ],
       },
@@ -2375,15 +4309,15 @@
 </div>
 
 <div class="method">
-    <code class="details" id="patch">patch(name, body, languageCode=None, intentView=None, updateMask=None, x__xgafv=None)</code>
+    <code class="details" id="patch">patch(name, body=None, languageCode=None, intentView=None, updateMask=None, x__xgafv=None)</code>
   <pre>Updates the specified intent.
 
 Args:
   name: string, The unique identifier of this intent.
 Required for Intents.UpdateIntent and Intents.BatchUpdateIntents
 methods.
-Format: `projects/<Project ID>/agent/intents/<Intent ID>`. (required)
-  body: object, The request body. (required)
+Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`. (required)
+  body: object, The request body.
     The object takes the form of:
 
 { # Represents an intent.
@@ -2398,12 +4332,10 @@
   "name": "A String", # The unique identifier of this intent.
       # Required for Intents.UpdateIntent and Intents.BatchUpdateIntents
       # methods.
-      # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+      # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
   "parameters": [ # Optional. The collection of parameters associated with the intent.
     { # Represents intent parameters.
-      "mandatory": True or False, # Optional. Indicates whether the parameter is required. That is,
-          # whether the intent cannot be completed without collecting the parameter
-          # value.
+      "displayName": "A String", # Required. The name of the parameter.
       "name": "A String", # The unique identifier of this parameter.
       "defaultValue": "A String", # Optional. The default value to use when the `value` yields an empty
           # result.
@@ -2419,67 +4351,36 @@
           # - a parameter value from some context defined as
           #   `#context_name.parameter_name`.
       "prompts": [ # Optional. The collection of prompts that the agent can present to the
-          # user in order to collect value for the parameter.
+          # user in order to collect a value for the parameter.
         "A String",
       ],
       "isList": True or False, # Optional. Indicates whether the parameter represents a list of values.
-      "displayName": "A String", # Required. The name of the parameter.
+      "mandatory": True or False, # Optional. Indicates whether the parameter is required. That is,
+          # whether the intent cannot be completed without collecting the parameter
+          # value.
     },
   ],
-  "trainingPhrases": [ # Optional. The collection of examples that the agent is
-      # trained on.
-    { # Represents an example that the agent is trained on.
-      "parts": [ # Required. The ordered list of training phrase parts.
-          # The parts are concatenated in order to form the training phrase.
-          #
-          # Note: The API does not automatically annotate training phrases like the
-          # Dialogflow Console does.
-          #
-          # Note: Do not forget to include whitespace at part boundaries,
-          # so the training phrase is well formatted when the parts are concatenated.
-          #
-          # If the training phrase does not need to be annotated with parameters,
-          # you just need a single part with only the Part.text field set.
-          #
-          # If you want to annotate the training phrase, you must create multiple
-          # parts, where the fields of each part are populated in one of two ways:
-          #
-          # -   `Part.text` is set to a part of the phrase that has no parameters.
-          # -   `Part.text` is set to a part of the phrase that you want to annotate,
-          #     and the `entity_type`, `alias`, and `user_defined` fields are all
-          #     set.
-        { # Represents a part of a training phrase.
-          "text": "A String", # Required. The text for this part.
-          "entityType": "A String", # Optional. The entity type name prefixed with `@`.
-              # This field is required for annotated parts of the training phrase.
-          "userDefined": True or False, # Optional. Indicates whether the text was manually annotated.
-              # This field is set to true when the Dialogflow Console is used to
-              # manually annotate the part. When creating an annotated part with the
-              # API, you must set this to true.
-          "alias": "A String", # Optional. The parameter name for the value extracted from the
-              # annotated part of the example.
-              # This field is required for annotated parts of the training phrase.
-        },
-      ],
-      "type": "A String", # Required. The type of the training phrase.
-      "name": "A String", # Output only. The unique identifier of this training phrase.
-      "timesAddedCount": 42, # Optional. Indicates how many times this example was added to
-          # the intent. Each time a developer adds an existing sample by editing an
-          # intent or training, this counter is increased.
-    },
-  ],
+  "endInteraction": True or False, # Optional. Indicates that this intent ends an interaction. Some integrations
+      # (e.g., Actions on Google or Dialogflow phone gateway) use this information
+      # to close interaction with an end user. Default is false.
   "followupIntentInfo": [ # Read-only. Information about all followup intents that have this intent as
       # a direct or indirect parent. We populate this field only in the output.
     { # Represents a single followup intent in the chain.
       "followupIntentName": "A String", # The unique identifier of the followup intent.
-          # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+          # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
       "parentFollowupIntentName": "A String", # The unique identifier of the followup intent's parent.
-          # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+          # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
     },
   ],
   "webhookState": "A String", # Optional. Indicates whether webhooks are enabled for the intent.
-  "resetContexts": True or False, # Optional. Indicates whether to delete all contexts in the current
-      # session when this intent is matched.
+  "parentFollowupIntentName": "A String", # Read-only after creation. The unique identifier of the parent intent in the
+      # chain of followup intents. You can set this field when creating an intent,
+      # for example with CreateIntent or
+      # BatchUpdateIntents, in order to make this
+      # intent a followup intent.
+      # 
+      # It identifies the parent followup intent.
+      # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
   "messages": [ # Optional. The collection of rich messages corresponding to the
       # `Response` field in the Dialogflow console.
     { # Corresponds to the `Response` field in the Dialogflow console.
@@ -2489,12 +4390,12 @@
           # `SimpleResponse`.
         "simpleResponses": [ # Required. The list of simple responses.
           { # The simple response message containing speech or text.
-            "textToSpeech": "A String", # One of text_to_speech or ssml must be provided. The plain text of the
-                # speech output. Mutually exclusive with ssml.
-            "displayText": "A String", # Optional. The text to display.
             "ssml": "A String", # One of text_to_speech or ssml must be provided. Structured spoken
                 # response to the user in the SSML format. Mutually exclusive with
                 # text_to_speech.
+            "textToSpeech": "A String", # One of text_to_speech or ssml must be provided. The plain text of the
+                # speech output. Mutually exclusive with ssml.
+            "displayText": "A String", # Optional. The text to display.
           },
         ],
       },
@@ -2504,6 +4405,48 @@
         ],
         "title": "A String", # Optional. The title of the collection of quick replies.
       },
+      "rbmText": { # Rich Business Messaging (RBM) text response with suggestions. # Rich Business Messaging (RBM) text response.
+          #
+          # RBM allows businesses to send enriched and branded versions of SMS. See
+          # https://jibe.google.com/business-messaging.
+        "text": "A String", # Required. Text sent and displayed to the user.
+        "rbmSuggestion": [ # Optional. One or more suggestions to show to the user.
+          { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+              # easily select/click a predefined response or perform an action (like
+              # opening a web uri).
+            "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                # can choose from the card.
+              "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                  # to send back to the agent (https://goo.gl/GXotJW).
+              },
+              "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                  # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                  # registered as the default handler for the URL, then this app will be
+                  # opened instead, and its icon will be used in the suggested action UI.
+                "uri": "A String", # Required. The uri to open on the user device
+              },
+              "text": "A String", # Text to display alongside the action.
+              "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                  # but does not dial automatically (https://goo.gl/ergbB2).
+                "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                    # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                    # format. An example of a correctly formatted phone number:
+                    # +15556767888.
+              },
+              "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                  # when the user taps the suggested action. This data will be also
+                  # forwarded to webhook to allow performing custom business logic.
+            },
+            "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                # instead of typing in their own response.
+              "text": "A String", # Suggested reply text.
+              "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                  # when the user taps the suggested reply. This data will be also
+                  # forwarded to webhook to allow performing custom business logic.
+            },
+          },
+        ],
+      },
       "platform": "A String", # Optional. The platform that this message is intended for.
       "text": { # The text response message. # Returns a text response.
         "text": [ # Optional. The collection of the agent's responses.
@@ -2525,22 +4468,105 @@
             # [SSML](https://developers.google.com/actions/reference/ssml).
         "text": "A String", # The raw text to be synthesized.
       },
-      "suggestions": { # The collection of suggestions. # Displays suggestion chips for Actions on Google.
-        "suggestions": [ # Required. The list of suggested replies.
-          { # The suggestion chip message that the user can tap to quickly post a reply
-              # to the conversation.
-            "title": "A String", # Required. The text shown the in the suggestion chip.
+      "rbmCarouselRichCard": { # Carousel Rich Business Messaging (RBM) rich card. # Rich Business Messaging (RBM) carousel rich card response.
+          #
+          # Rich cards allow you to respond to users with more vivid content, e.g.
+          # with media and suggestions.
+          #
+          # For more details about RBM rich cards, please see:
+          # https://developers.google.com/rcs-business-messaging/rbm/guides/build/send-messages#rich-cards.
+          # If you want to show a single card with more control over the layout,
+          # please use RbmStandaloneCard instead.
+        "cardContents": [ # Required. The cards in the carousel. A carousel must have at least
+            # 2 cards and at most 10.
+          { # Rich Business Messaging (RBM) Card content
+            "media": { # Rich Business Messaging (RBM) Media displayed in Cards # Optional. However at least one of the title, description or media must
+                # be set. Media (image, GIF or a video) to include in the card.
+                # The following media-types are currently supported:
+                #
+                # Image Types
+                #
+                # * image/jpeg
+                # * image/jpg'
+                # * image/gif
+                # * image/png
+                #
+                # Video Types
+                #
+                # * video/h263
+                # * video/m4v
+                # * video/mp4
+                # * video/mpeg
+                # * video/mpeg4
+                # * video/webm
+              "fileUri": "A String", # Required. Publicly reachable URI of the file. The RBM platform
+                  # determines the MIME type of the file from the content-type field in
+                  # the HTTP headers when the platform fetches the file. The content-type
+                  # field must be present and accurate in the HTTP response from the URL.
+              "thumbnailUri": "A String", # Optional. Publicly reachable URI of the thumbnail.If you don't
+                  # provide a thumbnail URI, the RBM platform displays a blank
+                  # placeholder thumbnail until the user's device downloads the file.
+                  # Depending on the user's setting, the file may not download
+                  # automatically and may require the user to tap a download button.
+              "height": "A String", # Required for cards with vertical orientation. The height of the media
+                  # within a rich card with a vertical layout. (https://goo.gl/NeFCjz).
+                  # For a standalone card with horizontal layout, height is not
+                  # customizable, and this field is ignored.
+            },
+            "suggestions": [ # Optional. List of suggestions to include in the card.
+              { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                  # easily select/click a predefined response or perform an action (like
+                  # opening a web uri).
+                "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                    # can choose from the card.
+                  "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                      # to send back to the agent (https://goo.gl/GXotJW).
+                  },
+                  "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                      # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                      # registered as the default handler for the URL, then this app will be
+                      # opened instead, and its icon will be used in the suggested action UI.
+                    "uri": "A String", # Required. The uri to open on the user device
+                  },
+                  "text": "A String", # Text to display alongside the action.
+                  "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                      # but does not dial automatically (https://goo.gl/ergbB2).
+                    "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                        # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                        # format. An example of a correctly formatted phone number:
+                        # +15556767888.
+                  },
+                  "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                      # when the user taps the suggested action. This data will be also
+                      # forwarded to webhook to allow performing custom business logic.
+                },
+                "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                    # instead of typing in their own response.
+                  "text": "A String", # Suggested reply text.
+                  "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                      # when the user taps the suggested reply. This data will be also
+                      # forwarded to webhook to allow performing custom business logic.
+                },
+              },
+            ],
+            "description": "A String", # Optional. Description of the card (at most 2000 bytes).
+                #
+                # At least one of the title, description or media must be set.
+            "title": "A String", # Optional. Title of the card (at most 200 bytes).
+                #
+                # At least one of the title, description or media must be set.
           },
         ],
+        "cardWidth": "A String", # Required. The width of the cards in the carousel.
       },
       "telephonyPlayAudio": { # Plays audio from a file in Telephony Gateway. # Plays audio from a file in Telephony Gateway.
         "audioUri": "A String", # Required. URI to a Google Cloud Storage object containing the audio to
             # play, e.g., "gs://bucket/object". The object must contain a single
             # channel (mono) of linear PCM audio (2 bytes / sample) at 8kHz.
             #
-            # This object must be readable by the `service-<Project
-            # Number>@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
-            # where <Project Number> is the number of the Telephony Gateway project
+            # This object must be readable by the `service-&lt;Project
+            # Number&gt;@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
+            # where &lt;Project Number&gt; is the number of the Telephony Gateway project
             # (usually the same as the Dialogflow agent project). If the Google Cloud
             # Storage bucket is in the Telephony Gateway project, this permission is
             # added by default when enabling the Dialogflow V2 API.
@@ -2548,12 +4574,127 @@
             # For audio from other sources, consider using the
             # `TelephonySynthesizeSpeech` message with SSML.
       },
+      "rbmStandaloneRichCard": { # Standalone Rich Business Messaging (RBM) rich card. # Standalone Rich Business Messaging (RBM) rich card response.
+          #
+          # Rich cards allow you to respond to users with more vivid content, e.g.
+          # with media and suggestions.
+          #
+          # For more details about RBM rich cards, please see:
+          # https://developers.google.com/rcs-business-messaging/rbm/guides/build/send-messages#rich-cards.
+          # You can group multiple rich cards into one using RbmCarouselCard but
+          # carousel cards will give you less control over the card layout.
+        "thumbnailImageAlignment": "A String", # Required if orientation is horizontal.
+            # Image preview alignment for standalone cards with horizontal layout.
+        "cardContent": { # Rich Business Messaging (RBM) Card content # Required. Card content.
+          "media": { # Rich Business Messaging (RBM) Media displayed in Cards # Optional. However at least one of the title, description or media must
+              # be set. Media (image, GIF or a video) to include in the card.
+              # The following media-types are currently supported:
+              #
+              # Image Types
+              #
+              # * image/jpeg
+              # * image/jpg'
+              # * image/gif
+              # * image/png
+              #
+              # Video Types
+              #
+              # * video/h263
+              # * video/m4v
+              # * video/mp4
+              # * video/mpeg
+              # * video/mpeg4
+              # * video/webm
+            "fileUri": "A String", # Required. Publicly reachable URI of the file. The RBM platform
+                # determines the MIME type of the file from the content-type field in
+                # the HTTP headers when the platform fetches the file. The content-type
+                # field must be present and accurate in the HTTP response from the URL.
+            "thumbnailUri": "A String", # Optional. Publicly reachable URI of the thumbnail.If you don't
+                # provide a thumbnail URI, the RBM platform displays a blank
+                # placeholder thumbnail until the user's device downloads the file.
+                # Depending on the user's setting, the file may not download
+                # automatically and may require the user to tap a download button.
+            "height": "A String", # Required for cards with vertical orientation. The height of the media
+                # within a rich card with a vertical layout. (https://goo.gl/NeFCjz).
+                # For a standalone card with horizontal layout, height is not
+                # customizable, and this field is ignored.
+          },
+          "suggestions": [ # Optional. List of suggestions to include in the card.
+            { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                # easily select/click a predefined response or perform an action (like
+                # opening a web uri).
+              "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                  # can choose from the card.
+                "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                    # to send back to the agent (https://goo.gl/GXotJW).
+                },
+                "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                    # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                    # registered as the default handler for the URL, then this app will be
+                    # opened instead, and its icon will be used in the suggested action UI.
+                  "uri": "A String", # Required. The uri to open on the user device
+                },
+                "text": "A String", # Text to display alongside the action.
+                "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                    # but does not dial automatically (https://goo.gl/ergbB2).
+                  "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                      # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                      # format. An example of a correctly formatted phone number:
+                      # +15556767888.
+                },
+                "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                    # when the user taps the suggested action. This data will be also
+                    # forwarded to webhook to allow performing custom business logic.
+              },
+              "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                  # instead of typing in their own response.
+                "text": "A String", # Suggested reply text.
+                "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                    # when the user taps the suggested reply. This data will be also
+                    # forwarded to webhook to allow performing custom business logic.
+              },
+            },
+          ],
+          "description": "A String", # Optional. Description of the card (at most 2000 bytes).
+              #
+              # At least one of the title, description or media must be set.
+          "title": "A String", # Optional. Title of the card (at most 200 bytes).
+              #
+              # At least one of the title, description or media must be set.
+        },
+        "cardOrientation": "A String", # Required. Orientation of the card.
+      },
       "linkOutSuggestion": { # The suggestion chip message that allows the user to jump out to the app # Displays a link out suggestion chip for Actions on Google.
           # or website associated with this agent.
         "uri": "A String", # Required. The URI of the app or site to open when the user taps the
             # suggestion chip.
         "destinationName": "A String", # Required. The name of the app or site this chip is linking to.
       },
+      "browseCarouselCard": { # Browse Carousel Card for Actions on Google. # Browse carousel card for Actions on Google.
+          # https://developers.google.com/actions/assistant/responses#browsing_carousel
+        "items": [ # Required. List of items in the Browse Carousel Card. Minimum of two
+            # items, maximum of ten.
+          { # Browsing carousel tile
+            "image": { # The image response message. # Optional. Hero image for the carousel item.
+              "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                  # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+              "imageUri": "A String", # Optional. The public URI to an image file.
+            },
+            "title": "A String", # Required. Title of the carousel item. Maximum of two lines of text.
+            "description": "A String", # Optional. Description of the carousel item. Maximum of four lines of
+                # text.
+            "openUriAction": { # Actions on Google action to open a given url. # Required. Action to present to the user.
+              "url": "A String", # Required. URL
+              "urlTypeHint": "A String", # Optional. Specifies the type of viewer that is used when opening
+                  # the URL. Defaults to opening via web browser.
+            },
+            "footer": "A String", # Optional. Text that appears at the bottom of the Browse Carousel
+                # Card. Maximum of one line of text.
+          },
+        ],
+        "imageDisplayOptions": "A String", # Optional. Settings for displaying the image. Applies to every image in
+            # items.
+      },
       "basicCard": { # The basic card message. Useful for displaying information. # Displays a basic card for Actions on Google.
         "buttons": [ # Optional. The collection of card buttons.
           { # The button object that appears at the bottom of a card.
@@ -2572,6 +4713,59 @@
         "subtitle": "A String", # Optional. The subtitle of the card.
         "title": "A String", # Optional. The title of the card.
       },
+      "mediaContent": { # The media content card for Actions on Google. # The media content card for Actions on Google.
+        "mediaObjects": [ # Required. List of media objects.
+          { # Response media object for media content card.
+            "contentUrl": "A String", # Required. Url where the media is stored.
+            "description": "A String", # Optional. Description of media card.
+            "name": "A String", # Required. Name of media card.
+            "largeImage": { # The image response message. # Optional. Image to display above media content.
+              "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                  # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+              "imageUri": "A String", # Optional. The public URI to an image file.
+            },
+            "icon": { # The image response message. # Optional. Icon to display above media content.
+              "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                  # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+              "imageUri": "A String", # Optional. The public URI to an image file.
+            },
+          },
+        ],
+        "mediaType": "A String", # Optional. What type of media is the content (ie "audio").
+      },
+      "tableCard": { # Table card for Actions on Google. # Table card for Actions on Google.
+        "rows": [ # Optional. Rows in this table of data.
+          { # Row of TableCard.
+            "cells": [ # Optional. List of cells that make up this row.
+              { # Cell of TableCardRow.
+                "text": "A String", # Required. Text in this cell.
+              },
+            ],
+            "dividerAfter": True or False, # Optional. Whether to add a visual divider after this row.
+          },
+        ],
+        "subtitle": "A String", # Optional. Subtitle to the title.
+        "title": "A String", # Required. Title of the card.
+        "image": { # The image response message. # Optional. Image which should be displayed on the card.
+          "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+              # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+          "imageUri": "A String", # Optional. The public URI to an image file.
+        },
+        "columnProperties": [ # Optional. Display properties for the columns in this table.
+          { # Column properties for TableCard.
+            "header": "A String", # Required. Column heading.
+            "horizontalAlignment": "A String", # Optional. Defines text alignment for all cells in this column.
+          },
+        ],
+        "buttons": [ # Optional. List of buttons for the card.
+          { # The button object that appears at the bottom of a card.
+            "openUriAction": { # Opens the given URI. # Required. Action to take when a user taps on the button.
+              "uri": "A String", # Required. The HTTP or HTTPS scheme URI.
+            },
+            "title": "A String", # Required. The title of the button.
+          },
+        ],
+      },
       "carouselSelect": { # The card for presenting a carousel of options to select from. # Displays a carousel card for Actions on Google.
         "items": [ # Required. Carousel items.
           { # An item in the carousel.
@@ -2615,17 +4809,24 @@
             "title": "A String", # Required. The title of the list item.
           },
         ],
+        "subtitle": "A String", # Optional. Subtitle of the list.
         "title": "A String", # Optional. The overall title of the list.
       },
+      "suggestions": { # The collection of suggestions. # Displays suggestion chips for Actions on Google.
+        "suggestions": [ # Required. The list of suggested replies.
+          { # The suggestion chip message that the user can tap to quickly post a reply
+              # to the conversation.
+            "title": "A String", # Required. The text shown the in the suggestion chip.
+          },
+        ],
+      },
       "telephonyTransferCall": { # Transfers the call in Telephony Gateway. # Transfers the call in Telephony Gateway.
         "phoneNumber": "A String", # Required. The phone number to transfer the call to
             # in [E.164 format](https://en.wikipedia.org/wiki/E.164).
             #
             # We currently only allow transferring to US numbers (+1xxxyyyzzzz).
       },
-      "payload": { # Returns a response containing a custom, platform-specific payload.
-          # See the Intent.Message.Platform type for a description of the
-          # structure that may be required for your platform.
+      "payload": { # A custom platform-specific response.
         "a_key": "", # Properties of the object.
       },
       "card": { # The card response message. # Displays a card.
@@ -2642,33 +4843,70 @@
       },
     },
   ],
-  "parentFollowupIntentName": "A String", # Read-only after creation. The unique identifier of the parent intent in the
-      # chain of followup intents. You can set this field when creating an intent,
-      # for example with CreateIntent or BatchUpdateIntents, in order to
-      # make this intent a followup intent.
-      # 
-      # It identifies the parent followup intent.
-      # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+  "trainingPhrases": [ # Optional. The collection of examples that the agent is
+      # trained on.
+    { # Represents an example that the agent is trained on.
+      "parts": [ # Required. The ordered list of training phrase parts.
+          # The parts are concatenated in order to form the training phrase.
+          #
+          # Note: The API does not automatically annotate training phrases like the
+          # Dialogflow Console does.
+          #
+          # Note: Do not forget to include whitespace at part boundaries,
+          # so the training phrase is well formatted when the parts are concatenated.
+          #
+          # If the training phrase does not need to be annotated with parameters,
+          # you just need a single part with only the Part.text field set.
+          #
+          # If you want to annotate the training phrase, you must create multiple
+          # parts, where the fields of each part are populated in one of two ways:
+          #
+          # -   `Part.text` is set to a part of the phrase that has no parameters.
+          # -   `Part.text` is set to a part of the phrase that you want to annotate,
+          #     and the `entity_type`, `alias`, and `user_defined` fields are all
+          #     set.
+        { # Represents a part of a training phrase.
+          "alias": "A String", # Optional. The parameter name for the value extracted from the
+              # annotated part of the example.
+              # This field is required for annotated parts of the training phrase.
+          "entityType": "A String", # Optional. The entity type name prefixed with `@`.
+              # This field is required for annotated parts of the training phrase.
+          "text": "A String", # Required. The text for this part.
+          "userDefined": True or False, # Optional. Indicates whether the text was manually annotated.
+              # This field is set to true when the Dialogflow Console is used to
+              # manually annotate the part. When creating an annotated part with the
+              # API, you must set this to true.
+        },
+      ],
+      "type": "A String", # Required. The type of the training phrase.
+      "name": "A String", # Output only. The unique identifier of this training phrase.
+      "timesAddedCount": 42, # Optional. Indicates how many times this example was added to
+          # the intent. Each time a developer adds an existing sample by editing an
+          # intent or training, this counter is increased.
+    },
+  ],
   "defaultResponsePlatforms": [ # Optional. The list of platforms for which the first responses will be
       # copied from the messages in PLATFORM_UNSPECIFIED (i.e. default platform).
     "A String",
   ],
-  "priority": 42, # Optional. The priority of this intent. Higher numbers represent higher
-      # priorities. If this is zero or unspecified, we use the default
-      # priority 500000.
+  "priority": 42, # The priority of this intent. Higher numbers represent higher
+      # priorities.
       # 
-      # Negative numbers mean that the intent is disabled.
+      # - If the supplied value is unspecified or 0, the service
+      #   translates the value to 500,000, which corresponds to the
+      #   `Normal` priority in the console.
+      # - If the supplied value is negative, the intent is ignored
+      #   in runtime detect intent requests.
   "rootFollowupIntentName": "A String", # Read-only. The unique identifier of the root intent in the chain of
       # followup intents. It identifies the correct followup intents chain for
       # this intent. We populate this field only in the output.
       # 
-      # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
-  "endInteraction": True or False, # Optional. Indicates that this intent ends an interaction. Some integrations
-      # (e.g., Actions on Google or Dialogflow phone gateway) use this information
-      # to close interaction with an end user. Default is false.
+      # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
+  "resetContexts": True or False, # Optional. Indicates whether to delete all contexts in the current
+      # session when this intent is matched.
   "inputContextNames": [ # Optional. The list of context names required for this intent to be
       # triggered.
-      # Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+      # Format: `projects/&lt;Project ID&gt;/agent/sessions/-/contexts/&lt;Context ID&gt;`.
     "A String",
   ],
   "mlEnabled": True or False, # Optional. Indicates whether Machine Learning is enabled for the intent.
@@ -2688,26 +4926,44 @@
       # is matched. Context messages in this collection should not set the
       # parameters field. Setting the `lifespan_count` to 0 will reset the context
       # when the intent is matched.
-      # Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+      # Format: `projects/&lt;Project ID&gt;/agent/sessions/-/contexts/&lt;Context ID&gt;`.
     { # Represents a context.
-      "parameters": { # Optional. The collection of parameters associated with this context.
-          # Refer to [this
-          # doc](https://cloud.google.com/dialogflow-enterprise/docs/intents-actions-parameters)
-          # for syntax.
-        "a_key": "", # Properties of the object.
-      },
       "name": "A String", # Required. The unique identifier of the context. Format:
-          # `projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context ID>`,
-          # or `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
-          # ID>/sessions/<Session ID>/contexts/<Context ID>`.
+          # `projects/&lt;Project ID&gt;/agent/sessions/&lt;Session ID&gt;/contexts/&lt;Context ID&gt;`,
+          # or `projects/&lt;Project ID&gt;/agent/environments/&lt;Environment ID&gt;/users/&lt;User
+          # ID&gt;/sessions/&lt;Session ID&gt;/contexts/&lt;Context ID&gt;`.
           #
           # The `Context ID` is always converted to lowercase, may only contain
           # characters in a-zA-Z0-9_-% and may be at most 250 bytes long.
           #
           # If `Environment ID` is not specified, we assume default 'draft'
           # environment. If `User ID` is not specified, we assume default '-' user.
+          #
+          # The following context names are reserved for internal use by Dialogflow.
+          # You should not use these contexts or create contexts with these names:
+          #
+          # * `__system_counters__`
+          # * `*_id_dialog_context`
+          # * `*_dialog_params_size`
+      "parameters": { # Optional. The collection of parameters associated with this context.
+          #
+          # Depending on your protocol or client library language, this is a
+          # map, associative array, symbol table, dictionary, or JSON object
+          # composed of a collection of (MapKey, MapValue) pairs:
+          #
+          # -   MapKey type: string
+          # -   MapKey value: parameter name
+          # -   MapValue type:
+          #     -   If parameter's entity type is a composite entity: map
+          #     -   Else: string or number, depending on parameter value type
+          # -   MapValue value:
+          #     -   If parameter's entity type is a composite entity:
+          #         map from composite entity property names to property values
+          #     -   Else: parameter value
+        "a_key": "", # Properties of the object.
+      },
       "lifespanCount": 42, # Optional. The number of conversational query requests after which the
-          # context expires. If set to `0` (the default) the context expires
+          # context expires. The default is `0`. If set to `0`, the context expires
           # immediately. Contexts expire automatically after 20 minutes if there
           # are no matching queries.
     },
@@ -2715,16 +4971,16 @@
   "events": [ # Optional. The collection of event names that trigger the intent.
       # If the collection of input contexts is not empty, all of the contexts must
       # be present in the active user session for an event to trigger this intent.
+      # Event names are limited to 150 characters.
     "A String",
   ],
 }
 
-  languageCode: string, Optional. The language of training phrases, parameters and rich messages
-defined in `intent`. If not specified, the agent's default language is
-used. [Many
-languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language)
-are supported. Note: languages must be enabled in the agent before they can
-be used.
+  languageCode: string, Optional. The language used to access language-specific data.
+If not specified, the agent's default language is used.
+For more information, see
+[Multilingual intent and entity
+data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
   intentView: string, Optional. The resource view to apply to the returned intent.
   updateMask: string, Optional. The mask to control which fields get updated.
   x__xgafv: string, V1 error format.
@@ -2747,12 +5003,10 @@
     "name": "A String", # The unique identifier of this intent.
         # Required for Intents.UpdateIntent and Intents.BatchUpdateIntents
         # methods.
-        # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+        # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
     "parameters": [ # Optional. The collection of parameters associated with the intent.
       { # Represents intent parameters.
-        "mandatory": True or False, # Optional. Indicates whether the parameter is required. That is,
-            # whether the intent cannot be completed without collecting the parameter
-            # value.
+        "displayName": "A String", # Required. The name of the parameter.
         "name": "A String", # The unique identifier of this parameter.
         "defaultValue": "A String", # Optional. The default value to use when the `value` yields an empty
             # result.
@@ -2768,67 +5022,36 @@
             # - a parameter value from some context defined as
             #   `#context_name.parameter_name`.
         "prompts": [ # Optional. The collection of prompts that the agent can present to the
-            # user in order to collect value for the parameter.
+            # user in order to collect a value for the parameter.
           "A String",
         ],
         "isList": True or False, # Optional. Indicates whether the parameter represents a list of values.
-        "displayName": "A String", # Required. The name of the parameter.
+        "mandatory": True or False, # Optional. Indicates whether the parameter is required. That is,
+            # whether the intent cannot be completed without collecting the parameter
+            # value.
       },
     ],
-    "trainingPhrases": [ # Optional. The collection of examples that the agent is
-        # trained on.
-      { # Represents an example that the agent is trained on.
-        "parts": [ # Required. The ordered list of training phrase parts.
-            # The parts are concatenated in order to form the training phrase.
-            #
-            # Note: The API does not automatically annotate training phrases like the
-            # Dialogflow Console does.
-            #
-            # Note: Do not forget to include whitespace at part boundaries,
-            # so the training phrase is well formatted when the parts are concatenated.
-            #
-            # If the training phrase does not need to be annotated with parameters,
-            # you just need a single part with only the Part.text field set.
-            #
-            # If you want to annotate the training phrase, you must create multiple
-            # parts, where the fields of each part are populated in one of two ways:
-            #
-            # -   `Part.text` is set to a part of the phrase that has no parameters.
-            # -   `Part.text` is set to a part of the phrase that you want to annotate,
-            #     and the `entity_type`, `alias`, and `user_defined` fields are all
-            #     set.
-          { # Represents a part of a training phrase.
-            "text": "A String", # Required. The text for this part.
-            "entityType": "A String", # Optional. The entity type name prefixed with `@`.
-                # This field is required for annotated parts of the training phrase.
-            "userDefined": True or False, # Optional. Indicates whether the text was manually annotated.
-                # This field is set to true when the Dialogflow Console is used to
-                # manually annotate the part. When creating an annotated part with the
-                # API, you must set this to true.
-            "alias": "A String", # Optional. The parameter name for the value extracted from the
-                # annotated part of the example.
-                # This field is required for annotated parts of the training phrase.
-          },
-        ],
-        "type": "A String", # Required. The type of the training phrase.
-        "name": "A String", # Output only. The unique identifier of this training phrase.
-        "timesAddedCount": 42, # Optional. Indicates how many times this example was added to
-            # the intent. Each time a developer adds an existing sample by editing an
-            # intent or training, this counter is increased.
-      },
-    ],
+    "endInteraction": True or False, # Optional. Indicates that this intent ends an interaction. Some integrations
+        # (e.g., Actions on Google or Dialogflow phone gateway) use this information
+        # to close interaction with an end user. Default is false.
     "followupIntentInfo": [ # Read-only. Information about all followup intents that have this intent as
         # a direct or indirect parent. We populate this field only in the output.
       { # Represents a single followup intent in the chain.
         "followupIntentName": "A String", # The unique identifier of the followup intent.
-            # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+            # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
         "parentFollowupIntentName": "A String", # The unique identifier of the followup intent's parent.
-            # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+            # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
       },
     ],
     "webhookState": "A String", # Optional. Indicates whether webhooks are enabled for the intent.
-    "resetContexts": True or False, # Optional. Indicates whether to delete all contexts in the current
-        # session when this intent is matched.
+    "parentFollowupIntentName": "A String", # Read-only after creation. The unique identifier of the parent intent in the
+        # chain of followup intents. You can set this field when creating an intent,
+        # for example with CreateIntent or
+        # BatchUpdateIntents, in order to make this
+        # intent a followup intent.
+        #
+        # It identifies the parent followup intent.
+        # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
     "messages": [ # Optional. The collection of rich messages corresponding to the
         # `Response` field in the Dialogflow console.
       { # Corresponds to the `Response` field in the Dialogflow console.
@@ -2838,12 +5061,12 @@
             # `SimpleResponse`.
           "simpleResponses": [ # Required. The list of simple responses.
             { # The simple response message containing speech or text.
-              "textToSpeech": "A String", # One of text_to_speech or ssml must be provided. The plain text of the
-                  # speech output. Mutually exclusive with ssml.
-              "displayText": "A String", # Optional. The text to display.
               "ssml": "A String", # One of text_to_speech or ssml must be provided. Structured spoken
                   # response to the user in the SSML format. Mutually exclusive with
                   # text_to_speech.
+              "textToSpeech": "A String", # One of text_to_speech or ssml must be provided. The plain text of the
+                  # speech output. Mutually exclusive with ssml.
+              "displayText": "A String", # Optional. The text to display.
             },
           ],
         },
@@ -2853,6 +5076,48 @@
           ],
           "title": "A String", # Optional. The title of the collection of quick replies.
         },
+        "rbmText": { # Rich Business Messaging (RBM) text response with suggestions. # Rich Business Messaging (RBM) text response.
+            #
+            # RBM allows businesses to send enriched and branded versions of SMS. See
+            # https://jibe.google.com/business-messaging.
+          "text": "A String", # Required. Text sent and displayed to the user.
+          "rbmSuggestion": [ # Optional. One or more suggestions to show to the user.
+            { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                # easily select/click a predefined response or perform an action (like
+                # opening a web uri).
+              "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                  # can choose from the card.
+                "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                    # to send back to the agent (https://goo.gl/GXotJW).
+                },
+                "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                    # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                    # registered as the default handler for the URL, then this app will be
+                    # opened instead, and its icon will be used in the suggested action UI.
+                  "uri": "A String", # Required. The uri to open on the user device
+                },
+                "text": "A String", # Text to display alongside the action.
+                "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                    # but does not dial automatically (https://goo.gl/ergbB2).
+                  "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                      # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                      # format. An example of a correctly formatted phone number:
+                      # +15556767888.
+                },
+                "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                    # when the user taps the suggested action. This data will be also
+                    # forwarded to webhook to allow performing custom business logic.
+              },
+              "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                  # instead of typing in their own response.
+                "text": "A String", # Suggested reply text.
+                "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                    # when the user taps the suggested reply. This data will be also
+                    # forwarded to webhook to allow performing custom business logic.
+              },
+            },
+          ],
+        },
         "platform": "A String", # Optional. The platform that this message is intended for.
         "text": { # The text response message. # Returns a text response.
           "text": [ # Optional. The collection of the agent's responses.
@@ -2874,22 +5139,105 @@
               # [SSML](https://developers.google.com/actions/reference/ssml).
           "text": "A String", # The raw text to be synthesized.
         },
-        "suggestions": { # The collection of suggestions. # Displays suggestion chips for Actions on Google.
-          "suggestions": [ # Required. The list of suggested replies.
-            { # The suggestion chip message that the user can tap to quickly post a reply
-                # to the conversation.
-              "title": "A String", # Required. The text shown the in the suggestion chip.
+        "rbmCarouselRichCard": { # Carousel Rich Business Messaging (RBM) rich card. # Rich Business Messaging (RBM) carousel rich card response.
+            #
+            # Rich cards allow you to respond to users with more vivid content, e.g.
+            # with media and suggestions.
+            #
+            # For more details about RBM rich cards, please see:
+            # https://developers.google.com/rcs-business-messaging/rbm/guides/build/send-messages#rich-cards.
+            # If you want to show a single card with more control over the layout,
+            # please use RbmStandaloneCard instead.
+          "cardContents": [ # Required. The cards in the carousel. A carousel must have at least
+              # 2 cards and at most 10.
+            { # Rich Business Messaging (RBM) Card content
+              "media": { # Rich Business Messaging (RBM) Media displayed in Cards # Optional. However at least one of the title, description or media must
+                  # be set. Media (image, GIF or a video) to include in the card.
+                  # The following media-types are currently supported:
+                  #
+                  # Image Types
+                  #
+                  # * image/jpeg
+                  # * image/jpg'
+                  # * image/gif
+                  # * image/png
+                  #
+                  # Video Types
+                  #
+                  # * video/h263
+                  # * video/m4v
+                  # * video/mp4
+                  # * video/mpeg
+                  # * video/mpeg4
+                  # * video/webm
+                "fileUri": "A String", # Required. Publicly reachable URI of the file. The RBM platform
+                    # determines the MIME type of the file from the content-type field in
+                    # the HTTP headers when the platform fetches the file. The content-type
+                    # field must be present and accurate in the HTTP response from the URL.
+                "thumbnailUri": "A String", # Optional. Publicly reachable URI of the thumbnail.If you don't
+                    # provide a thumbnail URI, the RBM platform displays a blank
+                    # placeholder thumbnail until the user's device downloads the file.
+                    # Depending on the user's setting, the file may not download
+                    # automatically and may require the user to tap a download button.
+                "height": "A String", # Required for cards with vertical orientation. The height of the media
+                    # within a rich card with a vertical layout. (https://goo.gl/NeFCjz).
+                    # For a standalone card with horizontal layout, height is not
+                    # customizable, and this field is ignored.
+              },
+              "suggestions": [ # Optional. List of suggestions to include in the card.
+                { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                    # easily select/click a predefined response or perform an action (like
+                    # opening a web uri).
+                  "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                      # can choose from the card.
+                    "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                        # to send back to the agent (https://goo.gl/GXotJW).
+                    },
+                    "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                        # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                        # registered as the default handler for the URL, then this app will be
+                        # opened instead, and its icon will be used in the suggested action UI.
+                      "uri": "A String", # Required. The uri to open on the user device
+                    },
+                    "text": "A String", # Text to display alongside the action.
+                    "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                        # but does not dial automatically (https://goo.gl/ergbB2).
+                      "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                          # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                          # format. An example of a correctly formatted phone number:
+                          # +15556767888.
+                    },
+                    "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                        # when the user taps the suggested action. This data will be also
+                        # forwarded to webhook to allow performing custom business logic.
+                  },
+                  "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                      # instead of typing in their own response.
+                    "text": "A String", # Suggested reply text.
+                    "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                        # when the user taps the suggested reply. This data will be also
+                        # forwarded to webhook to allow performing custom business logic.
+                  },
+                },
+              ],
+              "description": "A String", # Optional. Description of the card (at most 2000 bytes).
+                  #
+                  # At least one of the title, description or media must be set.
+              "title": "A String", # Optional. Title of the card (at most 200 bytes).
+                  #
+                  # At least one of the title, description or media must be set.
             },
           ],
+          "cardWidth": "A String", # Required. The width of the cards in the carousel.
         },
         "telephonyPlayAudio": { # Plays audio from a file in Telephony Gateway. # Plays audio from a file in Telephony Gateway.
           "audioUri": "A String", # Required. URI to a Google Cloud Storage object containing the audio to
               # play, e.g., "gs://bucket/object". The object must contain a single
               # channel (mono) of linear PCM audio (2 bytes / sample) at 8kHz.
               #
-              # This object must be readable by the `service-<Project
-              # Number>@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
-              # where <Project Number> is the number of the Telephony Gateway project
+              # This object must be readable by the `service-&lt;Project
+              # Number&gt;@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
+              # where &lt;Project Number&gt; is the number of the Telephony Gateway project
               # (usually the same as the Dialogflow agent project). If the Google Cloud
               # Storage bucket is in the Telephony Gateway project, this permission is
               # added by default when enabling the Dialogflow V2 API.
@@ -2897,12 +5245,127 @@
               # For audio from other sources, consider using the
               # `TelephonySynthesizeSpeech` message with SSML.
         },
+        "rbmStandaloneRichCard": { # Standalone Rich Business Messaging (RBM) rich card. # Standalone Rich Business Messaging (RBM) rich card response.
+            #
+            # Rich cards allow you to respond to users with more vivid content, e.g.
+            # with media and suggestions.
+            #
+            # For more details about RBM rich cards, please see:
+            # https://developers.google.com/rcs-business-messaging/rbm/guides/build/send-messages#rich-cards.
+            # You can group multiple rich cards into one using RbmCarouselCard but
+            # carousel cards will give you less control over the card layout.
+          "thumbnailImageAlignment": "A String", # Required if orientation is horizontal.
+              # Image preview alignment for standalone cards with horizontal layout.
+          "cardContent": { # Rich Business Messaging (RBM) Card content # Required. Card content.
+            "media": { # Rich Business Messaging (RBM) Media displayed in Cards # Optional. However at least one of the title, description or media must
+                # be set. Media (image, GIF or a video) to include in the card.
+                # The following media-types are currently supported:
+                #
+                # Image Types
+                #
+                # * image/jpeg
+                # * image/jpg'
+                # * image/gif
+                # * image/png
+                #
+                # Video Types
+                #
+                # * video/h263
+                # * video/m4v
+                # * video/mp4
+                # * video/mpeg
+                # * video/mpeg4
+                # * video/webm
+              "fileUri": "A String", # Required. Publicly reachable URI of the file. The RBM platform
+                  # determines the MIME type of the file from the content-type field in
+                  # the HTTP headers when the platform fetches the file. The content-type
+                  # field must be present and accurate in the HTTP response from the URL.
+              "thumbnailUri": "A String", # Optional. Publicly reachable URI of the thumbnail.If you don't
+                  # provide a thumbnail URI, the RBM platform displays a blank
+                  # placeholder thumbnail until the user's device downloads the file.
+                  # Depending on the user's setting, the file may not download
+                  # automatically and may require the user to tap a download button.
+              "height": "A String", # Required for cards with vertical orientation. The height of the media
+                  # within a rich card with a vertical layout. (https://goo.gl/NeFCjz).
+                  # For a standalone card with horizontal layout, height is not
+                  # customizable, and this field is ignored.
+            },
+            "suggestions": [ # Optional. List of suggestions to include in the card.
+              { # Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+                  # easily select/click a predefined response or perform an action (like
+                  # opening a web uri).
+                "action": { # Rich Business Messaging (RBM) suggested client-side action that the user # Predefined client side actions that user can choose
+                    # can choose from the card.
+                  "shareLocation": { # Opens the device's location chooser so the user can pick a location # Suggested client side action: Share user location
+                      # to send back to the agent (https://goo.gl/GXotJW).
+                  },
+                  "openUrl": { # Opens the user's default web browser app to the specified uri # Suggested client side action: Open a URI on device
+                      # (https://goo.gl/6GLJD2). If the user has an app installed that is
+                      # registered as the default handler for the URL, then this app will be
+                      # opened instead, and its icon will be used in the suggested action UI.
+                    "uri": "A String", # Required. The uri to open on the user device
+                  },
+                  "text": "A String", # Text to display alongside the action.
+                  "dial": { # Opens the user's default dialer app with the specified phone number # Suggested client side action: Dial a phone number
+                      # but does not dial automatically (https://goo.gl/ergbB2).
+                    "phoneNumber": "A String", # Required. The phone number to fill in the default dialer app.
+                        # This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+                        # format. An example of a correctly formatted phone number:
+                        # +15556767888.
+                  },
+                  "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                      # when the user taps the suggested action. This data will be also
+                      # forwarded to webhook to allow performing custom business logic.
+                },
+                "reply": { # Rich Business Messaging (RBM) suggested reply that the user can click # Predefined replies for user to select instead of typing
+                    # instead of typing in their own response.
+                  "text": "A String", # Suggested reply text.
+                  "postbackData": "A String", # Opaque payload that the Dialogflow receives in a user event
+                      # when the user taps the suggested reply. This data will be also
+                      # forwarded to webhook to allow performing custom business logic.
+                },
+              },
+            ],
+            "description": "A String", # Optional. Description of the card (at most 2000 bytes).
+                #
+                # At least one of the title, description or media must be set.
+            "title": "A String", # Optional. Title of the card (at most 200 bytes).
+                #
+                # At least one of the title, description or media must be set.
+          },
+          "cardOrientation": "A String", # Required. Orientation of the card.
+        },
         "linkOutSuggestion": { # The suggestion chip message that allows the user to jump out to the app # Displays a link out suggestion chip for Actions on Google.
             # or website associated with this agent.
           "uri": "A String", # Required. The URI of the app or site to open when the user taps the
               # suggestion chip.
           "destinationName": "A String", # Required. The name of the app or site this chip is linking to.
         },
+        "browseCarouselCard": { # Browse Carousel Card for Actions on Google. # Browse carousel card for Actions on Google.
+            # https://developers.google.com/actions/assistant/responses#browsing_carousel
+          "items": [ # Required. List of items in the Browse Carousel Card. Minimum of two
+              # items, maximum of ten.
+            { # Browsing carousel tile
+              "image": { # The image response message. # Optional. Hero image for the carousel item.
+                "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                    # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                "imageUri": "A String", # Optional. The public URI to an image file.
+              },
+              "title": "A String", # Required. Title of the carousel item. Maximum of two lines of text.
+              "description": "A String", # Optional. Description of the carousel item. Maximum of four lines of
+                  # text.
+              "openUriAction": { # Actions on Google action to open a given url. # Required. Action to present to the user.
+                "url": "A String", # Required. URL
+                "urlTypeHint": "A String", # Optional. Specifies the type of viewer that is used when opening
+                    # the URL. Defaults to opening via web browser.
+              },
+              "footer": "A String", # Optional. Text that appears at the bottom of the Browse Carousel
+                  # Card. Maximum of one line of text.
+            },
+          ],
+          "imageDisplayOptions": "A String", # Optional. Settings for displaying the image. Applies to every image in
+              # items.
+        },
         "basicCard": { # The basic card message. Useful for displaying information. # Displays a basic card for Actions on Google.
           "buttons": [ # Optional. The collection of card buttons.
             { # The button object that appears at the bottom of a card.
@@ -2921,6 +5384,59 @@
           "subtitle": "A String", # Optional. The subtitle of the card.
           "title": "A String", # Optional. The title of the card.
         },
+        "mediaContent": { # The media content card for Actions on Google. # The media content card for Actions on Google.
+          "mediaObjects": [ # Required. List of media objects.
+            { # Response media object for media content card.
+              "contentUrl": "A String", # Required. Url where the media is stored.
+              "description": "A String", # Optional. Description of media card.
+              "name": "A String", # Required. Name of media card.
+              "largeImage": { # The image response message. # Optional. Image to display above media content.
+                "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                    # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                "imageUri": "A String", # Optional. The public URI to an image file.
+              },
+              "icon": { # The image response message. # Optional. Icon to display above media content.
+                "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                    # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+                "imageUri": "A String", # Optional. The public URI to an image file.
+              },
+            },
+          ],
+          "mediaType": "A String", # Optional. What type of media is the content (ie "audio").
+        },
+        "tableCard": { # Table card for Actions on Google. # Table card for Actions on Google.
+          "rows": [ # Optional. Rows in this table of data.
+            { # Row of TableCard.
+              "cells": [ # Optional. List of cells that make up this row.
+                { # Cell of TableCardRow.
+                  "text": "A String", # Required. Text in this cell.
+                },
+              ],
+              "dividerAfter": True or False, # Optional. Whether to add a visual divider after this row.
+            },
+          ],
+          "subtitle": "A String", # Optional. Subtitle to the title.
+          "title": "A String", # Required. Title of the card.
+          "image": { # The image response message. # Optional. Image which should be displayed on the card.
+            "accessibilityText": "A String", # A text description of the image to be used for accessibility,
+                # e.g., screen readers. Required if image_uri is set for CarouselSelect.
+            "imageUri": "A String", # Optional. The public URI to an image file.
+          },
+          "columnProperties": [ # Optional. Display properties for the columns in this table.
+            { # Column properties for TableCard.
+              "header": "A String", # Required. Column heading.
+              "horizontalAlignment": "A String", # Optional. Defines text alignment for all cells in this column.
+            },
+          ],
+          "buttons": [ # Optional. List of buttons for the card.
+            { # The button object that appears at the bottom of a card.
+              "openUriAction": { # Opens the given URI. # Required. Action to take when a user taps on the button.
+                "uri": "A String", # Required. The HTTP or HTTPS scheme URI.
+              },
+              "title": "A String", # Required. The title of the button.
+            },
+          ],
+        },
         "carouselSelect": { # The card for presenting a carousel of options to select from. # Displays a carousel card for Actions on Google.
           "items": [ # Required. Carousel items.
             { # An item in the carousel.
@@ -2964,17 +5480,24 @@
               "title": "A String", # Required. The title of the list item.
             },
           ],
+          "subtitle": "A String", # Optional. Subtitle of the list.
           "title": "A String", # Optional. The overall title of the list.
         },
+        "suggestions": { # The collection of suggestions. # Displays suggestion chips for Actions on Google.
+          "suggestions": [ # Required. The list of suggested replies.
+            { # The suggestion chip message that the user can tap to quickly post a reply
+                # to the conversation.
+              "title": "A String", # Required. The text shown the in the suggestion chip.
+            },
+          ],
+        },
         "telephonyTransferCall": { # Transfers the call in Telephony Gateway. # Transfers the call in Telephony Gateway.
           "phoneNumber": "A String", # Required. The phone number to transfer the call to
               # in [E.164 format](https://en.wikipedia.org/wiki/E.164).
               #
               # We currently only allow transferring to US numbers (+1xxxyyyzzzz).
         },
-        "payload": { # Returns a response containing a custom, platform-specific payload.
-            # See the Intent.Message.Platform type for a description of the
-            # structure that may be required for your platform.
+        "payload": { # A custom platform-specific response.
           "a_key": "", # Properties of the object.
         },
         "card": { # The card response message. # Displays a card.
@@ -2991,33 +5514,70 @@
         },
       },
     ],
-    "parentFollowupIntentName": "A String", # Read-only after creation. The unique identifier of the parent intent in the
-        # chain of followup intents. You can set this field when creating an intent,
-        # for example with CreateIntent or BatchUpdateIntents, in order to
-        # make this intent a followup intent.
-        #
-        # It identifies the parent followup intent.
-        # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+    "trainingPhrases": [ # Optional. The collection of examples that the agent is
+        # trained on.
+      { # Represents an example that the agent is trained on.
+        "parts": [ # Required. The ordered list of training phrase parts.
+            # The parts are concatenated in order to form the training phrase.
+            #
+            # Note: The API does not automatically annotate training phrases like the
+            # Dialogflow Console does.
+            #
+            # Note: Do not forget to include whitespace at part boundaries,
+            # so the training phrase is well formatted when the parts are concatenated.
+            #
+            # If the training phrase does not need to be annotated with parameters,
+            # you just need a single part with only the Part.text field set.
+            #
+            # If you want to annotate the training phrase, you must create multiple
+            # parts, where the fields of each part are populated in one of two ways:
+            #
+            # -   `Part.text` is set to a part of the phrase that has no parameters.
+            # -   `Part.text` is set to a part of the phrase that you want to annotate,
+            #     and the `entity_type`, `alias`, and `user_defined` fields are all
+            #     set.
+          { # Represents a part of a training phrase.
+            "alias": "A String", # Optional. The parameter name for the value extracted from the
+                # annotated part of the example.
+                # This field is required for annotated parts of the training phrase.
+            "entityType": "A String", # Optional. The entity type name prefixed with `@`.
+                # This field is required for annotated parts of the training phrase.
+            "text": "A String", # Required. The text for this part.
+            "userDefined": True or False, # Optional. Indicates whether the text was manually annotated.
+                # This field is set to true when the Dialogflow Console is used to
+                # manually annotate the part. When creating an annotated part with the
+                # API, you must set this to true.
+          },
+        ],
+        "type": "A String", # Required. The type of the training phrase.
+        "name": "A String", # Output only. The unique identifier of this training phrase.
+        "timesAddedCount": 42, # Optional. Indicates how many times this example was added to
+            # the intent. Each time a developer adds an existing sample by editing an
+            # intent or training, this counter is increased.
+      },
+    ],
     "defaultResponsePlatforms": [ # Optional. The list of platforms for which the first responses will be
         # copied from the messages in PLATFORM_UNSPECIFIED (i.e. default platform).
       "A String",
     ],
-    "priority": 42, # Optional. The priority of this intent. Higher numbers represent higher
-        # priorities. If this is zero or unspecified, we use the default
-        # priority 500000.
+    "priority": 42, # The priority of this intent. Higher numbers represent higher
+        # priorities.
         #
-        # Negative numbers mean that the intent is disabled.
+        # - If the supplied value is unspecified or 0, the service
+        #   translates the value to 500,000, which corresponds to the
+        #   `Normal` priority in the console.
+        # - If the supplied value is negative, the intent is ignored
+        #   in runtime detect intent requests.
     "rootFollowupIntentName": "A String", # Read-only. The unique identifier of the root intent in the chain of
         # followup intents. It identifies the correct followup intents chain for
         # this intent. We populate this field only in the output.
         #
-        # Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
-    "endInteraction": True or False, # Optional. Indicates that this intent ends an interaction. Some integrations
-        # (e.g., Actions on Google or Dialogflow phone gateway) use this information
-        # to close interaction with an end user. Default is false.
+        # Format: `projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;`.
+    "resetContexts": True or False, # Optional. Indicates whether to delete all contexts in the current
+        # session when this intent is matched.
     "inputContextNames": [ # Optional. The list of context names required for this intent to be
         # triggered.
-        # Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+        # Format: `projects/&lt;Project ID&gt;/agent/sessions/-/contexts/&lt;Context ID&gt;`.
       "A String",
     ],
     "mlEnabled": True or False, # Optional. Indicates whether Machine Learning is enabled for the intent.
@@ -3037,26 +5597,44 @@
         # is matched. Context messages in this collection should not set the
         # parameters field. Setting the `lifespan_count` to 0 will reset the context
         # when the intent is matched.
-        # Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+        # Format: `projects/&lt;Project ID&gt;/agent/sessions/-/contexts/&lt;Context ID&gt;`.
       { # Represents a context.
-        "parameters": { # Optional. The collection of parameters associated with this context.
-            # Refer to [this
-            # doc](https://cloud.google.com/dialogflow-enterprise/docs/intents-actions-parameters)
-            # for syntax.
-          "a_key": "", # Properties of the object.
-        },
         "name": "A String", # Required. The unique identifier of the context. Format:
-            # `projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context ID>`,
-            # or `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
-            # ID>/sessions/<Session ID>/contexts/<Context ID>`.
+            # `projects/&lt;Project ID&gt;/agent/sessions/&lt;Session ID&gt;/contexts/&lt;Context ID&gt;`,
+            # or `projects/&lt;Project ID&gt;/agent/environments/&lt;Environment ID&gt;/users/&lt;User
+            # ID&gt;/sessions/&lt;Session ID&gt;/contexts/&lt;Context ID&gt;`.
             #
             # The `Context ID` is always converted to lowercase, may only contain
             # characters in a-zA-Z0-9_-% and may be at most 250 bytes long.
             #
             # If `Environment ID` is not specified, we assume default 'draft'
             # environment. If `User ID` is not specified, we assume default '-' user.
+            #
+            # The following context names are reserved for internal use by Dialogflow.
+            # You should not use these contexts or create contexts with these names:
+            #
+            # * `__system_counters__`
+            # * `*_id_dialog_context`
+            # * `*_dialog_params_size`
+        "parameters": { # Optional. The collection of parameters associated with this context.
+            #
+            # Depending on your protocol or client library language, this is a
+            # map, associative array, symbol table, dictionary, or JSON object
+            # composed of a collection of (MapKey, MapValue) pairs:
+            #
+            # -   MapKey type: string
+            # -   MapKey value: parameter name
+            # -   MapValue type:
+            #     -   If parameter's entity type is a composite entity: map
+            #     -   Else: string or number, depending on parameter value type
+            # -   MapValue value:
+            #     -   If parameter's entity type is a composite entity:
+            #         map from composite entity property names to property values
+            #     -   Else: parameter value
+          "a_key": "", # Properties of the object.
+        },
         "lifespanCount": 42, # Optional. The number of conversational query requests after which the
-            # context expires. If set to `0` (the default) the context expires
+            # context expires. The default is `0`. If set to `0`, the context expires
             # immediately. Contexts expire automatically after 20 minutes if there
             # are no matching queries.
       },
@@ -3064,6 +5642,7 @@
     "events": [ # Optional. The collection of event names that trigger the intent.
         # If the collection of input contexts is not empty, all of the contexts must
         # be present in the active user session for an event to trigger this intent.
+        # Event names are limited to 150 characters.
       "A String",
     ],
   }</pre>