Dialogflow API . projects . agent . knowledgeBases . documents

Instance Methods

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

Creates a new document.

delete(name, x__xgafv=None)

Deletes the specified document.

get(name, x__xgafv=None)

Retrieves the specified document.

list(parent, pageToken=None, pageSize=None, x__xgafv=None)

Returns the list of all documents of the knowledge base.

list_next(previous_request, previous_response)

Retrieves the next page of results.

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

Updates the specified document.

reload(name, body=None, x__xgafv=None)

Reloads the specified document from its specified source, content_uri or

Method Details

create(parent, body=None, x__xgafv=None)
Creates a new document.

Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
only use `projects.knowledgeBases.documents`.

Args:
  parent: string, The knoweldge base to create a document for.
Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base ID>`. (required)
  body: object, The request body.
    The object takes the form of:

{ # A document resource.
      # 
      # Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
      # only use `projects.knowledgeBases.documents`.
    "content": "A String", # The raw content of the document. This field is only permitted for
        # EXTRACTIVE_QA and FAQ knowledge types.
        # Note: This field is in the process of being deprecated, please use
        # raw_content instead.
    "mimeType": "A String", # Required. The MIME type of this document.
    "knowledgeTypes": [ # Required. The knowledge type of document content.
      "A String",
    ],
    "displayName": "A String", # Required. The display name of the document. The name must be 1024 bytes or
        # less; otherwise, the creation request fails.
    "rawContent": "A String", # The raw content of the document. This field is only permitted for
        # EXTRACTIVE_QA and FAQ knowledge types.
    "contentUri": "A String", # The URI where the file content is located.
        # 
        # For documents stored in Google Cloud Storage, these URIs must have
        # the form `gs://<bucket-name>/<object-name>`.
        # 
        # NOTE: External URLs must correspond to public webpages, i.e., they must
        # be indexed by Google Search. In particular, URLs for showing documents in
        # Google Cloud Storage (i.e. the URL in your browser) are not supported.
        # Instead use the `gs://` format URI described above.
    "enableAutoReload": True or False, # Optional. If true, we try to automatically reload the document every day
        # (at a time picked by the system). If false or unspecified, we don't try
        # to automatically reload the document.
        # 
        # Currently you can only enable automatic reload for documents sourced from
        # a public url, see `source` field for the source types.
        # 
        # Reload status can be tracked in `latest_reload_status`. If a reload
        # fails, we will keep the document unchanged.
        # 
        # If a reload fails with internal errors, the system will try to reload the
        # document on the next day.
        # If a reload fails with non-retriable errors (e.g. PERMISION_DENIED), the
        # system will not try to reload the document anymore. You need to manually
        # reload the document successfully by calling `ReloadDocument` and clear the
        # errors.
    "latestReloadStatus": { # The status of a reload attempt. # Output only. The time and status of the latest reload.
        # This reload may have been triggered automatically or manually
        # and may not have succeeded.
      "status": { # The `Status` type defines a logical error model that is suitable for # Output only. The status of a reload attempt or the initial load.
          # different programming environments, including REST APIs and RPC APIs. It is
          # used by [gRPC](https://github.com/grpc). Each `Status` message contains
          # three pieces of data: error code, error message, and error details.
          #
          # You can find out more about this error model and how to work with it in the
          # [API Design Guide](https://cloud.google.com/apis/design/errors).
        "details": [ # A list of messages that carry the error details.  There is a common set of
            # message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "message": "A String", # A developer-facing error message, which should be in English. Any
            # user-facing error message should be localized and sent in the
            # google.rpc.Status.details field, or localized by the client.
      },
      "time": "A String", # Output only. The time of a reload attempt.
          # This reload may have been triggered automatically or manually and may
          # not have succeeded.
    },
    "name": "A String", # Optional. The document resource name.
        # The name must be empty when creating a document.
        # Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base
        # ID>/documents/<Document ID>`.
  }

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a
      # network API call.
    "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.
    "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}`.
    "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
        # three pieces of data: error code, error message, and error details.
        #
        # You can find out more about this error model and how to work with it in the
        # [API Design Guide](https://cloud.google.com/apis/design/errors).
      "details": [ # A list of messages that carry the error details.  There is a common set of
          # message types for APIs to use.
        {
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
      ],
      "code": 42, # The status code, which should be an enum value of google.rpc.Code.
      "message": "A String", # A developer-facing error message, which should be in English. Any
          # user-facing error message should be localized and sent in the
          # google.rpc.Status.details field, or localized by the client.
    },
  }
delete(name, x__xgafv=None)
Deletes the specified document.

Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
only use `projects.knowledgeBases.documents`.

