createIdMappingWorkflow method

Future<CreateIdMappingWorkflowOutput> createIdMappingWorkflow({
  1. required IdMappingTechniques idMappingTechniques,
  2. required List<IdMappingWorkflowInputSource> inputSourceConfig,
  3. required String workflowName,
  4. String? description,
  5. IdMappingIncrementalRunConfig? incrementalRunConfig,
  6. List<IdMappingWorkflowOutputSource>? outputSourceConfig,
  7. String? roleArn,
  8. Map<String, String>? tags,
})

Creates an IdMappingWorkflow object which stores the configuration of the data processing job to be run. Each IdMappingWorkflow must have a unique workflow name. To modify an existing workflow, use the UpdateIdMappingWorkflow API.

May throw AccessDeniedException. May throw ConflictException. May throw ExceedsLimitException. May throw InternalServerException. May throw ThrottlingException. May throw ValidationException.

Parameter idMappingTechniques : An object which defines the ID mapping technique and any additional configurations.

Parameter inputSourceConfig : A list of InputSource objects, which have the fields InputSourceARN and SchemaName.

Parameter workflowName : The name of the workflow. There can't be multiple IdMappingWorkflows with the same name.

Parameter description : A description of the workflow.

Parameter incrementalRunConfig : The incremental run configuration for the ID mapping workflow.

Parameter outputSourceConfig : A list of IdMappingWorkflowOutputSource objects, each of which contains fields outputS3Path and KMSArn.

Parameter roleArn : The Amazon Resource Name (ARN) of the IAM role. Entity Resolution assumes this role to create resources on your behalf as part of workflow execution.

Parameter tags : The tags used to organize, track, or control access for this resource.

Implementation

Future<CreateIdMappingWorkflowOutput> createIdMappingWorkflow({
  required IdMappingTechniques idMappingTechniques,
  required List<IdMappingWorkflowInputSource> inputSourceConfig,
  required String workflowName,
  String? description,
  IdMappingIncrementalRunConfig? incrementalRunConfig,
  List<IdMappingWorkflowOutputSource>? outputSourceConfig,
  String? roleArn,
  Map<String, String>? tags,
}) async {
  final $payload = <String, dynamic>{
    'idMappingTechniques': idMappingTechniques,
    'inputSourceConfig': inputSourceConfig,
    'workflowName': workflowName,
    if (description != null) 'description': description,
    if (incrementalRunConfig != null)
      'incrementalRunConfig': incrementalRunConfig,
    if (outputSourceConfig != null) 'outputSourceConfig': outputSourceConfig,
    if (roleArn != null) 'roleArn': roleArn,
    if (tags != null) 'tags': tags,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/idmappingworkflows',
    exceptionFnMap: _exceptionFns,
  );
  return CreateIdMappingWorkflowOutput.fromJson(response);
}