Use Case

White-Label Video Generation API for Agencies

Your clients want UGC video content inside your platform, not on someone else's. The agent-media API lets you embed video generation directly into your agency dashboard. TypeScript SDK, multi-tenant client isolation, batch generation for campaigns, and webhook callbacks when videos are ready. White-label output with zero agent-media branding. $3 per video, your margin, your pricing. See pricing.

The Problem: Building Video Generation Is Hard

Your agency platform already manages campaigns, creatives, and client accounts. Now clients are asking for AI-generated UGC videos. Building a video pipeline from scratch means stitching together text-to-speech, lip sync, avatar rendering, and video compositing. That is 6 to 12 months of engineering work and a team of ML specialists you do not have.

Redirecting clients to a third-party tool breaks the experience. They leave your platform, create another account, learn another interface. Your agency loses control of the workflow and the relationship. Worse, the client starts wondering why they need you at all.

What you need is an API that handles the entire video pipeline behind the scenes while your platform stays front and center. One integration, multi-tenant isolation per client, and output that arrives with no third-party branding attached.

The Solution: Embed Video Generation via API

agent-media exposes a REST API and TypeScript SDK that your engineering team can integrate in a single sprint. Wrap the SDK in a branded service layer, generate videos on behalf of any client, and deliver finished mp4 files through your own UI. The client never sees agent-media.

Multi-tenant support means you isolate actors, scripts, and brand assets per client. Batch endpoints let you kick off entire campaign variants in one call. Webhooks notify your system when each video completes so your client dashboard updates in real time.

Production cost is $3 per video. If you bill clients $100 to $300 per video, your gross margin is 97% to 99%. Video generation becomes your most profitable feature, not an engineering cost center. Get your API key.

Integration Examples

Wrap the SDK in your branded service. Generate videos for any client with their brand assets.

1

Wrap the SDK in a branded service

Initialize the SDK once and expose your own interface. Your platform calls videoService.generate() — clients never see the underlying API.

video-service.ts

import { AgentMedia } from '@agent-media/sdk'

const client = new AgentMedia({ apiKey: process.env.AGENT_MEDIA_KEY })

export async function generateForClient(

clientId: string,

script: string,

actorId: string,

brandAssets: { logoUrl: string; colors: string[] }

) {

const video = await client.videos.create({

script,

actor: actorId,

metadata: { clientId, ...brandAssets },

webhook: `https://your-app.com/hooks/video/${clientId}`

})

return video

}

2

Batch generate for a campaign

Submit an array of video jobs in one API call. Each job can target a different actor, script variant, or client. The batch endpoint returns a job ID you can poll or receive via webhook.

campaign-batch.ts

const batch = await client.videos.createBatch({

jobs: [

{ script: "This serum changed my skin...", actor: "sofia", metadata: { clientId: "skincare-co" } },

{ script: "Best pre-workout I've tried...", actor: "jake", metadata: { clientId: "fit-supps" } },

{ script: "We saved 5 hours per week...", actor: "marcus", metadata: { clientId: "saas-app" } },

],

webhook: "https://your-app.com/hooks/batch"

})

// batch.id → poll or wait for webhook

3

Receive webhooks in your client dashboard

When a video finishes rendering, agent-media sends a POST to your webhook URL with the video URL, status, and metadata. Use it to update your client dashboard in real time.

webhook-handler.ts

export async function POST(req: Request) {

const { videoId, status, url, metadata } = await req.json()

// Update your client's dashboard

await db.videos.create({

clientId: metadata.clientId,

videoUrl: url,

status,

})

// Notify the client

await notifyClient(metadata.clientId, "Your video is ready")

}

Pricing at Scale

Each video costs roughly $3 in credits. A Pro Plus plan at $129/month gives you 12,900 credits (about 43 videos). Need more? Credit packs at $39 for 3,900 credits let you scale on demand. Credits never expire.

For high-volume agencies, the math is straightforward. Bill clients $100 to $300 per video through your platform. Your cost is $3. The API integration turns video generation into your highest-margin feature.

Monthly VolumeAPI CostClient RevenueGross Margin
10 videos$30$1,500$1,470 (98%)
25 videos$75$3,750$3,675 (98%)
43 videos (Pro Plus)$129$6,450$6,321 (98%)
100 videos$300$15,000$14,700 (98%)

Revenue assumes $150/video client rate. Your actual pricing may vary. View full pricing.

Why agent-media for Agency Platforms

TypeScript SDK

First-class TypeScript support with full type definitions. npm install, import, and start generating. No REST boilerplate needed.

Multi-tenant isolation

Tag every video with client metadata. Assign dedicated actors per client so competing brands never share faces.

Batch generation

Submit an array of video jobs in one API call. Generate an entire campaign of variants for multiple clients at once.

Webhook callbacks

Receive real-time POST notifications when videos complete. Update your client dashboard without polling.

White-label output

Videos have no agent-media watermark or branding. Serve them through your own CDN. Clients see your platform, not ours.

200 AI actors

Different clients, different audiences, different faces. Assign exclusive actors per client to avoid overlap across competing brands.

Integration Architecture

Service layer pattern. Wrap the agent-media SDK in a service class inside your backend. Your API routes call the service, the service calls agent-media. If you ever need to swap providers, you change one file.

Client metadata for multi-tenancy. Every API call accepts a metadata object. Store the client ID, brand colors, logo URL, and any custom fields. This metadata flows through to webhooks, so your handler knows exactly which client to notify.

Webhook-driven updates. Video rendering takes 2 to 5 minutes. Instead of polling, register a webhook URL per client or per batch. agent-media POSTs the finished video URL, status, and your metadata back to your server. Update the client dashboard and send a notification.

Credit management at scale. Use credit packs to pre-purchase volume. Track usage per client in your own billing system. Bill clients per video, per month, or as part of a retainer. The API returns credit balance so you can enforce limits in your platform.