For SaaS Builders & Product Teams

Ship AI image & video generation inside your product

One OpenAI-compatible API gives your app access to 10+ image and video models. No infra to build, no subscriptions to manage, no vendor lock-in.

Automatic failover keeps your feature online. Pay only for what your users generate.

The Problem

Building AI generation into your app is harder than it should be

Most teams cobble together multiple vendor APIs, each with its own SDK, billing, and failure modes. Here is what a typical integration stack looks like:

Component
Cost
Pain
OpenAI DALL-E 3 API
$0.08/image
Tier-gated, unpredictable rate limits
Runway API subscription
$76+/mo
Video β€” separate SDK, separate billing
Polling infrastructure
Engineering weeks
Build & maintain async job queues
Failover logic
Engineering weeks
Handle provider outages in your code
Per-user metering
Engineering weeks
Build usage tracking & billing bridge
Estimated base cost (5,000 images/mo)$476+/mo + engineering time
Why CreativeAI

One API β€” everything your app needs

OpenAI SDK Compatible

Same /v1/images/generations endpoint, same request/response shape. Change base_url and ship β€” works with OpenAI Python, Node.js, and Vercel AI SDK.

One Key, 10+ Models

GPT Image 1, Seedance 1.5, Kling v3, Kling O3, Veo 3.1 β€” image and video models from a single API key. Switch models with one parameter.

Automatic Failover

If the primary model fails or returns a false-positive content rejection, CreativeAI retries on a backup model automatically. Billed at the lower rate.

Pay-Per-Use Economics

No subscriptions, no per-seat fees, no minimum commitment. Pay only for generations your users trigger. $0 when idle, scales linearly.

Webhooks with HMAC

Async video jobs POST results to your endpoint when done β€” HMAC-SHA256 signed, 3 retries with exponential backoff. No polling infra to build.

Per-Key Spend Controls

Set monthly spend caps, alert thresholds, and custom rate limits per API key. Isolate environments, customer tiers, or features.

Use Cases

What teams are building with the API

Design tools & editors

Let users generate images and videos directly inside your design platform, Canva-style editor, or creative suite.

POST /v1/images/generations with user prompt β†’ render in canvas

Thumbnail & social image tools

Generate YouTube thumbnails, social media graphics, and multi-platform image variants on demand. Title-safe composition prompting reserves space for text overlays. Batch multiple sizes per request β€” 1:1, 9:16, 16:9 β€” from a single prompt.

1 topic β†’ 4 title-safe thumbnail variants at ~$0.21/each, ~3-8s parallelSee thumbnail backend workflow β†’

Social content scheduling platforms

Power the visual layer behind social scheduling and auto-posting tools. Generate feed images, story graphics, and short promo clips per scheduled post β€” one API key covers image + video. Multi-format output (1:1, 9:16, 16:9) from a single prompt.

20 posts/day Γ— mixed formats + I2V clips = ~$4.76/day per customerSee social scheduling backend workflow β†’

Ad creative & content platforms

Generate bulk ad-creative variations from product images β€” different styles, aspect ratios, and copy overlays in one batch. Power daily auto-posting, multilingual variants, and A/B creative testing at scale.

Product image + 10 style prompts β†’ 10 ad variants via concurrent requestsSee agency workflow proof β†’

Product video & catalog apps

Convert product images into short videos (I2V), generate lifestyle shots, and batch-process entire catalogs. Webhook delivery per SKU β€” no polling infra needed.

Product image_url β†’ POST /v1/video/generations β†’ webhook callbackSee catalog workflow proof β†’

Food & menu photo tools

Generate menu photos, food styling shots, and seasonal social content for restaurants and local businesses. Recurring weekly/monthly visual refresh workflows fit the pay-per-use model perfectly.

Menu item prompt β†’ styled food photo β†’ schedule to social channelsSee restaurant tool backend workflow β†’

AI agents & chatbots

Give your AI assistant the ability to generate images and videos in-conversation. Works with LangChain, custom agents, or any orchestration layer.

Agent tool call β†’ generate image β†’ return URL in chat

Newsletter & email visual tools

Generate header images, inline graphics, and visual content for newsletter platforms and email marketing tools. Lightweight per-image pricing beats fixed subscriptions for tools with variable send volume.

Newsletter topic β†’ header image + 3 section graphics in one batchSee newsletter workflow proof β†’

