# Preview video

URL: https://clippie.ai/developers/docs/preview-video

Shows a video project before rendering it: up to 4 still frames (the opening, early, middle and late) and previewUrl, a page that plays it in the browser for 7 days without signing in. Free (no credits or minutes), limited to 20 a minute. Check the look here, change it with update_video, then render_video.

## At a glance

| Property | Value |
| --- | --- |
| REST | `POST https://api.clippie.ai/v1/videos/:projectId/preview` |
| MCP tool | `preview_video` |
| Scope | `read` |
| Cost | Free. Works with a read-only key. |
| Limit bucket | `preview` (see [Rate limits](https://clippie.ai/developers/docs.md#rate-limits)) |

## Parameters

| Name | In | Type | Required | Default | Description |
| --- | --- | --- | --- | --- | --- |
| `projectId` | path | string | Yes |  | The project id: output.projectId of a job, an id from list_videos, or the id in an editor URL. 1-64 chars. |
| `template` | body | string | No |  | Only look among this template's projects (ai_story, captions, reddit, roblox). One of `ai_story`, `captions`, `reddit`, `roblox`. |

## Example

curl:

```bash
curl https://api.clippie.ai/v1/videos/PROJECT_ID/preview \
  -H "Authorization: Bearer $CLIPPIE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

preview-video.mjs:

```js
const auth = { Authorization: `Bearer ${process.env.CLIPPIE_API_KEY}` };

const res = await fetch('https://api.clippie.ai/v1/videos/PROJECT_ID/preview', {
  method: 'POST',
  headers: { ...auth, 'Content-Type': 'application/json' },
  body: JSON.stringify({}),
});
if (!res.ok) throw new Error((await res.json()).error.message);
console.log(await res.json());
```

## Response

`200` with JSON. The full response schema is in the [OpenAPI spec](https://api.clippie.ai/v1/openapi.json).

## From an MCP client

Your AI calls `preview_video` with the same fields as JSON arguments. See [MCP server](https://clippie.ai/developers/docs.md#mcp) to connect one.

tools/call:

```json
{
  "name": "preview_video",
  "arguments": {
    "projectId": "PROJECT_ID"
  }
}
```
