Overview
Recoup’s content API gives you seven independent primitives for generating and editing visual content. Each primitive does one thing well. You orchestrate them. Every primitive works without a template. Pass your own prompt, reference images, and parameters directly. Templates are optional shortcuts — opinionated creative recipes that pre-fill parameters for a specific look.Primitives
There is also POST /api/content/create which runs the full pipeline in one call — use it when you want a video without creative control over each step.
How It Works
Without a template (malleable mode)
Pass your own parameters directly to any primitive. Maximum creative control.With a template (shortcut mode)
Pass a template ID and the primitive fills in prompts, reference images, and style rules automatically. You can still override any parameter.Templates
A template is a complete creative recipe — it defines what a piece of content looks like across every primitive:- Image config: prompt, reference images, style rules (camera, lighting, composition)
- Video config: mood variations, movement descriptions
- Caption config: tone, formatting rules, example captions
- Edit config: crop ratio, text overlay style, audio mixing
Override priority
When using a template, your explicit parameters always win:- Your params — highest priority. What you pass overrides everything.
- Artist context — if the artist has a style guide, it personalizes the template.
- Template defaults — lowest priority. The recipe’s built-in values.
Video Modes
The video primitive supports 6 generation modes:
Set
mode explicitly, or omit it and the API infers the mode from the inputs you provide.
Iteration
Each primitive is independent. Redo any step without rerunning the whole pipeline:- Bad image? Regenerate with a different prompt or reference
- Caption too long? Regenerate with
length: "short" - Video glitchy? Analyze it, then regenerate with adjusted params
- Clip too short? Use
extendmode to continue it - Low quality? Upscale the image or video
- Everything good but wrong caption? Just re-run the edit step
Content Agent (Slack Bot)
The Recoup Content Agent is a Slack bot that generates social-ready artist videos on @mention. It plugs into the content creation pipeline and delivers results directly in your Slack thread.@Mention Syntax
Examples
Basic — single video with default template:Architecture
Data Flow
- Slack event →
POST /api/content-agent/slackhandles the webhook - Mention handler parses the command, calls
GET /api/content/validateto check artist readiness - Content creation triggered via
POST /api/content/create— returnsrunIds - Poll task (
poll-content-run) monitors the Trigger.dev runs every 30 seconds (up to 30 minutes) - Callback →
POST /api/content-agent/callbackreceives results and posts video URLs back to the Slack thread
Setup
1. Create a Slack App
- Go to api.slack.com/apps and create a new app
- Under OAuth & Permissions, add bot scopes:
chat:write— post messagesapp_mentions:read— receive @mention events
- Under Event Subscriptions:
- Enable events
- Set the request URL to
https://api.recoupable.dev/api/content-agent/slack - Subscribe to
app_mentionbot event
- Install the app to your workspace
2. Configure Environment Variables
3. Verify
Mention the bot in any Slack channel where it’s been added:- An immediate acknowledgment message
- A video URL reply in the thread after ~5-10 minutes