Print & merch platforms

Let customers create custom designs for print-on-demand products β€” t-shirts, posters, phone cases β€” powered by AI generation.

User prompt β†’ generate design β†’ preview on product mockupSee POD workflow proof β†’
Real-World Backend Workflow

Social content platform: one API behind the scenes

If your product schedules, auto-posts, or manages social content for users, here is what the image + video backend looks like with CreativeAI.

Daily content pipeline for a social scheduling SaaS

Your users schedule 20 posts per day across Instagram, TikTok, LinkedIn, and X. Your backend generates the visuals on-demand before each post goes live.

Feed images (1:1)GPT Image 1 at 1080x1080 β€” product shots, quotes, carousel stills
8 posts/day
24 credits
~$1.68
Story/Reel images (9:16)GPT Image 1 at 1080x1920 β€” vertical story graphics, promo stills
6 posts/day
18 credits
~$1.26
Short video clips (I2V)Kling v3 5s clips from hero images β€” async, webhook delivery
4 posts/day
20 credits
~$1.40
Thumbnail variantsGPT Image 1 at 1280x720 β€” YouTube/blog thumbnails from post topic
2 posts/day
6 credits
~$0.42
Daily total: 20 posts, 68 credits
~$4.76/day Β· ~$143/month for one customer's full content pipeline
Compare: DALL-E 3 alone = $1.60/day for 20 images, no video

Images: synchronous

Feed and story images return in 3-10s. Generate just before the scheduled post time β€” no pre-rendering queue needed.

Videos: async + webhook

Submit I2V jobs 5-10 minutes before post time. Result arrives via HMAC-signed webhook. No polling infra to build.

Multi-platform sizes

One prompt β†’ concurrent requests for 1:1, 9:16, 16:9 variants. Same API, same key, same billing.

python β€” one-key image + video backend for a social scheduling SaaS
import asyncio, aiohttp

API_IMG = "https://api.creativeai.run/v1/images/generations"
API_VID = "https://api.creativeai.run/v1/video/generations"
KEY = "YOUR_CREATIVEAI_KEY"
WEBHOOK = "https://your-app.com/api/webhooks/content-ready"

async def generate_scheduled_post(session, post):
    """Generate image + optional video for a scheduled social post."""
    # 1. Generate the post image (~3 credits, ~$0.21)
    img_resp = await session.post(API_IMG, headers={
        "Authorization": f"Bearer {KEY}",
        "Content-Type": "application/json",
    }, json={
        "model": "gpt-image-1",
        "prompt": post["image_prompt"],
        "size": post["size"],  # "1080x1080" for feed, "1080x1920" for stories
    })
    img = await img_resp.json()
    result = {"post_id": post["id"], "image_url": img["data"][0]["url"]}

    # 2. If post needs a video clip, submit async job (~5 credits, ~$0.36)
    if post.get("video_prompt"):
        vid_resp = await session.post(API_VID, headers={
            "Authorization": f"Bearer {KEY}",
            "Content-Type": "application/json",
        }, json={
            "model": "kling-v3",
            "prompt": post["video_prompt"],
            "image_url": img["data"][0]["url"],  # I2V from the still
            "duration": "5s",
            "webhook_url": f"{WEBHOOK}?post_id={post['id']}",
        })
        vid = await vid_resp.json()
        result["video_job_id"] = vid["id"]

    return result

async def batch_content_pipeline(scheduled_posts):
    """Process a day's scheduled posts β€” images sync, videos async."""
    async with aiohttp.ClientSession() as session:
        tasks = [generate_scheduled_post(session, p) for p in scheduled_posts]
        return await asyncio.gather(*tasks)

# Example: 20 scheduled posts/day β†’ ~$4.76-$6.80 total
# Images return immediately; videos arrive via webhook
Creator-Tool Backend

Thumbnail tool backend: variants at $0.21 each

If your product generates YouTube thumbnails, blog headers, or newsletter visuals, here is what batch variant generation looks like with CreativeAI as your image backend.

A/B thumbnail variants for one user request

Your user enters a video title. Your backend generates 4-6 thumbnail options with title-safe composition β€” negative space reserved for text overlay β€” so your front-end can composite headlines without clipping the subject.

