enrollResource method

Future<Enrollment> enrollResource(
  1. EnrollResourceRequest request,
  2. String scope, {
  3. String? $fields,
})

Adds your project, folder, or organization to Audit Manager.

This method creates the Audit Manager service agent in your workload and grants required permissions to the service agent. If you make this request on a workload that's already enrolled, then this method overrides the existing set of destinations.

request - The metadata request object.

Request parameters:

scope - Required. Organization, folder, or project to enroll in Audit Manager, in one of the following formats: * projects/{project}/locations/{location} * folders/{folder}/locations/{location} * organizations/{organization}/locations/{location} Value must have pattern ^projects/\[^/\]+/locations/\[^/\]+$.

$fields - Selector specifying which fields to include in a partial response.

Completes with a Enrollment.

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<Enrollment> enrollResource(
  EnrollResourceRequest request,
  core.String scope, {
  core.String? $fields,
}) async {
  final body_ = convert.json.encode(request);
  final queryParams_ = <core.String, core.List<core.String>>{
    'fields': ?$fields == null ? null : [$fields],
  };

  final url_ = 'v1/' + core.Uri.encodeFull('$scope') + ':enrollResource';

  final response_ = await _requester.request(
    url_,
    'POST',
    body: body_,
    queryParams: queryParams_,
  );
  return Enrollment.fromJson(
    response_ as core.Map<core.String, core.dynamic>,
  );
}