invokeDataAutomationAsync method

Future<InvokeDataAutomationAsyncResponse> invokeDataAutomationAsync({
  1. required String dataAutomationProfileArn,
  2. required InputConfiguration inputConfiguration,
  3. required OutputConfiguration outputConfiguration,
  4. List<Blueprint>? blueprints,
  5. String? clientToken,
  6. DataAutomationConfiguration? dataAutomationConfiguration,
  7. EncryptionConfiguration? encryptionConfiguration,
  8. NotificationConfiguration? notificationConfiguration,
  9. List<Tag>? tags,
})

Async API: Invoke data automation.

May throw AccessDeniedException. May throw InternalServerException. May throw ServiceQuotaExceededException. May throw ThrottlingException. May throw ValidationException.

Parameter dataAutomationProfileArn : Data automation profile ARN

Parameter inputConfiguration : Input configuration.

Parameter outputConfiguration : Output configuration.

Parameter blueprints : Blueprint list.

Parameter clientToken : Idempotency token.

Parameter dataAutomationConfiguration : Data automation configuration.

Parameter encryptionConfiguration : Encryption configuration.

Parameter notificationConfiguration : Notification configuration.

Parameter tags : List of tags.

Implementation

Future<InvokeDataAutomationAsyncResponse> invokeDataAutomationAsync({
  required String dataAutomationProfileArn,
  required InputConfiguration inputConfiguration,
  required OutputConfiguration outputConfiguration,
  List<Blueprint>? blueprints,
  String? clientToken,
  DataAutomationConfiguration? dataAutomationConfiguration,
  EncryptionConfiguration? encryptionConfiguration,
  NotificationConfiguration? notificationConfiguration,
  List<Tag>? tags,
}) async {
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target':
        'AmazonBedrockKeystoneRuntimeService.InvokeDataAutomationAsync'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'dataAutomationProfileArn': dataAutomationProfileArn,
      'inputConfiguration': inputConfiguration,
      'outputConfiguration': outputConfiguration,
      if (blueprints != null) 'blueprints': blueprints,
      'clientToken': clientToken ?? _s.generateIdempotencyToken(),
      if (dataAutomationConfiguration != null)
        'dataAutomationConfiguration': dataAutomationConfiguration,
      if (encryptionConfiguration != null)
        'encryptionConfiguration': encryptionConfiguration,
      if (notificationConfiguration != null)
        'notificationConfiguration': notificationConfiguration,
      if (tags != null) 'tags': tags,
    },
  );

  return InvokeDataAutomationAsyncResponse.fromJson(jsonResponse.body);
}