Thumbnail variants (4)GPT Image 1 at 1280x720 β€” title-safe layouts, varied styles per brief
4 images
12 credits
~$0.84
Newsletter headerGPT Image 1 at 1200x400 β€” wide-format with top-third safe zone for headline
1 image
3 credits
~$0.21
Social square variantGPT Image 1 at 1080x1080 β€” repurposed thumbnail for Instagram/LinkedIn
1 image
3 credits
~$0.21
Per-request total: 6 images, 18 credits
~$1.26 per user request Β· 1,000 users/day = ~$1,260/month
Compare: DALL-E 3 alone = $0.48 for 6 images, no title-safe prompting
python β€” batch thumbnail variants with title-safe composition
import asyncio, aiohttp

API = "https://api.creativeai.run/v1/images/generations"
KEY = "YOUR_CREATIVEAI_KEY"

# Title-safe prompt suffix β€” ensures negative space for text overlay
TITLE_SAFE = (
    "Leave the top-third of the frame as clean negative space "
    "suitable for bold headline text overlay. No important subject "
    "detail in the top 30% of the image."
)

STYLES = [
    "Vibrant pop-art style, saturated colors, dramatic lighting",
    "Clean minimalist, soft gradient background, studio lighting",
    "Cinematic film grain, moody tones, shallow depth of field",
    "Bold graphic illustration, flat colors, strong silhouette",
]

async def generate_thumbnail_variants(session, topic: str, count: int = 4):
    """Generate multiple title-safe thumbnail options from one topic."""
    tasks = []
    for i, style in enumerate(STYLES[:count]):
        tasks.append(session.post(API, headers={
            "Authorization": f"Bearer {KEY}",
            "Content-Type": "application/json",
        }, json={
            "model": "gpt-image-1",
            "prompt": f"{topic}. {style}. {TITLE_SAFE}",
            "size": "1280x720",
        }))

    responses = await asyncio.gather(*tasks)
    results = []
    for i, resp in enumerate(responses):
        data = await resp.json()
        results.append({
            "variant": i + 1,
            "style": STYLES[i],
            "url": data["data"][0]["url"],
        })
    return results  # 4 variants, ~$0.84 total, ~3-8s parallel

# Example: user enters "I Tested Every AI Code Editor"
# β†’ 4 title-safe thumbnail options ready for text compositing

Title-safe composition

Prompt engineering reserves negative space for headline overlays. Your front-end composites text without clipping the subject.

Parallel variant generation

Fire 4-6 concurrent requests β€” all return in 3-8 seconds. Your user picks their favorite, not your algorithm.

Predictable per-image economics

~$0.21/thumbnail at volume rates. No tiered pricing surprises, no monthly minimums, no overage penalties.

Restaurant-Tool Backend

Restaurant marketing tool: food photos at $0.21 each

If your product generates menu photos, daily specials, or social content for restaurants and local food businesses, here is what the backend looks like with CreativeAI.

Multi-location daily content pipeline

Your platform manages 30 restaurant locations. Each location needs fresh food photos for delivery apps, social media, and seasonal menu updates β€” generated automatically.

Daily specials photography30 locations Γ— 5 specials β€” GPT Image 1, styled food photography prompts
150 photos/day
450 credits
~$31.50
Delivery app listings30 locations Γ— 3 new items β€” Uber Eats, DoorDash, Grubhub menu images
90 photos/week
270 credits
~$18.90
Social media graphics30 locations Γ— 2 posts β€” Instagram/Facebook promo creatives
60 posts/week
180 credits
~$12.60
Seasonal menu refresh30 locations Γ— 10 new dishes β€” full menu photography refresh
300 photos/quarter
900 credits
~$63
Monthly total: 30 locations, ~3,600 photos
~$1,100/month for your entire location fleet Β· ~$37/location/month
Compare: food photographer = $200-500/location/month
python β€” multi-location food photo pipeline
import asyncio, aiohttp

API = "https://api.creativeai.run/v1/images/generations"
KEY = "YOUR_CREATIVEAI_KEY"

async def generate_menu_photos(session, location: dict):
    """Generate a day's food photos for one restaurant location."""
    results = []
    for item in location["menu_items"]:
        resp = await session.post(API, headers={
            "Authorization": f"Bearer {KEY}",
            "Content-Type": "application/json",
        }, json={
            "model": "gpt-image-1",
            "prompt": f"Appetizing {item['name']}: {item['description']}, "
                      f"professional food photography, white plate, "
                      f"restaurant table, warm lighting, top-down angle",
            "size": "1024x1024",
        })
        data = await resp.json()
        results.append({
            "location_id": location["id"],
            "item": item["name"],
            "url": data["data"][0]["url"],
        })
    return results

