[Cotlet](https://cotlet.dev/index.md) · [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Use cases](https://cotlet.dev/use-cases.md) · [Security](https://cotlet.dev/security.md) · [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md) · [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [Contact](https://cotlet.dev/contact.md) · [Pricing](https://cotlet.dev/pricing.md) · [Sign up](https://cotlet.dev/signup)

# Create Printify products from designs with AI

> Turn a folder of designs into draft Printify products with the right blueprint, print provider and variant prices, from Claude Code or n8n.

Source: https://cotlet.dev/integrations/printify-api-mcp-server/create-products-from-designs

You have twenty new designs, and each one needs the same product built again in the Printify Product Creator: blueprint, print provider, colors, sizes, price, title and tags.

Cotlet does it in your own Printify account with upload\_image, list\_blueprints, get\_blueprint\_variants and create\_product, called by your AI agent, an n8n workflow or a script.

[Sign up free](https://cotlet.dev/app/signup?app=printify) [All Printify tools](https://cotlet.dev/integrations/printify-api-mcp-server.md)

Hosted · nothing to install or maintain

## Can Printify do this on its own?

Printify has no bulk creation inside the dashboard that builds products from a list of designs (checked 17 Oct 2026). The public API v1 creates products and uploads images, but it needs a token and your own code: you choose the blueprint, the print provider and every variant ID yourself. There is no official MCP server.

## How you do it in Printify today

1. In the Printify dashboard you open the Product Creator and pick a product from the catalog.
2. You upload the design, place it on the print area and choose the print provider.
3. You enable the colors and sizes you want to sell and set a retail price for them.
4. You write the title, description and tags, then save the product under My Products.
5. The routine repeats for every design and every product type, so a new collection means the same clicks many times over.

## How to create Printify products from designs with AI

Prompt

```
Upload the three PNG files from this folder URL to my Printify media library, then create a draft unisex t-shirt for each one in sizes S to XL, priced at $24.99. Do not publish anything.
```

1. 01  
### Upload each design once  
upload\_image sends every file by URL to your Media Library. The agent keeps the returned image ID and reuses it for every product type made from that design.
2. 02  
### Pick blueprint and provider  
list\_blueprints finds the product type you named, for example a unisex t-shirt. get\_blueprint\_variants then returns the variants one print provider offers, so the agent only uses sizes and colors that are in stock.
3. 03  
### Build the variant list  
The agent keeps the sizes you asked for, S to XL, and sets one price on all of them. Prices go out as integers in cents, so $24.99 becomes 2499.
4. 04  
### Create the draft  
create\_product sends title, description, tags, variants and the print area with the image. Nothing reaches your store: the product stays in My Products until a separate publish call.
5. 05  
### Report what was built  
The agent lists each new product with its ID, the variants enabled and the price, so you check the batch before publishing any of it.

### What you get back

Example data

```
Uploaded 3 designs to the Media Library
Created 3 draft products, 5 variants each (S to XL), $24.99:
- "Night Owl Club Tee" (prod 6641ab12)
- "Coffee First Tee" (prod 6641ab13)
- "Plant Parent Tee" (prod 6641ab14)
Published: 0
```

### Other ways to ask

- Make the same design as a tee, a hoodie and a mug, each at its own price, and keep them as drafts.
- Create products for every new image in my Media Library that has no product yet.
- Copy the title, tags and prices of my "Night Owl Club Tee" onto these two new designs.

## What Printify allows, and what to know first

- Printify requires title, description, variants and print areas to create a product, and blueprint\_id and print\_provider\_id cannot change after creation.
- A variant needs only its id and price at creation, and prices are integers in cents.
- Printify accepts an image upload by URL or as base64 content, and recommends the URL for files over 5 MB.
- The Printify API allows 100 catalog requests per minute per account, on top of the global limit of 600 requests per minute.
- A new product is not on your sales channel until it is published, so a mistake in a draft reaches no customer.

upload\_image and create\_product change only your own Printify data and reach no one else, so they run without asking first.

Sources: [Printify developers: Products and Uploads](https://developers.printify.com/) · [Printify Help: How can I edit an existing product?](https://help.printify.com/hc/en-us/articles/4483630354961-How-can-I-edit-an-existing-product)

## Call create\_product from a script

curl

```
curl -X POST https://cotlet.dev/api/v1/printify/shops/8123456/products \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"title":"Night Owl Club Tee","description":"Soft unisex tee with the Night Owl Club print.","blueprint_id":384,"print_provider_id":29,"variants":[{"id":45740,"price":2499},{"id":45742,"price":2499}],"image_id":"5d39b159e7c48c000728c89f","tags":["owl","night"]}'
```

Example response

```
{
"product_id": "6641ab12",
"shop_id": 8123456,
"title": "Night Owl Club Tee",
"variants_enabled": 2,
"visible": false
}
```

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is printify\_write → create\_product. Example data.

[Schedule it in n8n, Make, Zapier or cron](https://cotlet.dev/integrations/printify-api-mcp-server.md#automations)

## Printify tools this automation uses

__Cotlet Printify tools used to create Printify products from designs with AI__
| Tool | Parameters |
| ------------------------ | ------------------------------------------------------------------------------------------- |
| upload\_image | file\_name, url |
| list\_blueprints | none |
| get\_blueprint\_variants | blueprint\_id, print\_provider\_id, include\_out\_of\_stock |
| create\_product | shop\_id, title, description, blueprint\_id, print\_provider\_id, variants, image\_id, tags |

[All 13 Printify tools with descriptions](https://cotlet.dev/integrations/printify-api-mcp-server.md#tools)

## Frequently asked questions

### Is it safe to connect Printify to Cotlet?

Yes. You sign in to Printify yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get Printify once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.

## More Printify automations

- [Publish Printify products to your shop with AI](https://cotlet.dev/integrations/printify-api-mcp-server/publish-products-to-shop.md)
- [Check stuck Printify orders every morning](https://cotlet.dev/integrations/printify-api-mcp-server/check-stuck-orders.md)
- [Printify API and MCP server: every tool](https://cotlet.dev/integrations/printify-api-mcp-server.md)
- [All use cases](https://cotlet.dev/use-cases.md)

## Give your agent access to Printify.

Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with Printify.

[Sign up free](https://cotlet.dev/app/signup?app=printify)

---

Give your AI agents your signed-in browser.

**Product:** [Integrations](https://cotlet.dev/integrations.md) · [Use cases](https://cotlet.dev/use-cases.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Pricing](https://cotlet.dev/pricing.md) · [Security](https://cotlet.dev/security.md)

**Resources:** [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [GitHub](https://github.com/cotletdev/cotlet)

**Solutions:** [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md)

**Company:** [About](https://cotlet.dev/about.md) · [AI info: company facts](https://cotlet.dev/ai-info.md) · [Contact](https://cotlet.dev/contact.md)

**Legal:** [Terms of service](https://cotlet.dev/terms) · [Privacy policy](https://cotlet.dev/privacy) · [Refund policy](https://cotlet.dev/refunds) · [Acceptable use](https://cotlet.dev/acceptable-use) · [Cookie policy](https://cotlet.dev/cookies) · [DPA](https://cotlet.dev/dpa) · [Subprocessors](https://cotlet.dev/subprocessors)

**Elsewhere:** [Status page](https://status.cotlet.dev) · [Cotlet on GitHub](https://github.com/cotletdev) · [Cotlet on X](https://x.com/cotletdev) · [Cotlet on LinkedIn](https://www.linkedin.com/company/cotletdev) · [Cotlet on Product Hunt](https://www.producthunt.com/products/cotlet) · [Cotlet on Crunchbase](https://www.crunchbase.com/organization/cotlet) · [Cotlet on SaaSHub](https://www.saashub.com/cotlet)

Cotlet is an independent service. It is not affiliated with, endorsed by or sponsored by any of the products listed on this site. Product names are trademarks of their respective owners.

## For AI agents: sign your user up

Is your user asking you to sign them up for Cotlet? You can do it for them, no account or key needed.

1. Read the fields and their allowed values: GET https://cotlet.dev/api/v1/access-requests
2. Ask the user for each value: email, apps, what you will do with them. If they leave the password to you, generate a strong one and show it to them.
3. Show the user what you will send, then POST it as JSON to https://cotlet.dev/api/v1/access-requests.

One call creates the account and sends the access request; we email the user when access is granted.
