Skip to content

start_id_mapping_job

start_id_mapping_job(
    workflow_name: EntityNameOrIdMappingWorkflowArn,
    *,
    config_overrides: Optional[EntityResolutionClientConfig] = None,
    output_source_config: Optional[IdMappingJobOutputSourceConfig] = None,
    job_type: Optional[JobType] = None,
) -> StartIdMappingJobOutput

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

Parameters:

  • workflow_name (EntityNameOrIdMappingWorkflowArn) –

    The name of the ID mapping job to be retrieved.

  • output_source_config (Optional[IdMappingJobOutputSourceConfig], default: None ) –

    A list of OutputSource objects.

  • job_type (Optional[JobType], default: None ) –

    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.

Raises:

  • AccessDeniedException –

    You do not have sufficient access to perform this action.

  • ConflictException –

    The request couldn't be processed because of conflict in the current state of the resource. Example: Workflow already exists, Schema already exists, Workflow is currently running, etc.

  • ExceedsLimitException –

    The request was rejected because it attempted to create resources beyond the current Entity Resolution account limits. The error message describes the limit exceeded.

  • InternalServerException –

    This exception occurs when there is an internal failure in the Entity Resolution service.

  • ResourceNotFoundException –

    The resource couldn't be found.

  • ThrottlingException –

    The request was denied due to request throttling.

  • ValidationException –

    The input fails to satisfy the constraints specified by Entity Resolution.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Source code in docs_src/capo_entityresolution/_services/entity_resolution.py
def start_id_mapping_job(
    self,
    workflow_name: "capo_entityresolution.types.entity_name_or_id_mapping_workflow_arn.EntityNameOrIdMappingWorkflowArn",
    *,
    config_overrides: Optional[EntityResolutionClientConfig] = None,
    output_source_config: Optional[
        "capo_entityresolution.types.id_mapping_job_output_source_config.IdMappingJobOutputSourceConfig"
    ] = None,
    job_type: Optional["capo_entityresolution.types.job_type.JobType"] = None,
) -> "capo_entityresolution.types.start_id_mapping_job_output.StartIdMappingJobOutput":
    """<p>Starts the <code>IdMappingJob</code> of a workflow. The workflow must have previously been created using the <code>CreateIdMappingWorkflow</code> endpoint.</p>

    Args:
        workflow_name: <p>The name of the ID mapping job to be retrieved.</p>
        output_source_config: <p>A list of <code>OutputSource</code> objects.</p>
        job_type: <p> The job type for the ID mapping job.</p> <p>If the <code>jobType</code> value is set to <code>INCREMENTAL</code>, only new or changed data is processed since the last job run. This is the default value if the <code>CreateIdMappingWorkflow</code> API is configured with an <code>incrementalRunConfig</code>.</p> <p>If the <code>jobType</code> value is set to <code>BATCH</code>, all data is processed from the input source, regardless of previous job runs. This is the default value if the <code>CreateIdMappingWorkflow</code> API isn't configured with an <code>incrementalRunConfig</code>.</p> <p>If the <code>jobType</code> value is set to <code>DELETE_ONLY</code>, only deletion requests from <code>BatchDeleteUniqueIds</code> are processed.</p>

    Raises:
        capo_entityresolution.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action. </p>
        capo_entityresolution.errors.conflict_exception.ConflictException: <p>The request couldn't be processed because of conflict in the current state of the resource. Example: Workflow already exists, Schema already exists, Workflow is currently running, etc. </p>
        capo_entityresolution.errors.exceeds_limit_exception.ExceedsLimitException: <p>The request was rejected because it attempted to create resources beyond the current Entity Resolution account limits. The error message describes the limit exceeded. </p>
        capo_entityresolution.errors.internal_server_exception.InternalServerException: <p>This exception occurs when there is an internal failure in the Entity Resolution service. </p>
        capo_entityresolution.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource couldn't be found. </p>
        capo_entityresolution.errors.throttling_exception.ThrottlingException: <p>The request was denied due to request throttling. </p>
        capo_entityresolution.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints specified by Entity Resolution. </p>
        capo_entityresolution.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_entityresolution.types.start_id_mapping_job_input.StartIdMappingJobInput]",
    ) -> OperationResponse[
        "capo_entityresolution.types.start_id_mapping_job_output.StartIdMappingJobOutput"
    ]:
        import capo_entityresolution._operations.aws_venice_service.start_id_mapping_job

        output, http_response = (
            capo_entityresolution._operations.aws_venice_service.start_id_mapping_job.start_id_mapping_job(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("StartIdMappingJob")
    )
    input_: capo_entityresolution.types.start_id_mapping_job_input.StartIdMappingJobInput = {
        "workflow_name": workflow_name
    }
    if output_source_config is not None:
        input_["output_source_config"] = output_source_config
    if job_type is not None:
        input_["job_type"] = job_type

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output