Args:
  name: string, Required. The name of the document to delete.
Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base
ID>/documents/<Document ID>`. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a
      # network API call.
    "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.
    "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}`.
    "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
        # three pieces of data: error code, error message, and error details.
        #
        # You can find out more about this error model and how to work with it in the
        # [API Design Guide](https://cloud.google.com/apis/design/errors).
      "details": [ # A list of messages that carry the error details.  There is a common set of
          # message types for APIs to use.
        {
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
      ],
      "code": 42, # The status code, which should be an enum value of google.rpc.Code.
      "message": "A String", # A developer-facing error message, which should be in English. Any
          # user-facing error message should be localized and sent in the
          # google.rpc.Status.details field, or localized by the client.
    },
  }
get(name, x__xgafv=None)
Retrieves the specified document.

Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
only use `projects.knowledgeBases.documents`.

Args:
  name: string, Required. The name of the document to retrieve.
Format `projects/<Project ID>/knowledgeBases/<Knowledge Base
ID>/documents/<Document ID>`. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A document resource.
        #
        # Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
        # only use `projects.knowledgeBases.documents`.
      "content": "A String", # The raw content of the document. This field is only permitted for
          # EXTRACTIVE_QA and FAQ knowledge types.
          # Note: This field is in the process of being deprecated, please use
          # raw_content instead.
      "mimeType": "A String", # Required. The MIME type of this document.
      "knowledgeTypes": [ # Required. The knowledge type of document content.
        "A String",
      ],
      "displayName": "A String", # Required. The display name of the document. The name must be 1024 bytes or
          # less; otherwise, the creation request fails.
      "rawContent": "A String", # The raw content of the document. This field is only permitted for
          # EXTRACTIVE_QA and FAQ knowledge types.
      "contentUri": "A String", # The URI where the file content is located.
          #
          # For documents stored in Google Cloud Storage, these URIs must have
          # the form `gs://<bucket-name>/<object-name>`.
          #
          # NOTE: External URLs must correspond to public webpages, i.e., they must
          # be indexed by Google Search. In particular, URLs for showing documents in
          # Google Cloud Storage (i.e. the URL in your browser) are not supported.
          # Instead use the `gs://` format URI described above.
      "enableAutoReload": True or False, # Optional. If true, we try to automatically reload the document every day
          # (at a time picked by the system). If false or unspecified, we don't try
          # to automatically reload the document.
          #
          # Currently you can only enable automatic reload for documents sourced from
          # a public url, see `source` field for the source types.
          #
          # Reload status can be tracked in `latest_reload_status`. If a reload
          # fails, we will keep the document unchanged.
          #
          # If a reload fails with internal errors, the system will try to reload the
          # document on the next day.
          # If a reload fails with non-retriable errors (e.g. PERMISION_DENIED), the
          # system will not try to reload the document anymore. You need to manually
          # reload the document successfully by calling `ReloadDocument` and clear the
          # errors.
      "latestReloadStatus": { # The status of a reload attempt. # Output only. The time and status of the latest reload.
          # This reload may have been triggered automatically or manually
          # and may not have succeeded.
        "status": { # The `Status` type defines a logical error model that is suitable for # Output only. The status of a reload attempt or the initial load.
            # different programming environments, including REST APIs and RPC APIs. It is
            # used by [gRPC](https://github.com/grpc). Each `Status` message contains
            # three pieces of data: error code, error message, and error details.
            #
            # You can find out more about this error model and how to work with it in the
            # [API Design Guide](https://cloud.google.com/apis/design/errors).
          "details": [ # A list of messages that carry the error details.  There is a common set of
              # message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @type with type URL.
            },
          ],
          "code": 42, # The status code, which should be an enum value of google.rpc.Code.
          "message": "A String", # A developer-facing error message, which should be in English. Any
              # user-facing error message should be localized and sent in the
              # google.rpc.Status.details field, or localized by the client.
        },
        "time": "A String", # Output only. The time of a reload attempt.
            # This reload may have been triggered automatically or manually and may
            # not have succeeded.
      },
      "name": "A String", # Optional. The document resource name.
          # The name must be empty when creating a document.
          # Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base
          # ID>/documents/<Document ID>`.
    }
list(parent, pageToken=None, pageSize=None, x__xgafv=None)
Returns the list of all documents of the knowledge base.

Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
only use `projects.knowledgeBases.documents`.

