ContentProduction
The ContentProduction entity is the central content record representing episodes, livestreams, videos, and articles.
Overview
Fields
| Field | Type | Description |
|---|---|---|
name | varchar | Title of the content |
contentType | enum | Type of content (see below) |
stage | enum | Production stage (see below) |
showName | varchar | Associated show/series name |
description | text | Show notes / description |
scheduledDate | datetime | When to record/stream |
recordingUrl | url | Link to raw recording |
thumbnailUrl | url | Thumbnail image URL |
platforms | multiEnum | Target platforms for publishing |
Content Types
| Type | Description | Use Case |
|---|---|---|
| Episode | Podcast/video episode | Regular show content |
| Livestream | Live broadcast | Real-time streaming |
| Video | Standalone video | Non-episodic content |
| Article | Written content | Blog posts, newsletters |
| Clip Package | Collection of clips | Bundled short-form content |
Production Stages
The content lifecycle follows these stages:
| Stage | Description | Actions |
|---|---|---|
| Planning | Initial concept phase | Define topic, outline |
| Scheduled | Date/time confirmed | Calendar event created |
| Recording | Currently recording | Live or in-progress |
| Editing | Post-production | Video/audio editing |
| Review | Quality check | Final approval |
| Publishing | Distributing content | Platform uploads active |
| Published | Complete | All platforms done |
| Archived | Historical | Moved to archive |
Relationships
Has Many: PlatformPublish
Each ContentProduction can have multiple platform destinations:
Has Many: Clips
Derivative clips extracted from the content:
Has Many: SocialPosts
Promotional posts for the content:
Belongs To: GuestBooking
If the content features a guest:
Workflow Integration
When a ContentProduction is created or updated, webhooks trigger automations:
API Operations
Create ContentProduction
http
POST /api/v1/ContentProduction
Content-Type: application/json
Authorization: Basic {base64(apiKey)}
{
"name": "Episode 42: The Future of AI",
"contentType": "Episode",
"stage": "Planning",
"showName": "Tech Talk",
"description": "Discussion about AI trends...",
"scheduledDate": "2026-02-10T14:00:00.000Z",
"platforms": ["Rumble", "YouTube", "Boxcast"]
}Update Stage
http
PUT /api/v1/ContentProduction/{id}
Content-Type: application/json
{
"stage": "Publishing"
}Link to Guest
http
PUT /api/v1/ContentProduction/{id}
Content-Type: application/json
{
"guestBookingId": "guest-id-here"
}Best Practices
Plan Ahead
Create ContentProduction records early in the planning phase to track the full lifecycle.
Use Show Names
Consistently use showName to group content by series for easier filtering.
Platform Dependencies
Configure PlatformPublish dependencies correctly. Some platforms (like Boxcast) need data from others (like Rumble).
Related
- PlatformPublish — Publishing to platforms
- Clip — Derivative clips
- SocialPost — Social promotion
- GuestBooking — Guest management
- Publishing Workflow — Full publishing flow