updateScheduledAudit method

Future<UpdateScheduledAuditResponse> updateScheduledAudit({
  1. required String scheduledAuditName,
  2. String? dayOfMonth,
  3. DayOfWeek? dayOfWeek,
  4. AuditFrequency? frequency,
  5. List<String>? targetCheckNames,
})

Updates a scheduled audit, including which checks are performed and how often the audit takes place.

May throw InvalidRequestException. May throw ResourceNotFoundException. May throw ThrottlingException. May throw InternalFailureException.

Parameter scheduledAuditName : The name of the scheduled audit. (Max. 128 chars)

Parameter dayOfMonth : The day of the month on which the scheduled audit takes place. This can be 1 through 31 or LAST. This field is required if the frequency parameter is set to MONTHLY. If days 29-31 are specified, and the month does not have that many days, the audit takes place on the "LAST" day of the month.

Parameter dayOfWeek : The day of the week on which the scheduled audit takes place. This can be one of SUN, MON, TUE, WED, THU, FRI, or SAT. This field is required if the "frequency" parameter is set to WEEKLY or BIWEEKLY.

Parameter frequency : How often the scheduled audit takes place, either DAILY, WEEKLY, BIWEEKLY, or MONTHLY. The start time of each audit is determined by the system.

Parameter targetCheckNames : Which checks are performed during the scheduled audit. Checks must be enabled for your account. (Use DescribeAccountAuditConfiguration to see the list of all checks, including those that are enabled or use UpdateAccountAuditConfiguration to select which checks are enabled.)

Implementation

Future<UpdateScheduledAuditResponse> updateScheduledAudit({
  required String scheduledAuditName,
  String? dayOfMonth,
  DayOfWeek? dayOfWeek,
  AuditFrequency? frequency,
  List<String>? targetCheckNames,
}) async {
  ArgumentError.checkNotNull(scheduledAuditName, 'scheduledAuditName');
  _s.validateStringLength(
    'scheduledAuditName',
    scheduledAuditName,
    1,
    128,
    isRequired: true,
  );
  final $payload = <String, dynamic>{
    if (dayOfMonth != null) 'dayOfMonth': dayOfMonth,
    if (dayOfWeek != null) 'dayOfWeek': dayOfWeek.toValue(),
    if (frequency != null) 'frequency': frequency.toValue(),
    if (targetCheckNames != null) 'targetCheckNames': targetCheckNames,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'PATCH',
    requestUri:
        '/audit/scheduledaudits/${Uri.encodeComponent(scheduledAuditName)}',
    exceptionFnMap: _exceptionFns,
  );
  return UpdateScheduledAuditResponse.fromJson(response);
}