create(parent, body=None, x__xgafv=None)
Creates a model in Firebase ML.
Deletes a model
Gets a model resource.
list(parent, pageToken=None, filter=None, pageSize=None, x__xgafv=None)
Lists the models
list_next(previous_request, previous_response)
Retrieves the next page of results.
patch(name, body=None, updateMask=None, x__xgafv=None)
Updates a model. The longrunning operation will eventually return a Model.
create(parent, body=None, x__xgafv=None)
Creates a model in Firebase ML.
The longrunning operation will eventually return a Model
Args:
parent: string, Required. The parent project resource where the model is to be created.
The parent must have the form `projects/{project_id}` (required)
body: object, The request body.
The object takes the form of:
{ # An ML model hosted in Firebase ML
"name": "A String", # The resource name of the Model.
# Model names have the form `projects/{project_id}/models/{model_id}`
# The name is ignored when creating a model.
"modelHash": "A String", # Output only. The model_hash will change if a new file is available for download.
"displayName": "A String", # Required. The name of the model to create. The name can be up to 32 characters long
# and can consist only of ASCII Latin letters A-Z and a-z, underscores(_)
# and ASCII digits 0-9. It must start with a letter.
"tags": [ # User defined tags which can be used to group/filter models during listing
"A String",
],
"createTime": "A String", # Output only. Timestamp when this model was created in Firebase ML.
"activeOperations": [ # Output only. Lists operation ids associated with this model whose status is NOT done.
{ # This resource represents a long-running operation that is the result of a
# network API call.
"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.
},
"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).
"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.
"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.
},
],
},
"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}`.
"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.
},
},
],
"updateTime": "A String", # Output only. Timestamp when this model was updated in Firebase ML.
"state": { # State common to all model types. # State common to all model types.
# Includes publishing and validation information.
# Includes publishing and validation information.
"validationError": { # The `Status` type defines a logical error model that is suitable for # Output only. Indicates the latest validation error on the model if any.
# A model may have validation errors if there were problems during
# the model creation/update.
# e.g. in the case of a TfLiteModel, if a tflite model file was
# missing or in the wrong format.
# This field will be empty for valid models.
# 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).
"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.
"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.
},
],
},
"published": True or False, # Indicates if this model has been published.
},
"tfliteModel": { # Information that is specific to TfLite models. # A TFLite Model
"sizeBytes": "A String", # Output only. The size of the TFLite model
"gcsTfliteUri": "A String", # The TfLite file containing the model. (Stored in Google Cloud).
# The gcs_tflite_uri should have form: gs://some-bucket/some-model.tflite
# Note: If you update the file in the original location, it is
# necessary to call UpdateModel for ML to pick up and validate the
# updated file.
},
"etag": "A String", # Output only. See RFC7232
# https://tools.ietf.org/html/rfc7232#section-2.3
}
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.
"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.
},
"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).
"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.
"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.
},
],
},
"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}`.
"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.
},
}
delete(name, x__xgafv=None)
Deletes a model
Args:
name: string, Required. The name of the model to delete.
The name must have the form `projects/{project_id}/models/{model_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 generic empty message that you can re-use to avoid defining duplicated
# empty messages in your APIs. A typical example is to use it as the request
# or the response type of an API method. For instance:
#
# service Foo {
# rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
# }
#
# The JSON representation for `Empty` is empty JSON object `{}`.
}
get(name, x__xgafv=None)
Gets a model resource.
Args:
name: string, Required. The name of the model to get.
The name must have the form `projects/{project_id}/models/{model_id}` (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # An ML model hosted in Firebase ML
"name": "A String", # The resource name of the Model.
# Model names have the form `projects/{project_id}/models/{model_id}`
# The name is ignored when creating a model.
"modelHash": "A String", # Output only. The model_hash will change if a new file is available for download.
"displayName": "A String", # Required. The name of the model to create. The name can be up to 32 characters long
# and can consist only of ASCII Latin letters A-Z and a-z, underscores(_)
# and ASCII digits 0-9. It must start with a letter.
"tags": [ # User defined tags which can be used to group/filter models during listing
"A String",
],
"createTime": "A String", # Output only. Timestamp when this model was created in Firebase ML.
"activeOperations": [ # Output only. Lists operation ids associated with this model whose status is NOT done.
{ # This resource represents a long-running operation that is the result of a
# network API call.
"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.
},
"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).
"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.
"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.
},
],
},
"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}`.
"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.
},
},
],
"updateTime": "A String", # Output only. Timestamp when this model was updated in Firebase ML.
"state": { # State common to all model types. # State common to all model types.
# Includes publishing and validation information.
# Includes publishing and validation information.
"validationError": { # The `Status` type defines a logical error model that is suitable for # Output only. Indicates the latest validation error on the model if any.
# A model may have validation errors if there were problems during
# the model creation/update.
# e.g. in the case of a TfLiteModel, if a tflite model file was
# missing or in the wrong format.
# This field will be empty for valid models.
# 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).
"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.
"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.
},
],
},
"published": True or False, # Indicates if this model has been published.
},
"tfliteModel": { # Information that is specific to TfLite models. # A TFLite Model
"sizeBytes": "A String", # Output only. The size of the TFLite model
"gcsTfliteUri": "A String", # The TfLite file containing the model. (Stored in Google Cloud).
# The gcs_tflite_uri should have form: gs://some-bucket/some-model.tflite
# Note: If you update the file in the original location, it is
# necessary to call UpdateModel for ML to pick up and validate the
# updated file.
},
"etag": "A String", # Output only. See RFC7232
# https://tools.ietf.org/html/rfc7232#section-2.3
}
list(parent, pageToken=None, filter=None, pageSize=None, x__xgafv=None)
Lists the models
Args:
parent: string, Required. The name of the parent to list models for.
The parent must have the form `projects/{project_id}' (required)
pageToken: string, The next_page_token value returned from a previous List request, if any.
filter: string, A filter for the list
e.g. 'tags: abc' to list models which are tagged with "abc"
pageSize: integer, The maximum number of items to return
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # The response for list models
"models": [ # The list of models
{ # An ML model hosted in Firebase ML
"name": "A String", # The resource name of the Model.
# Model names have the form `projects/{project_id}/models/{model_id}`
# The name is ignored when creating a model.
"modelHash": "A String", # Output only. The model_hash will change if a new file is available for download.
"displayName": "A String", # Required. The name of the model to create. The name can be up to 32 characters long
# and can consist only of ASCII Latin letters A-Z and a-z, underscores(_)
# and ASCII digits 0-9. It must start with a letter.
"tags": [ # User defined tags which can be used to group/filter models during listing
"A String",
],
"createTime": "A String", # Output only. Timestamp when this model was created in Firebase ML.
"activeOperations": [ # Output only. Lists operation ids associated with this model whose status is NOT done.
{ # This resource represents a long-running operation that is the result of a
# network API call.
"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.
},
"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).
"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.
"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.
},
],
},
"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}`.
"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.
},
},
],
"updateTime": "A String", # Output only. Timestamp when this model was updated in Firebase ML.
"state": { # State common to all model types. # State common to all model types.
# Includes publishing and validation information.
# Includes publishing and validation information.
"validationError": { # The `Status` type defines a logical error model that is suitable for # Output only. Indicates the latest validation error on the model if any.
# A model may have validation errors if there were problems during
# the model creation/update.
# e.g. in the case of a TfLiteModel, if a tflite model file was
# missing or in the wrong format.
# This field will be empty for valid models.
# 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).
"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.
"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.
},
],
},
"published": True or False, # Indicates if this model has been published.
},
"tfliteModel": { # Information that is specific to TfLite models. # A TFLite Model
"sizeBytes": "A String", # Output only. The size of the TFLite model
"gcsTfliteUri": "A String", # The TfLite file containing the model. (Stored in Google Cloud).
# The gcs_tflite_uri should have form: gs://some-bucket/some-model.tflite
# Note: If you update the file in the original location, it is
# necessary to call UpdateModel for ML to pick up and validate the
# updated file.
},
"etag": "A String", # Output only. See RFC7232
# https://tools.ietf.org/html/rfc7232#section-2.3
},
],
"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 a model. The longrunning operation will eventually return a Model.
Args:
name: string, The resource name of the Model.
Model names have the form `projects/{project_id}/models/{model_id}`
The name is ignored when creating a model. (required)
body: object, The request body.
The object takes the form of:
{ # An ML model hosted in Firebase ML
"name": "A String", # The resource name of the Model.
# Model names have the form `projects/{project_id}/models/{model_id}`
# The name is ignored when creating a model.
"modelHash": "A String", # Output only. The model_hash will change if a new file is available for download.
"displayName": "A String", # Required. The name of the model to create. The name can be up to 32 characters long
# and can consist only of ASCII Latin letters A-Z and a-z, underscores(_)
# and ASCII digits 0-9. It must start with a letter.
"tags": [ # User defined tags which can be used to group/filter models during listing
"A String",
],
"createTime": "A String", # Output only. Timestamp when this model was created in Firebase ML.
"activeOperations": [ # Output only. Lists operation ids associated with this model whose status is NOT done.
{ # This resource represents a long-running operation that is the result of a
# network API call.
"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.
},
"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).
"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.
"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.
},
],
},
"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}`.
"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.
},
},
],
"updateTime": "A String", # Output only. Timestamp when this model was updated in Firebase ML.
"state": { # State common to all model types. # State common to all model types.
# Includes publishing and validation information.
# Includes publishing and validation information.
"validationError": { # The `Status` type defines a logical error model that is suitable for # Output only. Indicates the latest validation error on the model if any.
# A model may have validation errors if there were problems during
# the model creation/update.
# e.g. in the case of a TfLiteModel, if a tflite model file was
# missing or in the wrong format.
# This field will be empty for valid models.
# 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).
"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.
"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.
},
],
},
"published": True or False, # Indicates if this model has been published.
},
"tfliteModel": { # Information that is specific to TfLite models. # A TFLite Model
"sizeBytes": "A String", # Output only. The size of the TFLite model
"gcsTfliteUri": "A String", # The TfLite file containing the model. (Stored in Google Cloud).
# The gcs_tflite_uri should have form: gs://some-bucket/some-model.tflite
# Note: If you update the file in the original location, it is
# necessary to call UpdateModel for ML to pick up and validate the
# updated file.
},
"etag": "A String", # Output only. See RFC7232
# https://tools.ietf.org/html/rfc7232#section-2.3
}
updateMask: string, The update mask
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.
"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.
},
"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).
"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.
"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.
},
],
},
"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}`.
"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.
},
}