async def daily_content_run(locations: list):
    """Batch food photos across all locations β€” ~$0.21/photo."""
    async with aiohttp.ClientSession() as session:
        tasks = [generate_menu_photos(session, loc) for loc in locations]
        return await asyncio.gather(*tasks)

# 30 locations Γ— 5 daily specials = 150 photos β†’ ~$31.50/day
# Each location gets fresh social-ready food content

Per-location economics

~$37/location/month for daily food content. Charge $99–199/location and keep 60–80% margin. No volume tiers or overage penalties.

Multi-platform output

Generate once, distribute to delivery apps, Google Business, Instagram, and print menus. Size variants from the same prompt.

Recurring revenue fit

Restaurants need fresh photos weekly β€” daily specials, seasonal menus, promo graphics. Pay-per-image aligns your COGS to their usage.

Property-Media Backend

Listing-photo β†’ video: async at $0.36/clip

If your product turns property photos into walkthrough videos, virtual tours, or listing-ad clips for real-estate agents, here is what the I2V backend looks like with CreativeAI.

Weekly listing-video pipeline for a property platform

Your platform serves 20 agents. Each agent lists ~5 new properties per week, and each listing needs 3 room clips delivered via webhook to their CRM or MLS feed.

Room walkthrough clips (I2V)20 agents Γ— 5 listings Γ— 3 rooms β€” Kling v3 5s clips from listing photos, async webhook delivery
300 clips/week
1,500 credits
~$107
Hero exterior clips (I2V)20 agents Γ— 5 listings Γ— 1 exterior β€” cinematic pan from front-of-house photo
100 clips/week
500 credits
~$36
Listing still variants20 agents Γ— 5 listings Γ— 2 variants β€” styled hero images for social/ad use
200 images/week
600 credits
~$42
Weekly total: 600 assets, 2,600 credits
~$185/week Β· ~$740/month Β· ~$37/agent/month
Compare: videographer = $200-500/listing
python β€” listing-photo to video pipeline
import asyncio, aiohttp

API_IMG = "https://api.creativeai.run/v1/images/generations"
API_VID = "https://api.creativeai.run/v1/video/generations"
KEY = "YOUR_CREATIVEAI_KEY"
WEBHOOK = "https://your-app.com/api/webhooks/listing-video-ready"

async def listing_photo_to_video(session, listing: dict):
    """Turn listing photos into short property walkthrough clips."""
    jobs = []
    for photo in listing["photos"]:
        resp = await session.post(API_VID, headers={
            "Authorization": f"Bearer {KEY}",
            "Content-Type": "application/json",
        }, json={
            "model": "kling-v3",
            "prompt": f"Smooth cinematic pan across {photo['room_type']}, "
                      f"natural lighting, real estate showcase",
            "image_url": photo["url"],
            "duration": "5s",
            "webhook_url": f"{WEBHOOK}?listing_id={listing['id']}"
                           f"&photo_id={photo['id']}",
        })
        data = await resp.json()
        jobs.append({
            "listing_id": listing["id"],
            "photo_id": photo["id"],
            "job_id": data["id"],
        })
    return jobs

async def batch_listing_videos(listings: list):
    """Submit I2V jobs for all listings β€” results arrive via webhook."""
    async with aiohttp.ClientSession() as session:
        tasks = [listing_photo_to_video(session, l) for l in listings]
        return await asyncio.gather(*tasks)

# 20 agents Γ— 5 listings Γ— 3 rooms = 300 videos/batch
# ~$0.36/clip β†’ $108/batch, results via signed webhook

Async + webhook delivery

Submit I2V jobs in bulk, results arrive via HMAC-signed webhook. No polling queues to build β€” your app just handles the callback.

Per-asset economics

~$0.36/video clip, ~$0.21/image. Charge per listing or per agent seat and maintain healthy margins. Zero monthly minimums.

White-label ready

Per-client API keys with spend controls. No CreativeAI branding. Your agents see your product, not ours.

Ad-Creative Backend

Ad creative platform: bulk variations at $0.21 each

