# Create from a Custom Script

Provide a complete script marked with speaker labels (`SPEAKER_00`, `SPEAKER_01`, ...) to control every line in your video. Send it through the standard creation endpoint via the `text` field.

```bash
curl -X POST "https://api.autocontentapi.com/content/Create" \
  -H "accept: application/json" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "outputType": "video",
    "text": "SPEAKER_00: Welcome back!\nSPEAKER_01: Today we dig into productivity hacks..."
  }'
```

**Tips**

* Keep each line prefixed with `SPEAKER_00:` or `SPEAKER_01:` so the service can match voices.
* Add optional `voice1` / `voice2` fields when you need precise host selection.
* Scripts over 5,000 characters may be rejected—split longer pieces into multiple videos.

## Try it in code

* [C#](https://docs.autocontentapi.com/code-samples/explainer-videos/csharp/from-custom-script)
* [Node.js](https://docs.autocontentapi.com/code-samples/explainer-videos/nodejs/from-custom-script)
* [Java](https://docs.autocontentapi.com/code-samples/explainer-videos/java/from-custom-script)
* [PHP](https://docs.autocontentapi.com/code-samples/explainer-videos/php/from-custom-script)
* [Python](https://docs.autocontentapi.com/code-samples/explainer-videos/python/from-custom-script)