Args:
  parent: string, Required. The knowledge base to list all documents for.
Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base ID>`. (required)
  pageToken: string, Optional. The next_page_token value returned from a previous list request.
  pageSize: integer, Optional. The maximum number of items to return in a single page. By
default 10 and at most 100.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response message for Documents.ListDocuments.
    "documents": [ # The list of documents.
      { # A document resource.
            #
            # Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
            # only use `projects.knowledgeBases.documents`.
          "content": "A String", # The raw content of the document. This field is only permitted for
              # EXTRACTIVE_QA and FAQ knowledge types.
              # Note: This field is in the process of being deprecated, please use
              # raw_content instead.
          "mimeType": "A String", # Required. The MIME type of this document.
          "knowledgeTypes": [ # Required. The knowledge type of document content.
            "A String",
          ],
          "displayName": "A String", # Required. The display name of the document. The name must be 1024 bytes or
              # less; otherwise, the creation request fails.
          "rawContent": "A String", # The raw content of the document. This field is only permitted for
              # EXTRACTIVE_QA and FAQ knowledge types.
          "contentUri": "A String", # The URI where the file content is located.
              #
              # For documents stored in Google Cloud Storage, these URIs must have
              # the form `gs://<bucket-name>/<object-name>`.
              #
              # NOTE: External URLs must correspond to public webpages, i.e., they must
              # be indexed by Google Search. In particular, URLs for showing documents in
              # Google Cloud Storage (i.e. the URL in your browser) are not supported.
              # Instead use the `gs://` format URI described above.
          "enableAutoReload": True or False, # Optional. If true, we try to automatically reload the document every day
              # (at a time picked by the system). If false or unspecified, we don't try
              # to automatically reload the document.
              #
              # Currently you can only enable automatic reload for documents sourced from
              # a public url, see `source` field for the source types.
              #
              # Reload status can be tracked in `latest_reload_status`. If a reload
              # fails, we will keep the document unchanged.
              #
              # If a reload fails with internal errors, the system will try to reload the
              # document on the next day.
              # If a reload fails with non-retriable errors (e.g. PERMISION_DENIED), the
              # system will not try to reload the document anymore. You need to manually
              # reload the document successfully by calling `ReloadDocument` and clear the
              # errors.
          "latestReloadStatus": { # The status of a reload attempt. # Output only. The time and status of the latest reload.
              # This reload may have been triggered automatically or manually
              # and may not have succeeded.
            "status": { # The `Status` type defines a logical error model that is suitable for # Output only. The status of a reload attempt or the initial load.
                # different programming environments, including REST APIs and RPC APIs. It is
                # used by [gRPC](https://github.com/grpc). Each `Status` message contains
                # three pieces of data: error code, error message, and error details.
                #
                # You can find out more about this error model and how to work with it in the
                # [API Design Guide](https://cloud.google.com/apis/design/errors).
              "details": [ # A list of messages that carry the error details.  There is a common set of
                  # message types for APIs to use.
                {
                  "a_key": "", # Properties of the object. Contains field @type with type URL.
                },
              ],
              "code": 42, # The status code, which should be an enum value of google.rpc.Code.
              "message": "A String", # A developer-facing error message, which should be in English. Any
                  # user-facing error message should be localized and sent in the
                  # google.rpc.Status.details field, or localized by the client.
            },
            "time": "A String", # Output only. The time of a reload attempt.
                # This reload may have been triggered automatically or manually and may
                # not have succeeded.
          },
          "name": "A String", # Optional. The document resource name.
              # The name must be empty when creating a document.
              # Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base
              # ID>/documents/<Document ID>`.
        },
    ],
    "nextPageToken": "A String", # Token to retrieve the next page of results, or empty if there are no
        # more results in the list.
  }
list_next(previous_request, previous_response)
Retrieves the next page of results.

Args:
  previous_request: The request for the previous page. (required)
  previous_response: The response from the request for the previous page. (required)

Returns:
  A request object that you can call 'execute()' on to request the next
  page. Returns None if there are no more items in the collection.
    
patch(name, body=None, updateMask=None, x__xgafv=None)
Updates the specified document.

Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
only use `projects.knowledgeBases.documents`.

Args:
  name: string, Optional. The document resource name.
