import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { ListFragmentsInput, ListFragmentsOutput } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link ListFragmentsCommand}. */ export interface ListFragmentsCommandInput extends ListFragmentsInput { } /** * @public * * The output of {@link ListFragmentsCommand}. */ export interface ListFragmentsCommandOutput extends ListFragmentsOutput, __MetadataBearer { } declare const ListFragmentsCommand_base: { new (input: ListFragmentsCommandInput): import("@smithy/core/client").CommandImpl; new (...[input]: [] | [ListFragmentsCommandInput]): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Returns a list of Fragment objects from the specified stream and * timestamp range within the archived data.

*

Listing fragments is eventually consistent. This means that even if the producer * receives an acknowledgment that a fragment is persisted, the result might not be * returned immediately from a request to ListFragments. However, results are * typically available in less than one second.

* *

You must first call the GetDataEndpoint API to get an endpoint. * Then send the ListFragments requests to this endpoint using the --endpoint-url * parameter.

*
* *

If an error is thrown after invoking a Kinesis Video Streams archived media API, * in addition to the HTTP status code and the response body, it includes the following * pieces of information:

*
    *
  • *

    * x-amz-ErrorType HTTP header – contains a more specific error * type in addition to what the HTTP status code provides.

    *
  • *
  • *

    * x-amz-RequestId HTTP header – if you want to report an issue to * Amazon Web Services, the support team can better diagnose the problem if given the Request * Id.

    *
  • *
*

Both the HTTP status code and the ErrorType header can be utilized to make * programmatic decisions about whether errors are retry-able and under what * conditions, as well as provide information on what actions the client programmer * might need to take in order to successfully try again.

*

For more information, see the Errors section at * the bottom of this topic, as well as Common Errors. *

*
* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { KinesisVideoArchivedMediaClient, ListFragmentsCommand } from "@aws-sdk/client-kinesis-video-archived-media"; // ES Modules import * // const { KinesisVideoArchivedMediaClient, ListFragmentsCommand } = require("@aws-sdk/client-kinesis-video-archived-media"); // CommonJS import * // import type { KinesisVideoArchivedMediaClientConfig } from "@aws-sdk/client-kinesis-video-archived-media"; * const config = {}; // type is KinesisVideoArchivedMediaClientConfig * const client = new KinesisVideoArchivedMediaClient(config); * const input = { // ListFragmentsInput * StreamName: "STRING_VALUE", * StreamARN: "STRING_VALUE", * MaxResults: Number("long"), * NextToken: "STRING_VALUE", * FragmentSelector: { // FragmentSelector * FragmentSelectorType: "PRODUCER_TIMESTAMP" || "SERVER_TIMESTAMP", // required * TimestampRange: { // TimestampRange * StartTimestamp: new Date("TIMESTAMP"), // required * EndTimestamp: new Date("TIMESTAMP"), // required * }, * }, * }; * const command = new ListFragmentsCommand(input); * const response = await client.send(command); * // { // ListFragmentsOutput * // Fragments: [ // FragmentList * // { // Fragment * // FragmentNumber: "STRING_VALUE", * // FragmentSizeInBytes: Number("long"), * // ProducerTimestamp: new Date("TIMESTAMP"), * // ServerTimestamp: new Date("TIMESTAMP"), * // FragmentLengthInMilliseconds: Number("long"), * // }, * // ], * // NextToken: "STRING_VALUE", * // }; * * ``` * * @param ListFragmentsCommandInput - {@link ListFragmentsCommandInput} * @returns {@link ListFragmentsCommandOutput} * @see {@link ListFragmentsCommandInput} for command's `input` shape. * @see {@link ListFragmentsCommandOutput} for command's `response` shape. * @see {@link KinesisVideoArchivedMediaClientResolvedConfig | config} for KinesisVideoArchivedMediaClient's `config` shape. * * @throws {@link ClientLimitExceededException} (client fault) *

Kinesis Video Streams has throttled the request because you have exceeded a limit. Try making the call later. For information about limits, see Kinesis Video Streams Limits.

* * @throws {@link InvalidArgumentException} (client fault) *

A specified parameter exceeds its restrictions, is not supported, or can't be * used.

* * @throws {@link NotAuthorizedException} (client fault) *

Status Code: 403, The caller is not authorized to perform an operation on the given * stream, or the token has expired.

* * @throws {@link ResourceNotFoundException} (client fault) *

* GetImages will throw this error when Kinesis Video Streams can't find the stream * that you specified.

*

* GetHLSStreamingSessionURL and GetDASHStreamingSessionURL throw * this error if a session with a PlaybackMode of ON_DEMAND or * LIVE_REPLAYis requested for a stream that has no fragments within the * requested time range, or if a session with a PlaybackMode of * LIVE is requested for a stream that has no fragments within the last 30 * seconds.

* * @throws {@link KinesisVideoArchivedMediaServiceException} *

Base exception class for all service exceptions from KinesisVideoArchivedMedia service.

* * * @public */ export declare class ListFragmentsCommand extends ListFragmentsCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: ListFragmentsInput; output: ListFragmentsOutput; }; sdk: { input: ListFragmentsCommandInput; output: ListFragmentsCommandOutput; }; }; }