AI Product Photo Generator

AI product photography for any subject — a product, app, café, or service. It studies your uploaded photos, writes a scenario that fits the subject, and renders ONE cohesive, art-directed, social-ready photo with a deliberate concept, palette, and light.

Input
Output
Layered tropical iced drink

~$0.90 per photoshoot·Run it free in the playground, then call it from your app.

Photos of what you're promoting — a product packshot, an app screenshot or device mockup, your storefront/interior, a dish, anything. Clean, well-lit shots work best. Whatever it is, it stays true across the set.

Loading…

No inputs handy? Try one of these

Output appears here — run the skill, or pick an example to see a real input/output pair.

For developers

Run it from your own stack.

This skill is an API. One call runs the whole pipeline server-side as a long-running job and returns the result — from Python, plain HTTP, or an MCP-connected coding agent.

API access — MCP · Python SDK · cURL · JSON schemas
MCP· recommended for coding agents
claude mcp add --transport http puras https://mcp.puras.co/mcp

OAuth on first call — no key to paste. Then ask the agent to run social-photo from skill puras/product-ad-studio.

CLI
pip install puras puras login # or set PURAS_API_KEY puras run puras/product-ad-studio/social-photo -i key=value
Python SDK
import puras client = puras.Client() # PURAS_API_KEY from env result = client.run("puras/product-ad-studio/social-photo", {"style":"natural","aspect_ratio":"1:1","include_people":true,"product_images":["https://uozfqcfhlhugotnevscg.supabase.co/storage/v1/object/public/puras-public-skills/product-ad-studio/tropical-product.webp"]})
HTTP API· wait=true blocks until the job finishes
curl -X POST "https://api.puras.co/v1/jobs?skillpack=puras/product-ad-studio&wait=true" \ -H "Authorization: Bearer $PURAS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"skill":"social-photo","inputs":{"style":"natural","aspect_ratio":"1:1","include_people":true,"product_images":["https://uozfqcfhlhugotnevscg.supabase.co/storage/v1/object/public/puras-public-skills/product-ad-studio/tropical-product.webp"]}}'
Input schema (JSON Schema)
{
  "type": "object",
  "required": [
    "product_images"
  ],
  "properties": {
    "brief": {
      "type": "text",
      "maxLength": 2000,
      "description": "Optional. What it is, who it's for, the vibe. A URL works too."
    },
    "style": {
      "enum": [
        "auto",
        "premium",
        "minimal",
        "warm",
        "bold",
        "playful",
        "natural",
        "editorial"
      ],
      "type": "string",
      "description": "Visual tone for the set. `auto` picks the best fit for the subject."
    },
    "aspect_ratio": {
      "enum": [
        "9:16",
        "4:5",
        "1:1",
        "16:9"
      ],
      "type": "string",
      "default": "1:1",
      "description": "Output frame for the photo. Default 1:1."
    },
    "include_people": {
      "type": "boolean",
      "default": true,
      "description": "Allow shots with anonymous people (in-use, on-model, a café guest). On by default."
    },
    "product_images": {
      "type": "array",
      "items": {
        "type": "image"
      },
      "maxItems": 5,
      "minItems": 1,
      "description": "Photos of what you're promoting — a product packshot, an app screenshot or device mockup, your storefront/interior, a dish, anything. Clean, well-lit shots work best. Whatever it is, it stays true across the set.\n"
    }
  }
}
Output schema (JSON Schema)
{
  "type": "object",
  "properties": {
    "photo": {
      "type": "image",
      "description": "The finished social product photo."
    }
  }
}
SpecDocs

Call AI Product Photo Generator from your app.

Run it free in the playground above, then wire it in with one call — from Python, TypeScript, or your coding agent over MCP. Every run returns an exact cost receipt.

Every run is billed to the cent — see pricing.