create method
Request that a new Project be created.
The result is an Operation which can be used to track the creation
process. This process usually takes a few seconds, but can sometimes take
much longer. The tracking Operation is automatically deleted after a few
hours, so there is no need to call DeleteOperation. Authorization requires
the Google IAM permission resourcemanager.projects.create
on the
specified parent for the new project. The parent is identified by a
specified ResourceId, which must include both an ID and a type, such as
organization. This method does not associate the new project with a
billing account. You can set or update the billing account associated with
a project using the [projects.updateBillingInfo
]
(/billing/reference/rest/v1/projects/updateBillingInfo) method.
request
- The metadata request object.
Request parameters:
$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(
Project request, {
core.String? $fields,
}) async {
final body_ = convert.json.encode(request);
final queryParams_ = <core.String, core.List<core.String>>{
if ($fields != null) 'fields': [$fields],
};
const url_ = 'v1/projects';
final response_ = await _requester.request(
url_,
'POST',
body: body_,
queryParams: queryParams_,
);
return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>);
}