
# Editing Videos, Images and Audio

Shotstack provides a framework to automate the editing process for your videos, images and audio and the heavy lifting
of rendering thousands of videos concurrently.

Shotstack is useful is in building media based applications and automating workflows where a template can be used and
assets created in batches or large volumes.

## Key steps to editing media

### Prepare JSON using the Studio

An edit in Shotstack is defined using JSON which specifies when different assets (images, videos, titles) will appear
and play on a timeline. In order to create a video you first need to prepare the JSON data so that it contains the
correct assets arranged on the timeline.

You can use the Shotstack Studio to help create this JSON data.

### Post JSON to API render endpoint

Once your have prepared an edit using the Studio you POST the data to the _**render** endpoint of our API.

### Poll render endpoint

The render process takes approximately 10 seconds for a 30-second video.

Your application needs to poll the API on a regular basis to check the status of the video render by calling the
_**render**_ endpoint with the **id** of the current render. When the status is `done` you can proceed to downloading or
transferring the video to your application.

:::info Tip

We recommend [using webhooks](webhooks.md) to reduce the number of calls to the API and receive a notification as
soon as rendering completes.

:::

### Hosting and serving video

Once a video is finished rendering, it is available at a temporary URL as well as automatically transferred to the
[Shotstack hosting service](/docs/guide/serving-assets/hosting).

### Download or transfer the video

Instead of using the Shotstack hosting service, the video can be fetched from our servers \(S3\) and transferred to your 
own application for further processing and hosting.

You may wish to transfer the video to your own S3 or storage service, upload it Google Drive, Vimeo or any of our other
destinations.

:::danger Warning

If you are not using our hosting service, we will store the video on our servers for 24 hours only. After that time they
will be deleted.

:::
