Videoslash API
Scripts

Generate scripts

POST
/v1/scripts

Generate one or two faceless short-form voiceover scripts from a title and topic.

Requires an API key with the scripts:generate scope. Costs 0.15 credits per variation.

Authorization

bearerAuth
AuthorizationBearer <token>

API key authentication. Create a key in your Account settings.

Pass the full key in the Authorization header:

Authorization: Bearer vsl_...

Keys are shown only once at creation. Treat them like passwords.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/scripts" \  -H "Content-Type: application/json" \  -d '{    "topic": "INTERESTING_FACTS",    "title": "A medieval doctor used live frogs as heart monitors — and it actually worked.",    "hookAngle": "Open on a frog tied to a patient\'s wrist.",    "duration": "45",    "useHook": true,    "useCTA": false,    "useRagebait": false,    "variations": "1"  }'
[  {    "id": "string",    "title": "string",    "content": "string",    "metrics": {      "duration": "string",      "wordCount": 0    },    "batchId": "string",    "createdAt": "2019-08-24T14:15:22Z"  }]
{  "error": {    "code": "missing_api_key",    "message": "string"  }}
{  "error": {    "code": "missing_api_key",    "message": "string"  }}
{  "error": {    "code": "missing_api_key",    "message": "string"  }}
{  "error": {    "code": "missing_api_key",    "message": "string"  }}
{  "error": {    "code": "missing_api_key",    "message": "string"  }}
{  "error": {    "code": "missing_api_key",    "message": "string"  }}