chore: regens API reference docs (#889)

diff --git a/docs/dyn/dialogflow_v2.projects.agent.html b/docs/dyn/dialogflow_v2.projects.agent.html
index 3c931b6..5c648f7 100644
--- a/docs/dyn/dialogflow_v2.projects.agent.html
+++ b/docs/dyn/dialogflow_v2.projects.agent.html
@@ -80,6 +80,11 @@
 <p class="firstline">Returns the entityTypes Resource.</p>
 
 <p class="toc_element">
+  <code><a href="dialogflow_v2.projects.agent.environments.html">environments()</a></code>
+</p>
+<p class="firstline">Returns the environments Resource.</p>
+
+<p class="toc_element">
   <code><a href="dialogflow_v2.projects.agent.intents.html">intents()</a></code>
 </p>
 <p class="firstline">Returns the intents Resource.</p>
@@ -90,13 +95,19 @@
 <p class="firstline">Returns the sessions Resource.</p>
 
 <p class="toc_element">
-  <code><a href="#export">export(parent, body, x__xgafv=None)</a></code></p>
+  <code><a href="#export">export(parent, body=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Exports the specified agent to a ZIP file.</p>
 <p class="toc_element">
-  <code><a href="#import_">import_(parent, body, x__xgafv=None)</a></code></p>
+  <code><a href="#getFulfillment">getFulfillment(name, x__xgafv=None)</a></code></p>
+<p class="firstline">Retrieves the fulfillment.</p>
+<p class="toc_element">
+  <code><a href="#getValidationResult">getValidationResult(parent, languageCode=None, x__xgafv=None)</a></code></p>
+<p class="firstline">Gets agent validation result. Agent validation is performed during</p>
+<p class="toc_element">
+  <code><a href="#import_">import_(parent, body=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Imports the specified agent from a ZIP file.</p>
 <p class="toc_element">
-  <code><a href="#restore">restore(parent, body, x__xgafv=None)</a></code></p>
+  <code><a href="#restore">restore(parent, body=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Restores the specified agent from a ZIP file.</p>
 <p class="toc_element">
   <code><a href="#search">search(parent, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
@@ -107,24 +118,26 @@
 <p class="toc_element">
   <code><a href="#train">train(parent, body=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Trains the specified agent.</p>
+<p class="toc_element">
+  <code><a href="#updateFulfillment">updateFulfillment(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
+<p class="firstline">Updates the fulfillment.</p>
 <h3>Method Details</h3>
 <div class="method">
-    <code class="details" id="export">export(parent, body, x__xgafv=None)</code>
+    <code class="details" id="export">export(parent, body=None, x__xgafv=None)</code>
   <pre>Exports the specified agent to a ZIP file.
 
-Operation <response: ExportAgentResponse>
+Operation &lt;response: ExportAgentResponse&gt;
 
 Args:
   parent: string, Required. The project that the agent to export is associated with.
-Format: `projects/<Project ID>`. (required)
-  body: object, The request body. (required)
+Format: `projects/&lt;Project ID&gt;`. (required)
+  body: object, The request body.
     The object takes the form of:
 
 { # The request message for Agents.ExportAgent.
-    "agentUri": "A String", # Optional. The
-        # [Google Cloud Storage](https://cloud.google.com/storage/docs/)
+    "agentUri": "A String", # Required. The [Google Cloud Storage](https://cloud.google.com/storage/docs/)
         # URI to export the agent to.
-        # The format of this URI must be `gs://<bucket-name>/<object-name>`.
+        # The format of this URI must be `gs://&lt;bucket-name&gt;/&lt;object-name&gt;`.
         # If left unspecified, the serialized agent is returned inline.
   }
 
@@ -138,12 +151,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
@@ -162,58 +191,119 @@
         },
       ],
     },
-    "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="import_">import_(parent, body, x__xgafv=None)</code>
+    <code class="details" id="getFulfillment">getFulfillment(name, x__xgafv=None)</code>
+  <pre>Retrieves the fulfillment.
+
+Args:
+  name: string, Required. The name of the fulfillment.
+Format: `projects/&lt;Project ID&gt;/agent/fulfillment`. (required)
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # Represents a fulfillment.
+    "enabled": True or False, # Optional. Whether fulfillment is enabled.
+    "displayName": "A String", # Optional. The human-readable name of the fulfillment, unique within the agent.
+    "features": [ # Optional. The field defines whether the fulfillment is enabled for certain features.
+      { # Whether fulfillment is enabled for the specific feature.
+        "type": "A String", # The type of the feature that enabled for fulfillment.
+      },
+    ],
+    "genericWebService": { # Represents configuration for a generic web service. # Configuration for a generic web service.
+        # Dialogflow supports two mechanisms for authentications:
+        # - Basic authentication with username and password.
+        # - Authentication with additional authentication headers.
+        # More information could be found at:
+        # https://cloud.google.com/dialogflow/docs/fulfillment-configure.
+      "isCloudFunction": True or False, # Optional. Indicates if generic web service is created through Cloud Functions
+          # integration. Defaults to false.
+      "username": "A String", # Optional. The user name for HTTP Basic authentication.
+      "password": "A String", # Optional. The password for HTTP Basic authentication.
+      "uri": "A String", # Required. The fulfillment URI for receiving POST requests.
+      "requestHeaders": { # Optional. The HTTP request headers to send together with fulfillment requests.
+        "a_key": "A String",
+      },
+    },
+    "name": "A String", # Required. The unique identifier of the fulfillment.
+        # Format: `projects/&lt;Project ID&gt;/agent/fulfillment`.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="getValidationResult">getValidationResult(parent, languageCode=None, x__xgafv=None)</code>
+  <pre>Gets agent validation result. Agent validation is performed during
+training time and is updated automatically when training is completed.
+
+Args:
+  parent: string, Required. The project that the agent is associated with.
+Format: `projects/&lt;Project ID&gt;`. (required)
+  languageCode: string, Optional. The language for which you want a validation result. If not
+specified, the agent's default language is used. [Many
+languages](https://cloud.google.com/dialogflow/docs/reference/language)
+are supported. Note: languages must be enabled in the agent before they can
+be used.
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # Represents the output of agent validation.
+    "validationErrors": [ # Contains all validation errors.
+      { # Represents a single validation error.
+        "errorMessage": "A String", # The detailed error messsage.
+        "severity": "A String", # The severity of the error.
+        "entries": [ # The names of the entries that the error is associated with.
+            # Format:
+            #
+            # - "projects/&lt;Project ID&gt;/agent", if the error is associated with the entire
+            # agent.
+            # - "projects/&lt;Project ID&gt;/agent/intents/&lt;Intent ID&gt;", if the error is
+            # associated with certain intents.
+            # - "projects/&lt;Project
+            # ID&gt;/agent/intents/&lt;Intent Id&gt;/trainingPhrases/&lt;Training Phrase ID&gt;", if the
+            # error is associated with certain intent training phrases.
+            # - "projects/&lt;Project ID&gt;/agent/intents/&lt;Intent Id&gt;/parameters/&lt;Parameter
+            # ID&gt;", if the error is associated with certain intent parameters.
+            # - "projects/&lt;Project ID&gt;/agent/entities/&lt;Entity ID&gt;", if the error is
+            # associated with certain entities.
+          "A String",
+        ],
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="import_">import_(parent, body=None, x__xgafv=None)</code>
   <pre>Imports the specified agent from a ZIP file.
 
 Uploads new intents and entity types without deleting the existing ones.
 Intents and entity types with the same name are replaced with the new
 versions from ImportAgentRequest.
 
-Operation <response: google.protobuf.Empty>
+Operation &lt;response: google.protobuf.Empty&gt;
 
 Args:
   parent: string, Required. The project that the agent to import is associated with.
-Format: `projects/<Project ID>`. (required)
-  body: object, The request body. (required)
+Format: `projects/&lt;Project ID&gt;`. (required)
+  body: object, The request body.
     The object takes the form of:
 
 { # The request message for Agents.ImportAgent.
     "agentUri": "A String", # The URI to a Google Cloud Storage file containing the agent to import.
         # Note: The URI must start with "gs://".
-    "agentContent": "A String", # The agent to import.
-        # 
-        # Example for how to import an agent via the command line:
-        # <pre>curl \
-        #   'https://dialogflow.googleapis.com/v2/projects/&lt;project_name&gt;/agent:import\
-        #    -X POST \
-        #    -H 'Authorization: Bearer '$(gcloud auth application-default
-        #    print-access-token) \
-        #    -H 'Accept: application/json' \
-        #    -H 'Content-Type: application/json' \
-        #    --compressed \
-        #    --data-binary "{
-        #       'agentContent': '$(cat &lt;agent zip file&gt; | base64 -w 0)'
-        #    }"</pre>
+    "agentContent": "A String", # Zip compressed raw byte content for agent.
   }
 
   x__xgafv: string, V1 error format.
@@ -226,12 +316,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
@@ -250,57 +356,28 @@
         },
       ],
     },
-    "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="restore">restore(parent, body, x__xgafv=None)</code>
+    <code class="details" id="restore">restore(parent, body=None, x__xgafv=None)</code>
   <pre>Restores the specified agent from a ZIP file.
 
 Replaces the current agent version with a new one. All the intents and
 entity types in the older version are deleted.
 
-Operation <response: google.protobuf.Empty>
+Operation &lt;response: google.protobuf.Empty&gt;
 
 Args:
   parent: string, Required. The project that the agent to restore is associated with.
-Format: `projects/<Project ID>`. (required)
-  body: object, The request body. (required)
+Format: `projects/&lt;Project ID&gt;`. (required)
+  body: object, The request body.
     The object takes the form of:
 
 { # The request message for Agents.RestoreAgent.
     "agentUri": "A String", # The URI to a Google Cloud Storage file containing the agent to restore.
         # Note: The URI must start with "gs://".
-    "agentContent": "A String", # The agent to restore.
-        # 
-        # Example for how to restore an agent via the command line:
-        # <pre>curl \
-        #   'https://dialogflow.googleapis.com/v2/projects/&lt;project_name&gt;/agent:restore\
-        #    -X POST \
-        #    -H 'Authorization: Bearer '$(gcloud auth application-default
-        #    print-access-token) \
-        #    -H 'Accept: application/json' \
-        #    -H 'Content-Type: application/json' \
-        #    --compressed \
-        #    --data-binary "{
-        #        'agentContent': '$(cat &lt;agent zip file&gt; | base64 -w 0)'
-        #    }"</pre>
+    "agentContent": "A String", # Zip compressed raw byte content for agent.
   }
 
   x__xgafv: string, V1 error format.
@@ -313,12 +390,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
@@ -337,22 +430,6 @@
         },
       ],
     },
