Skip to content

describe_delivery_stream

describe_delivery_stream(
    delivery_stream_name: DeliveryStreamName,
    *,
    config_overrides: Optional[FirehoseClientConfig] = None,
    limit: Optional[DescribeDeliveryStreamInputLimit] = None,
    exclusive_start_destination_id: Optional[DestinationId] = None,
) -> DescribeDeliveryStreamOutput

Describes the specified Firehose stream and its status. For example, after your Firehose stream is created, call DescribeDeliveryStream to see whether the Firehose stream is ACTIVE and therefore ready for data to be sent to it.

If the status of a Firehose stream is CREATING_FAILED, this status doesn't change, and you can't invoke CreateDeliveryStream again on it. However, you can invoke the DeleteDeliveryStream operation to delete it. If the status is DELETING_FAILED, you can force deletion by invoking DeleteDeliveryStream again but with DeleteDeliveryStreamInput$AllowForceDelete set to true.

Parameters:

  • delivery_stream_name (DeliveryStreamName) –

    The name of the Firehose stream.

  • limit (Optional[DescribeDeliveryStreamInputLimit], default: None ) –

    The limit on the number of destinations to return. You can have one destination per Firehose stream.

  • exclusive_start_destination_id (Optional[DestinationId], default: None ) –

    The ID of the destination to start returning the destination information. Firehose supports one destination per Firehose stream.

Raises:

Source code in docs_src/capo_firehose/_services/firehose.py
def describe_delivery_stream(
    self,
    delivery_stream_name: "capo_firehose.types.delivery_stream_name.DeliveryStreamName",
    *,
    config_overrides: Optional[FirehoseClientConfig] = None,
    limit: Optional[
        "capo_firehose.types.describe_delivery_stream_input_limit.DescribeDeliveryStreamInputLimit"
    ] = None,
    exclusive_start_destination_id: Optional[
        "capo_firehose.types.destination_id.DestinationId"
    ] = None,
) -> "capo_firehose.types.describe_delivery_stream_output.DescribeDeliveryStreamOutput":
    """<p>Describes the specified Firehose stream and its status. For example, after your Firehose stream is created, call <code>DescribeDeliveryStream</code> to see whether the Firehose stream is <code>ACTIVE</code> and therefore ready for data to be sent to it. </p> <p>If the status of a Firehose stream is <code>CREATING_FAILED</code>, this status doesn't change, and you can't invoke <a>CreateDeliveryStream</a> again on it. However, you can invoke the <a>DeleteDeliveryStream</a> operation to delete it. If the status is <code>DELETING_FAILED</code>, you can force deletion by invoking <a>DeleteDeliveryStream</a> again but with <a>DeleteDeliveryStreamInput$AllowForceDelete</a> set to true.</p>

    Args:
        delivery_stream_name: <p>The name of the Firehose stream.</p>
        limit: <p>The limit on the number of destinations to return. You can have one destination per Firehose stream.</p>
        exclusive_start_destination_id: <p>The ID of the destination to start returning the destination information. Firehose supports one destination per Firehose stream.</p>

    Raises:
        capo_firehose.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource could not be found.</p>
        capo_firehose.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_firehose.types.describe_delivery_stream_input.DescribeDeliveryStreamInput]",
    ) -> OperationResponse[
        "capo_firehose.types.describe_delivery_stream_output.DescribeDeliveryStreamOutput"
    ]:
        import capo_firehose._operations.firehose_20150804.describe_delivery_stream

        output, http_response = (
            capo_firehose._operations.firehose_20150804.describe_delivery_stream.describe_delivery_stream(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    def _redact_output(
        output: "capo_firehose.types.describe_delivery_stream_output.DescribeDeliveryStreamOutput",
    ) -> dict[str, Any]:
        import capo_firehose.types.describe_delivery_stream_output

        return capo_firehose.types.describe_delivery_stream_output.redact_sensitive(
            output
        )

    interceptors_, options_ = self.operation_options(
        config_overrides,
        OperationLogging("DescribeDeliveryStream", redact_output=_redact_output),
    )
    input_: capo_firehose.types.describe_delivery_stream_input.DescribeDeliveryStreamInput = {
        "delivery_stream_name": delivery_stream_name
    }
    if limit is not None:
        input_["limit"] = limit
    if exclusive_start_destination_id is not None:
        input_["exclusive_start_destination_id"] = exclusive_start_destination_id

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