Shopify's AI photo editor or an image API for a whole catalog
Shopify's file editor has built-in AI photo editing. When you have hundreds of SKUs for the holidays, here is when an image API like Sume's fits instead.

Use Shopify's built-in AI photo editing for one-off fixes on a few products, and use an image API such as Sume's when the same edit has to run across a whole catalog or feed several channels. The two are not rivals: one lives inside the admin, the other is called from your own script.
Shopify's Winter '26 Edition page describes "pro-level AI editing tools, built into your file editor for studio-quality results" (read 2026-10-04). It is the current vendor page we could read; it describes editing inside the file editor and does not describe an API for batch jobs.
When is the built-in editor enough?
When a person opens an image, fixes it and moves on. A handful of products, a one-time cleanup, a merchant who never leaves the admin. There is nothing to wire up, and the result lands where the file already is.
When does an API pay off?
When the edit is repeatable, large or has to leave Shopify. Holiday season is the usual trigger: many SKUs, the same treatment, several channels.
| Question | Shopify file editor (per its page) | Sume Image API (per docs) |
|---|---|---|
| Where it runs | Inside the file editor, including on mobile | Any script or agent calling POST /v1/images |
| Reference photos | Not stated on the page | Up to 16 references on openai/gpt-image-2.5 |
| Transparent background | Not stated on the page | background: transparent on openai/gpt-image-2.5 |
| Custom sizes | Not stated on the page | Custom pixels, edges multiples of 16, max edge 3840 on GPT models |
| Audit trail | Not stated on the page | Each call is a job; GET /v1/usage by job_id |
What does a batch loop look like?
Send each product photo as a reference, with a stable Idempotency-Key per SKU, so a retry does not charge twice. Check the status code: 200 carries the image, 202 means poll the job.
import os, requests
H = {"Authorization": "Bearer " + os.environ["SUME_API_KEY"]}
skus = {"SKU-1": "https://example.com/1.jpg", "SKU-2": "https://example.com/2.jpg"}
for sku, url in skus.items():
r = requests.post(
"https://api.sume.com/v1/images",
headers={**H, "Idempotency-Key": "shop-bg-" + sku},
json={
"model": "openai/gpt-image-2.5",
"prompt": "Keep the product unchanged on a clean light backdrop",
"input_references": [{"type": "image_url", "image_url": {"url": url}}],
"metadata": {"sku": sku},
},
timeout=120,
)
print(sku, r.status_code)
How do you get the results back into Shopify?
Sume returns hosted URLs. Upload them to the product through Shopify's own admin or API according to Shopify's current docs; this post does not cover that step. Review a sample before you push a batch, because a model can alter label text or small details, and the customer sees the picture, not your prompt.
Sources
Related posts
More in Comparisons
- Shorts conversational editing vs API rough cuts with Trim
YouTube added conversational AI editing to Shorts. For repeatable rough cuts, Sume's video trim cuts a range from one clip into a new MP4 for $0.02.
- Real-time avatar latency budget: Simli stack vs a rendered clip
Simli claims under 300 ms for speech-to-video, but a full agent turn adds STT, LLM and TTS. Add up the budget, then see when a rendered Sume clip fits better.
- Snapchat Create Song vs a text-to-song API: Sume Music 1.0 at $0.125
Snapchat's Create Song turns a chat into a song for Lens+ users. Sume Music 1.0 is a text-to-song API: prompt up to 5000 characters, $0.125 per generation.
- Speech Arena Elo 1,319: what the score means
Eleven v4 reportedly leads Artificial Analysis' Provider Voice Arena at Elo 1,319. What an arena Elo tells you and how to run your own blind test.
Written by Sume