Ensure the MediaPackage live channel has an HarvestJob-compatible endpoint configured; HarvestJobs are typically supported on HLS packaging configurations with a sufficiently long time-delay window.
Call the CreateHarvestJob API on the MediaPackage endpoint, specifying the startTime and endTime (ISO 8601 format, UTC) of the desired clip and an S3 destination (bucket ARN and manifest key prefix).
MediaPackage assembles the requested time range from its DVR buffer and writes an HLS asset (manifest + TS segments or fMP4 segments) to the specified S3 location.
Poll GetHarvestJob or use CloudWatch Events for harvest job state changes (IN_PROGRESS → SUCCEEDED or FAILED).
Once SUCCEEDED, the S3 location contains a self-contained HLS VOD asset; optionally ingest it into MediaConvert for further packaging or into CloudFront for CDN delivery.
Ensure the MediaPackage origin endpoint's time-delay window covers the harvest time range; segments outside the retention window cannot be harvested.
Known gotchas
The harvest window is limited by the origin endpoint's segment retention (time-delay window); if your VOD clip spans a time earlier than what is retained, the harvest job will fail.
HarvestJobs write raw HLS to S3; if you need DASH or CMAF VOD output, run the harvested HLS through a transcoding step.
MediaPackage V2 has a different API and resource model from V1; verify which version your channel uses before using API examples from documentation.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp