redact method

Redacts potentially sensitive info from an image.

This method has limits on input size, processing time, and output size. See https://cloud.google.com/sensitive-data-protection/docs/redacting-sensitive-data-images to learn more. When no InfoTypes or CustomInfoTypes are specified in this request, the system will automatically choose what detectors to run. By default this may be all types, but may change over time as detectors are updated.

request - The metadata request object.

Request parameters:

parent - Parent resource name. The format of this value varies depending on whether you have specified a processing location:

  • Projects scope, location specified: projects/PROJECT_ID/locations/LOCATION_ID + Projects scope, no location specified (defaults to global): projects/PROJECT_ID The following example parent string specifies a parent project with the identifier example-project, and specifies the europe-west3 location for processing data: parent=projects/example-project/locations/europe-west3 Value must have pattern ^projects/\[^/\]+/locations/\[^/\]+$.

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

Completes with a GooglePrivacyDlpV2RedactImageResponse.

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<GooglePrivacyDlpV2RedactImageResponse> redact(
  GooglePrivacyDlpV2RedactImageRequest request,
  core.String parent, {
  core.String? $fields,
}) async {
  final body_ = convert.json.encode(request);
  final queryParams_ = <core.String, core.List<core.String>>{
    if ($fields != null) 'fields': [$fields],
  };

  final url_ = 'v2/' + core.Uri.encodeFull('$parent') + '/image:redact';

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