-    "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>
 
@@ -368,10 +445,10 @@
 
 Args:
   parent: string, Required. The project to list agents from.
-Format: `projects/<Project ID or '-'>`. (required)
+Format: `projects/&lt;Project ID or '-'&gt;`. (required)
   pageSize: integer, Optional. The maximum number of items to return in a single page. By
 default 100 and at most 1000.
-  pageToken: string, Optional. The next_page_token value returned from a previous list request.
+  pageToken: string, The next_page_token value returned from a previous list request.
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -389,16 +466,16 @@
           "avatarUri": "A String", # Optional. The URI of the agent's avatar.
               # Avatars are used throughout the Dialogflow console and in the self-hosted
               # [Web
-              # Demo](https://cloud.google.com/dialogflow-enterprise/docs/integrations/web-demo)
+              # Demo](https://cloud.google.com/dialogflow/docs/integrations/web-demo)
               # integration.
           "displayName": "A String", # Required. The name of this agent.
           "description": "A String", # Optional. The description of this agent.
               # The maximum length is 500 characters. If exceeded, the request is rejected.
           "parent": "A String", # Required. The project of this agent.
-              # Format: `projects/<Project ID>`.
+              # Format: `projects/&lt;Project ID&gt;`.
           "defaultLanguageCode": "A String", # Required. The default language of the agent as a language tag. See
               # [Language
