Description

Shotstack is a cloud-based video editing and rendering platform designed to simplify and automate the video creation process. It allows users to create high-quality, professional-looking videos quickly and easily, without the need for advanced technical skills or expensive software.

With Shotstack, users can upload their own media, choose from a library of pre-made templates, and customize their videos with text, effects, and transitions.

The platform also offers an API for developers to integrate video rendering into their own apps.

Supported Operations

Shotstack Edit API

Inspect Media

Inspects any media asset (image, video, audio) on the internet using a hosted version of [FFprobe](https://ffmpeg.org/ffprobe.html). The probe endpoint returns useful information about an asset such as width, height, duration, rotation, framerate, etc... **Base URL:** https://api.shotstack.io/{version}

Render Asset

Queue and render the contents of an [Edit](#tocs_edit) as a video, image or audio file. **Base URL:** https://api.shotstack.io/{version}

Get Render Status

Get the rendering status, temporary asset url and details of a render by ID. **Base URL:** https://api.shotstack.io/{version}

List Templates

Retrieve a list of templates stored against a users account and stage. **Base URL:** https://api.shotstack.io/{version}

Create Template

Save an [Edit](#tocs_edit) as a re-usable template. Templates can be retrieved and modified in your application before being rendered. [Merge fields](#tocs_mergefield) can be also used to merge data in to a template and [render](#render-template) it in a single request. **Base URL:** https://api.shotstack.io/{version}

Render Template

Render an asset from a template id and optional merge fields. Merge fields can be used to replace placeholder variables within the [Edit](#tocs_edit). **Base URL:** https://api.shotstack.io/{version}

Retrieve Template

Retrieve a template by template id. **Base URL:** https://api.shotstack.io/{version}

Update Template

Update an existing template by template id. **Base URL:** https://api.shotstack.io/{version}

Delete Template

Delete a template by its template id. **Base URL:** https://api.shotstack.io/{version}

Shotstack Serve API

Get Asset by Render ID

A render may generate more than one file, such as a video, thumbnail and poster image. When the assets are created the only known id is the render id returned by the original [render request](#render-video), status request or webhook. This endpoint lets you look up one or more assets by the render id. **Base URL:** https://api.shotstack.io/serve/{version}

Get Asset

The Serve API is used to interact with, and delete hosted assets including videos, images, audio files, thumbnails and poster images. Use this endpoint to fetch an asset by asset id. Note that an asset id is unique for each asset and different from the render id. **Base URL:** https://api.shotstack.io/serve/{version}

Delete Asset

Delete an asset by its asset id. If a render creates multiple assets, such as thumbnail and poster images, each asset must be deleted individually by the asset id. **Base URL:** https://api.shotstack.io/serve/{version}

Shotstack Ingest API

List Sources

Retrieve a list of ingested source files stored against a users account and stage. **Base URL:** https://api.shotstack.io/ingest/{version}

Fetch Source

Queue a source file to be fetched from a URL and stored by Shotstack. Source files can be videos, images, audio files and fonts. Once ingested, new [output renditions](#tocs_outputs) can be created from the source file. **Base URL:** https://api.shotstack.io/ingest/{version}

Get Source

Fetch a source file details and status by its id. **Base URL:** https://api.shotstack.io/ingest/{version}

Delete Source

Delete an ingested source file by its id. **Base URL:** https://api.shotstack.io/ingest/{version}

Direct Upload

Request a signed URL to upload a file to. The response returns a signed URL that you use to upload the file to. The signed URL looks similar to: https://shotstack-ingest-api-stage-sources.s3.ap-southeast-2.amazonaws.com/5ca6hu7s9k/zzytey4v-32km-kq1z-aftr-3kcuqi0brad2/source?AWSAccessKeyId=ASIAWJV7UWDMGTZLHTXP&Expires=1677209777&Signature=PKR4dGDDdOuMTAQmDASzLGmLOeo%3D&x-amz-acl=public-read&x-amz-security-token=IQoJb3JpZ2luX2VjEGMaDmFwLX......56osBGByztm7WZdbmXzO09KR In a separate API call, use this signed URL to send a PUT request with the binary file. Using cURL you can use a command like: `curl -X PUT -T video.mp4 {data.attributes.url}` Where **video.mp4** is the file you want to upload and **{data.attributes.url}** is the signed URL returned in the response. The request must be a PUT type. The SDK does not currently support the PUT request. You can use the SDK to make the request for the signed URL and then use cURL to make the PUT request. **Base URL:** https://api.shotstack.io/ingest/{version}

Shotstack Create API

Generate Asset

Generate an asset using a Shotstack or third party provider. Chose the provider, type of asset and provide prompts, inputs and options to generate the asset. Once generated the asset can be used with the [Edit](#tocs_edit) API or downloaded. **Base URL:** https://api.shotstack.io/create/{version}

Get Generated Asset

Get the generated assets status, url and details by ID. **Base URL:** https://api.shotstack.io/create/{version}

Details
Preview

This item is available for early access. It is still in development and may contain experimental features or limitations.

Last Update

4 months ago

Includes
shotstack-edit-api-client
shotstack-serve-api-client
shotstack-ingest-api-client
shotstack-create-api-client