Skip to content

describe_contact_flow async

describe_contact_flow(
    instance_id: InstanceId,
    contact_flow_id: ContactFlowId,
    *,
    config_overrides: Optional[AsyncConnectClientConfig] = 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/async_connect.py
async 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[AsyncConnectClientConfig] = 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.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_connect.types.describe_contact_flow_request.DescribeContactFlowRequest]",
    ) -> AsyncOperationResponse[
        "capo_connect.types.describe_contact_flow_response.DescribeContactFlowResponse"
    ]:
        import capo_connect._operations.amazon_connect_service.describe_contact_flow

        (
            output,
            http_response,
        ) = await capo_connect._operations.amazon_connect_service.describe_contact_flow.async_describe_contact_flow(
            req.options, req.input
        )
        return AsyncOperationResponse(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 = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output