{ "version":"2.0", "metadata":{ "apiVersion":"2017-09-30", "endpointPrefix":"kinesisvideo", "protocol":"rest-json", "serviceAbbreviation":"Kinesis Video Archived Media", "serviceFullName":"Amazon Kinesis Video Streams Archived Media", "serviceId":"Kinesis Video Archived Media", "signatureVersion":"v4", "uid":"kinesis-video-archived-media-2017-09-30" }, "operations":{ "GetMediaForFragmentList":{ "name":"GetMediaForFragmentList", "http":{ "method":"POST", "requestUri":"/getMediaForFragmentList" }, "input":{"shape":"GetMediaForFragmentListInput"}, "output":{"shape":"GetMediaForFragmentListOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArgumentException"}, {"shape":"ClientLimitExceededException"}, {"shape":"NotAuthorizedException"} ], "documentation":"

Gets media for a list of fragments (specified by fragment number) from the archived data in a Kinesis video stream.

This operation is only available for the AWS SDK for Java. It is not supported in AWS SDKs for other languages.

The following limits apply when using the GetMediaForFragmentList API:

" }, "ListFragments":{ "name":"ListFragments", "http":{ "method":"POST", "requestUri":"/listFragments" }, "input":{"shape":"ListFragmentsInput"}, "output":{"shape":"ListFragmentsOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArgumentException"}, {"shape":"ClientLimitExceededException"}, {"shape":"NotAuthorizedException"} ], "documentation":"

Returns a list of Fragment objects from the specified stream and start location within the archived data.

" } }, "shapes":{ "ClientLimitExceededException":{ "type":"structure", "members":{ "Message":{"shape":"ErrorMessage"} }, "documentation":"

Kinesis Video Streams has throttled the request because you have exceeded the limit of allowed client calls. Try making the call later.

", "error":{"httpStatusCode":400}, "exception":true }, "ContentType":{ "type":"string", "max":128, "min":1, "pattern":"^[a-zA-Z0-9_\\.\\-]+$" }, "ErrorMessage":{"type":"string"}, "Fragment":{ "type":"structure", "members":{ "FragmentNumber":{ "shape":"String", "documentation":"

The index value of the fragment.

" }, "FragmentSizeInBytes":{ "shape":"Long", "documentation":"

The total fragment size, including information about the fragment and contained media data.

" }, "ProducerTimestamp":{ "shape":"Timestamp", "documentation":"

The time stamp from the producer corresponding to the fragment.

" }, "ServerTimestamp":{ "shape":"Timestamp", "documentation":"

The time stamp from the AWS server corresponding to the fragment.

" }, "FragmentLengthInMilliseconds":{ "shape":"Long", "documentation":"

The playback duration or other time value associated with the fragment.

" } }, "documentation":"

Represents a segment of video or other time-delimited data.

" }, "FragmentList":{ "type":"list", "member":{"shape":"Fragment"} }, "FragmentNumberList":{ "type":"list", "member":{"shape":"FragmentNumberString"} }, "FragmentNumberString":{ "type":"string", "max":128, "min":1, "pattern":"^[0-9]+$" }, "FragmentSelector":{ "type":"structure", "required":[ "FragmentSelectorType", "TimestampRange" ], "members":{ "FragmentSelectorType":{ "shape":"FragmentSelectorType", "documentation":"

The origin of the time stamps to use (Server or Producer).

" }, "TimestampRange":{ "shape":"TimestampRange", "documentation":"

The range of time stamps to return.

" } }, "documentation":"

Describes the time stamp range and time stamp origin of a range of fragments.

" }, "FragmentSelectorType":{ "type":"string", "enum":[ "PRODUCER_TIMESTAMP", "SERVER_TIMESTAMP" ] }, "GetMediaForFragmentListInput":{ "type":"structure", "required":[ "StreamName", "Fragments" ], "members":{ "StreamName":{ "shape":"StreamName", "documentation":"

The name of the stream from which to retrieve fragment media.

" }, "Fragments":{ "shape":"FragmentNumberList", "documentation":"

A list of the numbers of fragments for which to retrieve media. You retrieve these values with ListFragments.

" } } }, "GetMediaForFragmentListOutput":{ "type":"structure", "members":{ "ContentType":{ "shape":"ContentType", "documentation":"

The content type of the requested media.

", "location":"header", "locationName":"Content-Type" }, "Payload":{ "shape":"Payload", "documentation":"

The payload that Kinesis Video Streams returns is a sequence of chunks from the specified stream. For information about the chunks, see PutMedia. The chunks that Kinesis Video Streams returns in the GetMediaForFragmentList call also include the following additional Matroska (MKV) tags:

The following tags will be included if an exception occurs:

" } }, "payload":"Payload" }, "InvalidArgumentException":{ "type":"structure", "members":{ "Message":{"shape":"ErrorMessage"} }, "documentation":"

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

", "error":{"httpStatusCode":400}, "exception":true }, "ListFragmentsInput":{ "type":"structure", "required":["StreamName"], "members":{ "StreamName":{ "shape":"StreamName", "documentation":"

The name of the stream from which to retrieve a fragment list.

" }, "MaxResults":{ "shape":"PageLimit", "documentation":"

The total number of fragments to return. If the total number of fragments available is more than the value specified in max-results, then a ListFragmentsOutput$NextToken is provided in the output that you can use to resume pagination.

" }, "NextToken":{ "shape":"String", "documentation":"

A token to specify where to start paginating. This is the ListFragmentsOutput$NextToken from a previously truncated response.

" }, "FragmentSelector":{ "shape":"FragmentSelector", "documentation":"

Describes the time stamp range and time stamp origin for the range of fragments to return.

" } } }, "ListFragmentsOutput":{ "type":"structure", "members":{ "Fragments":{ "shape":"FragmentList", "documentation":"

A list of fragment numbers that correspond to the time stamp range provided.

" }, "NextToken":{ "shape":"String", "documentation":"

If the returned list is truncated, the operation returns this token to use to retrieve the next page of results. This value is null when there are no more results to return.

" } } }, "Long":{"type":"long"}, "NotAuthorizedException":{ "type":"structure", "members":{ "Message":{"shape":"ErrorMessage"} }, "documentation":"

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

", "error":{"httpStatusCode":401}, "exception":true }, "PageLimit":{ "type":"long", "max":1000, "min":1 }, "Payload":{ "type":"blob", "streaming":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ "Message":{"shape":"ErrorMessage"} }, "documentation":"

Kinesis Video Streams can't find the stream that you specified.

", "error":{"httpStatusCode":404}, "exception":true }, "StreamName":{ "type":"string", "max":256, "min":1, "pattern":"[a-zA-Z0-9_.-]+" }, "String":{ "type":"string", "min":1 }, "Timestamp":{"type":"timestamp"}, "TimestampRange":{ "type":"structure", "required":[ "StartTimestamp", "EndTimestamp" ], "members":{ "StartTimestamp":{ "shape":"Timestamp", "documentation":"

The starting time stamp in the range of time stamps for which to return fragments.

" }, "EndTimestamp":{ "shape":"Timestamp", "documentation":"

The ending time stamp in the range of time stamps for which to return fragments.

" } }, "documentation":"

The range of time stamps for which to return fragments.

" } }, "documentation":"

" }