🚀 Free API key — no credit card required

Mockup generation API.
Fastest available.

Render lifestyle product mockups via API. A 10,000-mockup library, or any custom Photoshop file. Rendered in seconds, trusted by the POD community.

  • JavaScript
  • Python
  • Laravel
  • Rails
const response = await fetch(
  "https://api.dynamicmockups.com/v1/renders",
  {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
      "X-API-KEY": "dm_live_your_key_here",
    },
    body: JSON.stringify({
      mockup_uuid: "c315f78f-d2c7...",
      smart_objects: [{
        uuid: "128394ee-6758...",
        asset: { url: "https://your-cdn.com/design.png" },
        color: "#ffd667",
      }],
    }),
  }
);

const { data } = await response.json();
console.log(data.rendered_image_url);
// → https://cdn.dynamicmockups.com/renders/abc123.png
import requests

response = requests.post(
    "https://api.dynamicmockups.com/v1/renders",
    headers={
        "Content-Type": "application/json",
        "X-API-KEY": "dm_live_your_key_here",
    },
    json={
        "mockup_uuid": "c315f78f-d2c7...",
        "smart_objects": [{
            "uuid": "128394ee-6758...",
            "asset": {"url": "https://your-cdn.com/design.png"},
            "color": "#ffd667",
        }],
    },
)

data = response.json()["data"]
print(data["rendered_image_url"])
# → https://cdn.dynamicmockups.com/renders/abc123.png
use Illuminate\Support\Facades\Http;

$response = Http::withHeaders([
    'Content-Type' => 'application/json',
    'X-API-KEY' => 'dm_live_your_key_here',
])->post('https://api.dynamicmockups.com/v1/renders', [
    'mockup_uuid' => 'c315f78f-d2c7...',
    'smart_objects' => [[
        'uuid' => '128394ee-6758...',
        'asset' => ['url' => 'https://your-cdn.com/design.png'],
        'color' => '#ffd667',
    ]],
]);

$data = $response->json()['data'];
echo $data['rendered_image_url'];
// → https://cdn.dynamicmockups.com/renders/abc123.png
require 'net/http'
require 'json'

uri = URI("https://api.dynamicmockups.com/v1/renders")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true

request = Net::HTTP::Post.new(uri)
request["Content-Type"] = "application/json"
request["X-API-KEY"] = "dm_live_your_key_here"
request.body = {
  mockup_uuid: "c315f78f-d2c7...",
  smart_objects: [{
    uuid: "128394ee-6758...",
    asset: { url: "https://your-cdn.com/design.png" },
    color: "#ffd667",
  }],
}.to_json

response = http.request(request)
data = JSON.parse(response.body)["data"]
puts data["rendered_image_url"]
# → https://cdn.dynamicmockups.com/renders/abc123.png

That’s it. One POST request, one rendered mockup.

< 1s
Median render time
99.9%
API uptime
1M+
Renders per month
5
Integrations

Interactive

Try it before you build it

Explore use cases, test with your own design assets, and see rendered results in real time. What you see is a fraction of what the API can do.

Use cases

What teams build with it

  • Print-on-demand platforms

    Let your sellers generate mockups inside your platform without leaving it. Render on upload, on product creation, or on demand.

    When a seller uploads a new design, we call the API to generate 8 mockup variants and attach them to the listing automatically.
  • Product customisation & configurators

    Power real-time product previews. Let customers see their design, logo, or text on your products before they buy, rendered from your own Photoshop templates.

    Our customers upload their logo and see it on 15 product types in real time. We use the Dynamic Mockups API for every render.
  • Catalogue & listing automation

    Generate product images for every SKU, colour variant and size in your catalogue automatically. One template, thousands of outputs.

    We went from 200 product images to 12,000 in a single weekend using the bulk render endpoint.
  • Agencies & creative studios

    Build mockup generation into your client workflows, with a custom PSD template per client for on-brand results at scale. No more Photoshop batch actions.

    We serve 40 e-commerce clients. The Dynamic Mockups API replaced our team of 3 photo editors.

Technical details

Everything you need to evaluate

Authentication
API key via X-API-KEY header
Base URL
https://app.dynamicmockups.com/api/v1
Response format
JSON with a CDN-hosted image URL
Render time (median)
< 1 second
Max concurrent requests
Based on plan; custom plans available
Template format
Adobe Photoshop (.psd) with smart objects
Output formats
PNG, JPG, WebP
Output resolution
Up to 4096 x 4096px (matches template resolution)
Integrations
Shopify, WooCommerce, Make, Zapier, Etsy
Uptime SLA
99.9%
Infrastructure
AWS, multi-region
Rate limiting
300/minute, extendable for Enterprise
Batch render speed
Up to 30 images in 4 seconds
Rendered image lifetime
24 hours, extendable for Enterprise
MCP server access
Yes

API pricing

Start free, scale on credits, or talk to us about volume.

Free

Explore the API, test your integration, and generate your first mockups.

$0

forever

Get Free API Key

What's included

  • 50 credits included
  • All API endpoints
  • Community support
  • API Playground access

API renders carry a watermark on the Free plan.

Recommended

Pro

For sellers and teams that need volume. Scale your renders with flexible credit packs.

From $15

per month, billed yearly

Get Started

Everything in Free, plus

  • 3,600 – 120,000 credits/year
  • No watermark
  • Full mockup template library
  • All integrations
  • $0.051/credit for top-ups

Custom

For platforms and enterprises that need volume, SLAs, and white-label solutions.

Custom

tailored to your scale

Talk to Us

Everything in Pro, plus

  • 10,000+ credits/month
  • Dedicated support & onboarding
  • White-label product editor
  • Custom SLA
  • Volume discounts

AI-assisted development

Build faster with AI

Connect the MCP server to your AI development workflow and let your assistant generate mockups, browse templates, and render designs for you.

Connect MCP Server

Automate mockup creation today.

Free API key. Use MCP. Connect integrations. Start building.