If your product generates ad creatives, A/B variations, or multi-platform ad assets for advertisers, here is what the backend looks like with CreativeAI.

Multi-platform ad variation pipeline

Your platform serves 100 advertisers. Each advertiser needs 5–10 creative variations per campaign across Instagram, Facebook, Google Display, TikTok, and email β€” generated on demand.

Platform-specific ad creatives100 advertisers Γ— 5 platform variants β€” Instagram Story, Facebook Feed, Google Display, TikTok, Email
500 images/day
1,500 credits
~$107
A/B style testingTop 20 campaigns Γ— 10 style variants β€” color, layout, copy overlay testing
200 images/day
600 credits
~$43
Product-image ad videosTop 50 products β†’ 5s animated ad clips via async I2V + webhook delivery
50 videos/day
250 credits
~$18
Seasonal campaign refresh100 advertisers Γ— 10 seasonal creatives β€” holiday, sale, event-themed variations
1,000 images/week
3,000 credits
~$213
Monthly total: 100 advertisers, ~21,000 images + 1,500 videos
~$5,900/month backend cost Β· ~$59/advertiser/month
Compare: per-advertiser stock/designer = $200-500/month
python β€” bulk ad-creative variation pipeline
import asyncio, aiohttp, json

API = "https://api.creativeai.run/v1/images/generations"
KEY = "YOUR_CREATIVEAI_KEY"

# One product image β†’ multiple ad-creative variations
PRODUCT = "https://cdn.example.com/products/sneaker-hero.png"

VARIATIONS = [
    {"style": "Instagram Story",  "size": "1080x1920", "prompt": "Premium sneaker on gradient background, bold sale text overlay, vertical story format"},
    {"style": "Facebook Feed",    "size": "1200x628",  "prompt": "Lifestyle shot of sneaker on urban street, warm tones, horizontal ad banner"},
    {"style": "Google Display",   "size": "300x250",   "prompt": "Clean product shot of sneaker, white background, compact square layout"},
    {"style": "TikTok Cover",     "size": "1080x1920", "prompt": "Dynamic sneaker with motion blur, neon accents, vertical video thumbnail"},
    {"style": "Email Hero",       "size": "600x400",   "prompt": "Sneaker with seasonal props, soft lighting, email-friendly warm palette"},
]

async def generate_variation(session, variation):
    resp = await session.post(API, headers={
        "Authorization": f"Bearer {KEY}",
        "Content-Type": "application/json",
    }, json={
        "model": "gpt-image-1",
        "prompt": variation["prompt"],
        "size": variation["size"],
    })
    result = await resp.json()
    return {"style": variation["style"], "url": result["data"][0]["url"]}

async def bulk_ad_variations():
    async with aiohttp.ClientSession() as session:
        tasks = [generate_variation(session, v) for v in VARIATIONS]
        results = await asyncio.gather(*tasks)
    # 5 platform-targeted creatives from one product, ~10s total
    for r in results:
        print(f'{r["style"]}: {r["url"]}')
    return results

asyncio.run(bulk_ad_variations())

Per-creative economics

~$0.21/image, ~$0.36/video clip. Charge advertisers per campaign or per variation and maintain healthy margins. No volume tiers or monthly minimums.

Parallel generation

Generate all platform variants in parallel β€” 5 ad sizes from one product image in ~3-8 seconds. Async video variations arrive via webhook.

White-label + per-client keys

Issue separate API keys per advertiser account. Track spend, set caps, revoke access independently. Zero CreativeAI branding on outputs.

Social-Content Backend

Social-content platform: one key for image + video

If your product schedules social posts, automates marketing content, or powers visual workflows for brands β€” here is what the backend looks like when one API key handles both image generation and short-form promo video.

Daily content pipeline β€” images + promo clips

Your platform serves 200 brands. Each brand schedules 2–5 social posts per day β€” feed images, story graphics, and occasional short video clips β€” generated on demand.

