create method
Creates a new Datastore resource in a given project and location.
Datastores are regional resources
request - The metadata request object.
Request parameters:
parent - Required. The resource name of the location to create the new
datastore in. Resource names are schemeless URIs that follow the
conventions in https://cloud.google.com/apis/design/resource_names. For
example: projects/my-project/locations/us-central1
Value must have pattern ^projects/\[^/\]+/locations/\[^/\]+$.
datastoreId - Required. The user-provided identifier of the datastore to
be created. This identifier must be unique among each Datastore within
the parent and becomes the final token in the name URI. The identifier
must meet the following requirements: * Only contains 1-63 alphanumeric
characters and hyphens * Begins with an alphabetical character * Ends with
a non-hyphen character * Not formatted as a UUID * Complies with
RFC 1034 (section 3.5)
requestId - Optional. The request ID must be a valid UUID with the
exception that zero UUID is not supported
(00000000-0000-0000-0000-000000000000).
$fields - Selector specifying which fields to include in a partial
response.
Completes with a Operation.
Completes with a commons.ApiRequestError if the API endpoint returned an error.
If the used http.Client completes with an error when making a REST call,
this method will complete with the same error.
Implementation
async.Future<Operation> create(
Datastore request,
core.String parent, {
core.String? datastoreId,
core.String? requestId,
core.String? $fields,
}) async {
final body_ = convert.json.encode(request);
final queryParams_ = <core.String, core.List<core.String>>{
'datastoreId': ?datastoreId == null ? null : [datastoreId],
'requestId': ?requestId == null ? null : [requestId],
'fields': ?$fields == null ? null : [$fields],
};
final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/datastores';
final response_ = await _requester.request(
url_,
'POST',
body: body_,
queryParams: queryParams_,
);
return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>);
}