The name must be empty when creating a document.
Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base
ID>/documents/<Document ID>`. (required)
  body: object, The request body.
    The object takes the form of:

{ # A document resource.
      # 
      # Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
      # only use `projects.knowledgeBases.documents`.
    "content": "A String", # The raw content of the document. This field is only permitted for
        # EXTRACTIVE_QA and FAQ knowledge types.
        # Note: This field is in the process of being deprecated, please use
        # raw_content instead.
    "mimeType": "A String", # Required. The MIME type of this document.
    "knowledgeTypes": [ # Required. The knowledge type of document content.
      "A String",
    ],
    "displayName": "A String", # Required. The display name of the document. The name must be 1024 bytes or
        # less; otherwise, the creation request fails.
    "rawContent": "A String", # The raw content of the document. This field is only permitted for
        # EXTRACTIVE_QA and FAQ knowledge types.
    "contentUri": "A String", # The URI where the file content is located.
        # 
        # For documents stored in Google Cloud Storage, these URIs must have
        # the form `gs://<bucket-name>/<object-name>`.
        # 
        # NOTE: External URLs must correspond to public webpages, i.e., they must
        # be indexed by Google Search. In particular, URLs for showing documents in
        # Google Cloud Storage (i.e. the URL in your browser) are not supported.
        # Instead use the `gs://` format URI described above.
    "enableAutoReload": True or False, # Optional. If true, we try to automatically reload the document every day
        # (at a time picked by the system). If false or unspecified, we don't try
        # to automatically reload the document.
        # 
        # Currently you can only enable automatic reload for documents sourced from
        # a public url, see `source` field for the source types.
        # 
        # Reload status can be tracked in `latest_reload_status`. If a reload
        # fails, we will keep the document unchanged.
        # 
        # If a reload fails with internal errors, the system will try to reload the
        # document on the next day.
        # If a reload fails with non-retriable errors (e.g. PERMISION_DENIED), the
        # system will not try to reload the document anymore. You need to manually
        # reload the document successfully by calling `ReloadDocument` and clear the
        # errors.
    "latestReloadStatus": { # The status of a reload attempt. # Output only. The time and status of the latest reload.
        # This reload may have been triggered automatically or manually
        # and may not have succeeded.
      "status": { # The `Status` type defines a logical error model that is suitable for # Output only. The status of a reload attempt or the initial load.
          # different programming environments, including REST APIs and RPC APIs. It is
          # used by [gRPC](https://github.com/grpc). Each `Status` message contains
          # three pieces of data: error code, error message, and error details.
          #
          # You can find out more about this error model and how to work with it in the
          # [API Design Guide](https://cloud.google.com/apis/design/errors).
        "details": [ # A list of messages that carry the error details.  There is a common set of
            # message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "message": "A String", # A developer-facing error message, which should be in English. Any
            # user-facing error message should be localized and sent in the
            # google.rpc.Status.details field, or localized by the client.
      },
      "time": "A String", # Output only. The time of a reload attempt.
          # This reload may have been triggered automatically or manually and may
          # not have succeeded.
    },
    "name": "A String", # Optional. The document resource name.
        # The name must be empty when creating a document.
        # Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base
        # ID>/documents/<Document ID>`.
  }

  updateMask: string, Optional. Not specified means `update all`.
Currently, only `display_name` can be updated, an InvalidArgument will be
returned for attempting to update other fields.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a
      # network API call.
    "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.
    "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}`.
    "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
        # three pieces of data: error code, error message, and error details.
        #
        # You can find out more about this error model and how to work with it in the
        # [API Design Guide](https://cloud.google.com/apis/design/errors).
      "details": [ # A list of messages that carry the error details.  There is a common set of
          # message types for APIs to use.
        {
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
      ],
      "code": 42, # The status code, which should be an enum value of google.rpc.Code.
      "message": "A String", # A developer-facing error message, which should be in English. Any
          # user-facing error message should be localized and sent in the
          # google.rpc.Status.details field, or localized by the client.
    },
  }
reload(name, body=None, x__xgafv=None)
Reloads the specified document from its specified source, content_uri or
content. The previously loaded content of the document will be deleted.
Note: Even when the content of the document has not changed, there still
may be side effects because of internal implementation changes.

Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
only use `projects.knowledgeBases.documents`.

Args:
  name: string, Required. The name of the document to reload.
Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base
ID>/documents/<Document ID>` (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for Documents.ReloadDocument.
    "gcsSource": { # Google Cloud Storage location for single input. # Optional. The path for a Cloud Storage source file for reloading document content.
        # If not provided, the Document's existing source will be reloaded.
      "uri": "A String", # Required. The Google Cloud Storage URIs for the inputs. A URI is of the
          # form:
          #   gs://bucket/object-prefix-or-name
          # Whether a prefix or name is used depends on the use case.
    },
  }

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a
      # network API call.
    "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.
    "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}`.
    "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
        # three pieces of data: error code, error message, and error details.
        #
        # You can find out more about this error model and how to work with it in the
        # [API Design Guide](https://cloud.google.com/apis/design/errors).
      "details": [ # A list of messages that carry the error details.  There is a common set of
          # message types for APIs to use.
        {
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
      ],
      "code": 42, # The status code, which should be an enum value of google.rpc.Code.
      "message": "A String", # A developer-facing error message, which should be in English. Any
          # user-facing error message should be localized and sent in the
          # google.rpc.Status.details field, or localized by the client.
    },
  }