createMatchingWorkflow method

Future<CreateMatchingWorkflowOutput> createMatchingWorkflow({
  1. required List<InputSource> inputSourceConfig,
  2. required List<OutputSource> outputSourceConfig,
  3. required ResolutionTechniques resolutionTechniques,
  4. required String roleArn,
  5. required String workflowName,
  6. String? description,
  7. IncrementalRunConfig? incrementalRunConfig,
  8. Map<String, String>? tags,
})

Creates a matching workflow that defines the configuration for a data processing job. The workflow name must be unique. To modify an existing workflow, use UpdateMatchingWorkflow.

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

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

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

Parameter resolutionTechniques : An object which defines the resolutionType and the ruleBasedProperties.

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 workflowName : The name of the workflow. There can't be multiple MatchingWorkflows with the same name.

Parameter description : A description of the workflow.

Parameter incrementalRunConfig : Optional. An object that defines the incremental run type. This object contains only the incrementalRunType field, which appears as "Automatic" in the console.

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

Implementation

Future<CreateMatchingWorkflowOutput> createMatchingWorkflow({
  required List<InputSource> inputSourceConfig,
  required List<OutputSource> outputSourceConfig,
  required ResolutionTechniques resolutionTechniques,
  required String roleArn,
  required String workflowName,
  String? description,
  IncrementalRunConfig? incrementalRunConfig,
  Map<String, String>? tags,
}) async {
  final $payload = <String, dynamic>{
    'inputSourceConfig': inputSourceConfig,
    'outputSourceConfig': outputSourceConfig,
    'resolutionTechniques': resolutionTechniques,
    'roleArn': roleArn,
    'workflowName': workflowName,
    if (description != null) 'description': description,
    if (incrementalRunConfig != null)
      'incrementalRunConfig': incrementalRunConfig,
    if (tags != null) 'tags': tags,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/matchingworkflows',
    exceptionFnMap: _exceptionFns,
  );
  return CreateMatchingWorkflowOutput.fromJson(response);
}