Skip to content

create_contact_flow_module_version

create_contact_flow_module_version(
    instance_id: InstanceId,
    contact_flow_module_id: ARN,
    *,
    config_overrides: Optional[ConnectClientConfig] = None,
    description: Optional[ContactFlowModuleDescription] = None,
    flow_module_content_sha256: Optional[FlowModuleContentSha256] = None,
) -> CreateContactFlowModuleVersionResponse

Creates an immutable snapshot of a contact flow module, preserving its content and settings at a specific point in time for version control and rollback capabilities.

Parameters:

Raises:

Source code in docs_src/capo_connect/_services/connect.py
def create_contact_flow_module_version(
    self,
    instance_id: "capo_connect.types.instance_id.InstanceId",
    contact_flow_module_id: "capo_connect.types.arn.ARN",
    *,
    config_overrides: Optional[ConnectClientConfig] = None,
    description: Optional[
        "capo_connect.types.contact_flow_module_description.ContactFlowModuleDescription"
    ] = None,
    flow_module_content_sha256: Optional[
        "capo_connect.types.flow_module_content_sha256.FlowModuleContentSha256"
    ] = None,
) -> "capo_connect.types.create_contact_flow_module_version_response.CreateContactFlowModuleVersionResponse":
    """<p>Creates an immutable snapshot of a contact flow module, preserving its content and settings at a specific point in time for version control and rollback capabilities.</p>

    Args:
        instance_id: <p>The identifier of the Connect Customer instance. You can <a href="https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html">find the instance ID</a> in the Amazon Resource Name (ARN) of the instance.</p>
        description: <p>The description of the flow module version.</p>
        contact_flow_module_id: <p>The identifier of the flow module.</p>
        flow_module_content_sha256: <p>Indicates the checksum value of the flow module content.</p>

    Raises:
        capo_connect.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient permissions to perform this action.</p>
        capo_connect.errors.internal_service_exception.InternalServiceException: <p>Request processing failed because of an error or failure with the service.</p>
        capo_connect.errors.invalid_parameter_exception.InvalidParameterException: <p>One or more of the specified parameters are not valid.</p>
        capo_connect.errors.invalid_request_exception.InvalidRequestException: <p>The request is not valid.</p>
        capo_connect.errors.limit_exceeded_exception.LimitExceededException: <p>The allowed limit for the resource has been exceeded.</p>
        capo_connect.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource was not found.</p>
        capo_connect.errors.throttling_exception.ThrottlingException: <p>The throttling limit has been exceeded.</p>
        capo_connect.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_connect.types.create_contact_flow_module_version_request.CreateContactFlowModuleVersionRequest]",
    ) -> OperationResponse[
        "capo_connect.types.create_contact_flow_module_version_response.CreateContactFlowModuleVersionResponse"
    ]:
        import capo_connect._operations.amazon_connect_service.create_contact_flow_module_version

        output, http_response = (
            capo_connect._operations.amazon_connect_service.create_contact_flow_module_version.create_contact_flow_module_version(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateContactFlowModuleVersion")
    )
    input_: capo_connect.types.create_contact_flow_module_version_request.CreateContactFlowModuleVersionRequest = {
        "instance_id": instance_id,
        "contact_flow_module_id": contact_flow_module_id,
    }
    if description is not None:
        input_["description"] = description
    if flow_module_content_sha256 is not None:
        input_["flow_module_content_sha256"] = flow_module_content_sha256

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