startIdMappingJob method

Future<StartIdMappingJobOutput> startIdMappingJob({
  1. required String workflowName,
  2. JobType? jobType,
  3. List<IdMappingJobOutputSource>? outputSourceConfig,
})

Starts the IdMappingJob of a workflow. The workflow must have previously been created using the CreateIdMappingWorkflow endpoint.

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

Parameter workflowName : The name of the ID mapping job to be retrieved.

Parameter jobType : The job type for the ID mapping job.

If the jobType value is set to INCREMENTAL, only new or changed data is processed since the last job run. This is the default value if the CreateIdMappingWorkflow API is configured with an incrementalRunConfig.

If the jobType value is set to BATCH, all data is processed from the input source, regardless of previous job runs. This is the default value if the CreateIdMappingWorkflow API isn't configured with an incrementalRunConfig.

If the jobType value is set to DELETE_ONLY, only deletion requests from BatchDeleteUniqueIds are processed.

Parameter outputSourceConfig : A list of OutputSource objects.

Implementation

Future<StartIdMappingJobOutput> startIdMappingJob({
  required String workflowName,
  JobType? jobType,
  List<IdMappingJobOutputSource>? outputSourceConfig,
}) async {
  final $payload = <String, dynamic>{
    if (jobType != null) 'jobType': jobType.value,
    if (outputSourceConfig != null) 'outputSourceConfig': outputSourceConfig,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri:
        '/idmappingworkflows/${Uri.encodeComponent(workflowName)}/jobs',
    exceptionFnMap: _exceptionFns,
  );
  return StartIdMappingJobOutput.fromJson(response);
}