Feed & story images200 brands Γ— 3 posts/day β€” Instagram feed, LinkedIn card, Twitter/X graphic
600 images/day
1,800 credits
~$128
Short promo video clipsTop 50% of brands Γ— 1 clip/day β€” 5s animated post from the still image via I2V + webhook
100 videos/day
500 credits
~$36
Multi-format resizingBest-performing posts β†’ re-prompt for Story (9:16), Feed (1:1), and Banner (16:9) variants
400 images/day
1,200 credits
~$85
Weekly brand refresh200 brands Γ— 1 template refresh β€” seasonal palette or campaign-specific visual refresh
200 images/week
600 credits
~$43
Monthly total: 200 brands, ~33,000 images + 3,000 videos
~$8,100/month backend cost Β· ~$40.50/brand/month
Compare: separate image + video APIs = $200-400/month per brand
python β€” social-content pipeline: image + promo video per post
import asyncio, aiohttp

API_IMG = "https://api.creativeai.run/v1/images/generations"
API_VID = "https://api.creativeai.run/v1/video/generations"
KEY = "YOUR_CREATIVEAI_KEY"
WEBHOOK = "https://your-app.com/api/webhooks/content-ready"

async def generate_scheduled_post(session, post):
    """Generate image + optional video for a scheduled social post."""
    # 1. Generate the post image (~3 credits, ~$0.21)
    img_resp = await session.post(API_IMG, headers={
        "Authorization": f"Bearer {KEY}",
        "Content-Type": "application/json",
    }, json={
        "model": "gpt-image-1",
        "prompt": post["image_prompt"],
        "size": post["size"],  # "1080x1080" for feed, "1080x1920" for stories
    })
    img = await img_resp.json()
    result = {"post_id": post["id"], "image_url": img["data"][0]["url"]}

    # 2. If post needs a video clip, submit async job (~5 credits, ~$0.36)
    if post.get("video_prompt"):
        vid_resp = await session.post(API_VID, headers={
            "Authorization": f"Bearer {KEY}",
            "Content-Type": "application/json",
        }, json={
            "model": "kling-v3",
            "prompt": post["video_prompt"],
            "image_url": img["data"][0]["url"],  # I2V from the still
            "duration": "5s",
            "webhook_url": f"{WEBHOOK}?post_id={post['id']}",
        })
        vid = await vid_resp.json()
        result["video_job_id"] = vid["id"]

    return result

async def batch_content_pipeline(scheduled_posts):
    """Process a day's scheduled posts β€” images sync, videos async."""
    async with aiohttp.ClientSession() as session:
        tasks = [generate_scheduled_post(session, p) for p in scheduled_posts]
        return await asyncio.gather(*tasks)

# Example: 20 scheduled posts/day β†’ ~$4.76-$6.80 total
# Images return immediately; videos arrive via webhook

One key, both modalities

Generate feed images and short promo clips from a single API key. No separate video subscription or SDK. Async video jobs deliver results via signed webhook.

Per-brand economics

~$0.21/image, ~$0.36/video clip. A brand posting 3 posts/day with 1 promo clip costs ~$30/month. Charge $79–149/month and keep 50–80% margin.

Platform-ready isolation

Issue separate API keys per brand or workspace. Track spend, set caps, revoke access independently. Zero CreativeAI branding β€” your users see your product.

Integration

Integrate in minutes, not weeks

If your app already uses the OpenAI SDK, change two lines. If not, it is a standard REST API.

python β€” openai SDK
from openai import OpenAI

# Drop-in replacement β€” same SDK, different base_url
client = OpenAI(
    api_key="YOUR_CREATIVEAI_KEY",
    base_url="https://api.creativeai.run/v1"
)

# Generate an image for your user
result = client.images.generate(
    model="gpt-image-1",
    prompt=user_prompt,
    size="1024x1024"
)

image_url = result.data[0].url
# β†’ Serve to your user, store in your DB, etc.
Comparison

DIY multi-vendor stack vs. CreativeAI

Feature
DIY / Multi-Vendor
CreativeAI
Integration effort
Separate SDK per provider β€” different auth, formats, error codes
One OpenAI-compatible endpoint β€” swap base_url and ship
Model access
One model per vendor, separate contracts
10+ image & video models via one API key
Reliability
Provider goes down β†’ your feature goes down
Automatic failover across models β€” billed at lower rate
Async video handling
Build polling queues, manage timeouts yourself
Webhook callbacks with HMAC signatures β€” zero infra to build
Cost model
Fixed subscriptions β€” pay even when users are inactive
Pay per generation β€” $0 when idle, scales linearly
Spend controls
Build your own metering layer
Per-key monthly caps, spend alerts, key rotation
Content-policy handling
Request rejected β†’ show error to user
Auto-retry on backup model for false-positive rejections
White-label ready
Provider branding leaks into responses, headers, or error pages
Zero branding β€” per-client API keys, no end-user-visible attribution
High-volume batch
Build concurrency limits, retry queues, and job tracking yourself
Concurrent async jobs with per-job webhook delivery β€” scales to catalog size
Transparent Pricing

