Skip to main content
POST
/
api
/
v1
/
projects
{
  "id": "<string>",
  "name": "<string>",
  "description": {},
  "settings": {},
  "active_export_id": {},
  "created_at": "<string>",
  "VALIDATION_ERROR": {},
  "UNAUTHORIZED": {}
}

Overview

Creates a new video project. Projects are containers that hold chapters and organize your video content.

Request

Headers

Authorization
string
required
Bearer token with your API key
Content-Type
string
required
Must be application/json

Body

name
string
required
Project name (1-30 characters)
description
string
Optional project description (max 1000 characters)
settings
object
Optional project settings (reserved for future use)

Response

id
string
Unique project identifier (format: prj_[A-Za-z0-9]{21})
name
string
Project name
description
string | null
Project description
settings
object | null
Project settings
active_export_id
string | null
ID of the currently active export, if any
created_at
string
ISO 8601 timestamp when the project was created

Examples

curl -X POST https://api.babou.ai/api/v1/projects \
  -H "Authorization: Bearer $BABOU_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Product Launch Video",
    "description": "Marketing video for Q4 2025 product launch"
  }'

Response Example

{
  "id": "prj_abc123xyz",
  "name": "Product Launch Video",
  "description": "Marketing video for Q4 2025 product launch",
  "settings": null,
  "active_export_id": null,
  "created_at": "2025-12-02T10:00:00Z"
}

Error Responses

VALIDATION_ERROR
400
Invalid request parameters
{
  "error": "Validation failed",
  "code": "VALIDATION_ERROR",
  "hint": "Name must be between 1 and 30 characters"
}
UNAUTHORIZED
401
Invalid or missing API key
{
  "error": "Unauthorized - Invalid API key",
  "code": "UNAUTHORIZED"
}

Next Steps