canonical: https://jentic.com/apis/amazonaws.com/kinesis-video-archived-media

# AWS Amazon Kinesis Video Streams Archived Media

Jentic publishes the only available OpenAPI specification for Amazon Kinesis Video Streams Archived Media, keeping it validated and agent-ready. This focused six-endpoint API lets applications retrieve recorded video from a Kinesis Video Stream after the live ingestion has completed. It generates HLS and DASH streaming session URLs for archived footage, exports clips as MP4 files, fetches still images from arbitrary timestamps, and lists fragments by time window so downstream tools can select the exact segment of footage they need. It is the playback companion to the Kinesis Video Streams ingestion API.

## For AI agents

Retrieve archived video as HLS, DASH, MP4 clips, or still images from any time window of a Kinesis Video Stream.

## Scope

Does not handle live ingestion, signaling channels, or stream creation - use for retrieving archived video, clips, and images from existing streams only.

## Capabilities

- Generate HLS streaming session URLs for archived video via /getHLSStreamingSessionURL
- Generate DASH streaming session URLs via /getDASHStreamingSessionURL
- Export MP4 clips for arbitrary time windows via /getClip
- Fetch still images from a stream timestamp via /getImages
- List recorded fragments inside a time window with /listFragments
- Download media data for a list of fragments via /getMediaForFragmentList

## Use cases

### Security Camera Playback

Provide operators with on-demand playback of footage from connected cameras feeding Kinesis Video Streams. The /getHLSStreamingSessionURL endpoint returns a short-lived session URL that the player loads as a standard HLS manifest, optionally pinned to a specific time window. This is the standard playback flow for IP camera fleets, building security panels, and incident review tooling.

Example prompt: Generate an HLS streaming session URL for stream cam-front-door covering 2026-06-08T14:00Z to 2026-06-08T15:00Z

### Incident Clip Export

Export recorded video for incident reports, evidence retention, or downstream review. The /getClip endpoint returns an MP4 byte stream covering the requested time range, bounded by 100MB or 200 fragments per call. Investigators can pull the exact window of footage they need without spinning up custom transcoding.

Example prompt: Export an MP4 clip from stream cam-warehouse-2 between 2026-06-08T08:30Z and 2026-06-08T08:35Z

### Frame-Level Image Sampling

Pull still images at a specified cadence to feed downstream computer vision pipelines. The /getImages endpoint accepts a sampling interval and time window and returns base64-encoded JPEG or PNG frames. Teams use this to run periodic detection on hours of footage without decoding the full video stream client-side.

Example prompt: Sample one JPEG image every 60 seconds from stream cam-loading-bay between 2026-06-08T09:00Z and 2026-06-08T10:00Z

### AI Agent Video Review

AI agents call the Kinesis Video Streams Archived Media API through Jentic to review recorded footage in response to alerts, generate clips for human review, and feed sampled frames into vision models. Through Jentic, the agent searches by intent, loads the schema, and executes with credentials stored in the vault. This avoids embedding SigV4 signing into the agent runtime.

Example prompt: Search Jentic for 'export mp4 clip from video stream', load the GetClip schema, and execute against stream cam-warehouse-2 with the given time window

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /getHLSStreamingSessionURL | Get an HLS playback session URL for archived footage |
| POST | /getDASHStreamingSessionURL | Get a DASH playback session URL |
| POST | /getClip | Export an MP4 clip for a time window |
| POST | /getImages | Sample still images from a time window |
| POST | /listFragments | List fragments captured in a time window |
| POST | /getMediaForFragmentList | Download media for a list of fragment numbers |

## Key resources

- **Streaming Sessions** — HLS and DASH session URLs for archived playback
- **Clips** — MP4 export of arbitrary time windows
- **Images** — Still image sampling from stream timestamps
- **Fragments** — List and fetch raw recorded fragments

## Why Jentic

- **Setup:** Wiring the Kinesis Video Archived Media API by hand means building AWS Signature Version 4 signing, selecting the right regional host from kinesisvideo.{region}.amazonaws.com, constructing fragment selectors, and handling AWS throttling and retries yourself. Through Jentic you install once, import Amazon Kinesis Video Streams Archived Media from the API Directory, store the AWS access key and secret once, and your agent calls it.
- **Permission scoping:** This API carries the stream name or ARN and time window in the request body of read operations like GetClip and GetImages, so limit the agent to the operations it needs, such as GetHLSStreamingSessionURL or ListFragments. All six operations are read-only retrievals, so you scope the agent by which of them it may call rather than by any write access.
- **Credential handling:** Your AWS access key and secret for Kinesis Video Streams are stored once, encrypted, by your own Jentic One instance and signed with SigV4 at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'export an mp4 clip from a video stream' or 'get an hls playback url for archived footage', and Jentic returns the matching Archived Media operation with its input schema so the agent calls the right endpoint without reading the AWS reference.

## Related APIs

- **Amazon Rekognition** — Computer vision and video analysis
- **Amazon Interactive Video Service** — Low-latency live streaming for interactive applications
- **AWS Elemental MediaPackage VOD** — Video-on-demand packaging
- **AWS Lambda** — Serverless function execution

## FAQ

### Why is there no official OpenAPI spec for Kinesis Video Streams Archived Media?

AWS does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Amazon Kinesis Video Streams Archived Media via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Kinesis Video Archived Media API use?

It uses AWS Signature Version 4 (SigV4) HMAC request signing scoped to the kinesisvideo IAM service. Through Jentic, credentials are stored encrypted in the vault and signing happens at execution time so the agent never sees the raw secret.

### Can I export an MP4 clip with the Archived Media API?

Yes. POST /getClip accepts a stream name or ARN, a fragment selector, and a clip time range, and returns an MP4 byte stream. Each clip is bounded by 100MB or 200 fragments - request shorter windows or use the fragment list to chunk longer exports.

### How do I get a playback URL for archived footage through Jentic?

Search Jentic for 'get hls playback url for archived video', load the GetHLSStreamingSessionURL schema, submit the stream name and a HLSFragmentSelector with the time window, and return the HLSStreamingSessionURL string for the player. Jentic handles SigV4 signing.

### What are the rate limits for the Archived Media API?

Each operation has its own per-region quotas, including limits on session URL generation, clip exports, and image sampling rates. Check the Kinesis Video Streams service quotas in the AWS console for the current values.

### Can I sample still images from a recorded stream?

Yes. POST /getImages accepts a stream identifier, a time range, and a sampling interval, and returns JPEG or PNG frames at that cadence. This is the recommended path for feeding archived video into computer vision models without decoding fragments client-side.

### Can I limit what my agent is allowed to do with the Kinesis Video Archived Media API?

Yes. Because Jentic One is self-hosted, you set the rules that decide which of the six operations your agent may call and which AWS credentials it uses. All six operations are read-only retrievals, so you scope the agent by operation rather than by write access, for example allowing GetHLSStreamingSessionURL and ListFragments while withholding GetClip or GetImages. Since the stream name or ARN and time window travel in each request body, you grant only the specific retrieval operations the agent needs.