-              # Support](https://cloud.google.com/dialogflow-enterprise/docs/reference/language)
+              # Support](https://cloud.google.com/dialogflow/docs/reference/language)
               # for a list of the currently supported language codes. This field cannot be
               # set by the `Update` method.
           "apiVersion": "A String", # Optional. API version displayed in Dialogflow console. If not specified,
@@ -445,11 +522,11 @@
     <code class="details" id="train">train(parent, body=None, x__xgafv=None)</code>
   <pre>Trains the specified agent.
 
-Operation <response: google.protobuf.Empty>
+Operation &lt;response: google.protobuf.Empty&gt;
 
 Args:
   parent: string, Required. The project that the agent to train is associated with.
-Format: `projects/<Project ID>`. (required)
+Format: `projects/&lt;Project ID&gt;`. (required)
   body: object, The request body.
     The object takes the form of:
 
@@ -466,12 +543,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
@@ -490,22 +583,81 @@
         },
       ],
     },
-    "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.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="updateFulfillment">updateFulfillment(name, body=None, updateMask=None, x__xgafv=None)</code>
+  <pre>Updates the fulfillment.
+
+Args:
+  name: string, Required. The unique identifier of the fulfillment.
+Format: `projects/&lt;Project ID&gt;/agent/fulfillment`. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Represents a fulfillment.
+  "enabled": True or False, # Optional. Whether fulfillment is enabled.
+  "displayName": "A String", # Optional. The human-readable name of the fulfillment, unique within the agent.
+  "features": [ # Optional. The field defines whether the fulfillment is enabled for certain features.
+    { # Whether fulfillment is enabled for the specific feature.
+      "type": "A String", # The type of the feature that enabled for fulfillment.
     },
-    "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}`.
+  ],
+  "genericWebService": { # Represents configuration for a generic web service. # Configuration for a generic web service.
+      # Dialogflow supports two mechanisms for authentications:
+      # - Basic authentication with username and password.
+      # - Authentication with additional authentication headers.
+      # More information could be found at:
+      # https://cloud.google.com/dialogflow/docs/fulfillment-configure.
+    "isCloudFunction": True or False, # Optional. Indicates if generic web service is created through Cloud Functions
+        # integration. Defaults to false.
+    "username": "A String", # Optional. The user name for HTTP Basic authentication.
+    "password": "A String", # Optional. The password for HTTP Basic authentication.
+    "uri": "A String", # Required. The fulfillment URI for receiving POST requests.
+    "requestHeaders": { # Optional. The HTTP request headers to send together with fulfillment requests.
+      "a_key": "A String",
+    },
+  },
+  "name": "A String", # Required. The unique identifier of the fulfillment.
+      # Format: `projects/&lt;Project ID&gt;/agent/fulfillment`.
+}
+
+  updateMask: string, Required. The mask to control which fields get updated. If the mask is not
+present, all fields will be updated.
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # Represents a fulfillment.
+    "enabled": True or False, # Optional. Whether fulfillment is enabled.
+    "displayName": "A String", # Optional. The human-readable name of the fulfillment, unique within the agent.
+    "features": [ # Optional. The field defines whether the fulfillment is enabled for certain features.
+      { # Whether fulfillment is enabled for the specific feature.
+        "type": "A String", # The type of the feature that enabled for fulfillment.
+      },
+    ],
+    "genericWebService": { # Represents configuration for a generic web service. # Configuration for a generic web service.
+        # Dialogflow supports two mechanisms for authentications:
+        # - Basic authentication with username and password.
+        # - Authentication with additional authentication headers.
+        # More information could be found at:
+        # https://cloud.google.com/dialogflow/docs/fulfillment-configure.
+      "isCloudFunction": True or False, # Optional. Indicates if generic web service is created through Cloud Functions
+          # integration. Defaults to false.
+      "username": "A String", # Optional. The user name for HTTP Basic authentication.
+      "password": "A String", # Optional. The password for HTTP Basic authentication.
+      "uri": "A String", # Required. The fulfillment URI for receiving POST requests.
+      "requestHeaders": { # Optional. The HTTP request headers to send together with fulfillment requests.
+        "a_key": "A String",
+      },
+    },
+    "name": "A String", # Required. The unique identifier of the fulfillment.
+        # Format: `projects/&lt;Project ID&gt;/agent/fulfillment`.
   }</pre>
 </div>