Skip to content

describe_contact_flow

describe_contact_flow(
    instance_id: InstanceId,
    contact_flow_id: ContactFlowId,
    *,
    config_overrides: Optional[ConnectClientConfig] = None,
) -> DescribeContactFlowResponse

Describes the specified flow.

You can also create and update flows using the Connect Customer Flow language.

Use the $SAVED alias in the request to describe the SAVED content of a Flow. For example, arn:aws:.../contact-flow/{id}:$SAVED. After a flow is published, $SAVED needs to be supplied to view saved content that has not been published.

Use arn:aws:.../contact-flow/{id}:{version} to retrieve the content of a specific flow version.

In the response, Status indicates the flow status as either SAVED or PUBLISHED. The PUBLISHED status will initiate validation on the content. SAVED does not initiate validation of the content. SAVED | PUBLISHED

Parameters:

  • instance_id (InstanceId) –

    The identifier of the Connect Customer instance.

  • contact_flow_id (ContactFlowId) –

    The identifier of the flow.

Raises:

Source code in docs_src/capo_connect/_services/connect.py
def describe_contact_flow(
    self,
    instance_id: "capo_connect.types.instance_id.InstanceId",
    contact_flow_id: "capo_connect.types.contact_flow_id.ContactFlowId",
    *,
    config_overrides: Optional[ConnectClientConfig] = None,
) -> (
    "capo_connect.types.describe_contact_flow_response.DescribeContactFlowResponse"
):
    """<p>Describes the specified flow.</p> <p>You can also create and update flows using the <a href="https://docs.aws.amazon.com/connect/latest/APIReference/flow-language.html">Connect Customer Flow language</a>.</p> <p>Use the <code>$SAVED</code> alias in the request to describe the <code>SAVED</code> content of a Flow. For example, <code>arn:aws:.../contact-flow/{id}:$SAVED</code>. After a flow is published, <code>$SAVED</code> needs to be supplied to view saved content that has not been published.</p> <p>Use <code>arn:aws:.../contact-flow/{id}:{version}</code> to retrieve the content of a specific flow version.</p> <p>In the response, <b>Status</b> indicates the flow status as either <code>SAVED</code> or <code>PUBLISHED</code>. The <code>PUBLISHED</code> status will initiate validation on the content. <code>SAVED</code> does not initiate validation of the content. <code>SAVED</code> | <code>PUBLISHED</code> </p>

    Args:
        instance_id: <p>The identifier of the Connect Customer instance.</p>
        contact_flow_id: <p>The identifier of the flow.</p>

    Raises:
        capo_connect.errors.contact_flow_not_published_exception.ContactFlowNotPublishedException: <p>The flow has not been published.</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.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.describe_contact_flow_request.DescribeContactFlowRequest]",
    ) -> OperationResponse[
        "capo_connect.types.describe_contact_flow_response.DescribeContactFlowResponse"
    ]:
        import capo_connect._operations.amazon_connect_service.describe_contact_flow

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

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("DescribeContactFlow")
    )
    input_: capo_connect.types.describe_contact_flow_request.DescribeContactFlowRequest = {
        "instance_id": instance_id,
        "contact_flow_id": contact_flow_id,
    }

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