Pay for generations, not seats or tiers

No subscriptions. Buy credits, use them when your users need them. Credits never expire.

GPT Image 1Image
3 credits
~$0.21–$0.30 per generation
Kling v3 StandardVideo
5 credits
~$0.36–$0.50 per generation
Kling v3 ProVideo
10 credits
~$0.71–$1.00 per generation
Kling O3 StandardVideo
8 credits
~$0.57–$0.80 per generation
Kling O3 ProVideo
15 credits
~$1.07–$1.50 per generation
Seedance 1.5Video
15 credits
~$1.07–$1.50 per generation

Volume Discounts

$10 – $24
10% bonus credits
$25 – $49
20% bonus credits
$50 – $99
30% bonus credits
$100+
40% bonus credits
Unit Economics

What your product actually costs to run

Real volume scenarios for SaaS products that embed AI generation. These assume the $100+ tier (40% bonus = 1,400 credits/$100, effective ~$0.21/image, ~$0.36/video).

Your product
Monthly vol.
API cost
Revenue
Margin
Thumbnail tool200 users Γ— 30 thumbnails/mo
6K images
$1,260
$15/user = $3,000
58%
Social content platform50 users Γ— 60 posts + 5 videos/mo
3K img + 250 vid
$728
$49/user = $2,450
70%
Newsletter visual tool100 users Γ— 30 headers/mo
3K images
$639
$15/user = $1,500
57%
Restaurant marketing app30 locations Γ— 40 food photos/mo
1.2K images
$256
$49/loc = $1,470
83%
Real estate listing video tool20 agents Γ— 3 listings/wk Γ— 3 rooms + stills
720 vid + 360 img/mo
$333/mo
$99/agent = $1,980
83%
Ad creative platform100 advertisers Γ— 30 creatives + 5 videos/mo
3K img + 500 vid
$817
$99/adv = $9,900
92%
Your COGS stays flat per-request β€” no tiers to negotiate, no monthly minimums, no overage penalties.
Scale up or down without renegotiating contracts.
How It Works

From zero to production in four steps

1

Get your API key

Sign up free, grab an API key from the dashboard. 50 credits included β€” no credit card.

2

Integrate in your app

Use the OpenAI SDK or any HTTP client. Change base_url to api.creativeai.run/v1.

3

Set spend controls

Configure per-key monthly caps and rate limits. Separate keys for dev, staging, and prod.

4

Ship to your users

Your users generate images and videos through your product. You pay per generation.

FAQ

Common questions from product teams

API Sunset Protection

Your users’ generation backend is at risk

Two major provider shutdowns are happening now. If your product depends on a single generation API, your feature breaks when that provider shuts down. Multi-model routing means your users never notice.

Sora 1 β€” March 13, 2026Tomorrow
  • Sora 1 API has been shut down
  • Sora 2 requires $200/mo ChatGPT Pro β€” no standalone API
  • CreativeAI: 5+ video models (Kling v3, Seedance 1.5, Veo 3.1) on one key

Use code SORASWITCH for 50 free video credits.

Sora migration guide
DALL-E 2 & 3 β€” May 12, 202662 days
  • DALL-E 2 already deprecated β€” DALL-E 3 API shuts down May 12
  • Products using dall-e-3 model will stop generating entirely
  • CreativeAI: dall-e-3 alias auto-routes to GPT Image 1 β€” zero-change migration

Use code DALLE1000 for 3,000 free image credits.

DALL-E migration guide

Why multi-model routing protects your product

Automatic failover

If a provider shuts down or returns errors, requests route to a backup model transparently. Your users see results, not error pages.

No single-provider lock-in

Your integration uses one endpoint. Model changes happen behind the API β€” no client-side code changes when providers come and go.

New models, same integration

When better models launch, they appear as new model parameters on the same endpoint. Upgrade quality without re-integrating.

Start building with CreativeAI today

50 free credits on signup. No credit card required. Ship AI image and video generation inside your app in minutes.