> ## Documentation index
> Fetch the complete documentation index at: https://dash.robopost.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Video series

A video series holds the settings for AI faceless videos: topic, style, voice, captions, language and where
to post them. The API can create series and start videos, just like the
[Faceless videos](https://dash.robopost.app/docs/ai/faceless-videos.md) screen.

**You need:** an [API key](https://dash.robopost.app/docs/api/authentication.md) and faceless video credits.

## Create a series

```bash
curl -X POST https://public-api.robopost.app/v1/video-series \
  -H "Authorization: Bearer $ROBOPOST_API_KEY" -H "Content-Type: application/json" \
  -d '{"name": "Daily fun facts", "content_type": "FUN_FACTS", "format": "PORTRAIT", "lang": "en"}'
```

Only `name` is required; everything else has a default (content type `ELI5`, the default style and voice,
portrait format, English). Other content types include `RANDOM_AI_STORY`, `SCARY_STORIES`,
`BEDTIME_STORIES`, `INTERESTING_HISTORY`, `URBAN_LEGENDS`, `MOTIVATIONAL` and `LONG_FORM_JOKES`. Every field
and its allowed values (style, voice, captions, music, schedule, channels or collections to post to) is in
the OpenAPI description under `POST /v1/video-series`.
`GET /v1/video-series`, `GET /v1/video-series/{id}`, `PUT /v1/video-series/{id}` and
`DELETE /v1/video-series/{id}` list, read, change and remove series.

## Generate a video

```bash
curl -X POST https://public-api.robopost.app/v1/video-tasks/<series id>/generate \
  -H "Authorization: Bearer $ROBOPOST_API_KEY"
```

The answer is a task. Follow it with `GET /v1/video-tasks/{task id}` (or `/details` for everything) until
its status is `COMPLETE`, `ERROR` or `NO_CREDITS`. `GET /v1/video-tasks` lists tasks, filtered by
`series_id` and `status`. A finished video is posted the way the series says; those posts then appear in
[the list of posts](https://dash.robopost.app/docs/api/list-and-read-posts.md) and the [change feed](https://dash.robopost.app/docs/api/changes-and-webhooks.md).

## Next

[Errors](https://dash.robopost.app/docs/api/errors.md)
