# DynaPictures vs Photoroom API

> Photoroom scores 53.5 (D) to DynaPictures's 43.2 (E) for design templates. Prices, MCP, x402, uptime and agent notes side by side.

- Canonical: https://www.anchorterminal.com/compare/dynapictures-vs-photoroom
- Markdown: https://www.anchorterminal.com/compare/dynapictures-vs-photoroom.md (~4,500 tokens)
- Site index for agents: https://www.anchorterminal.com/llms.txt (the key docs and every listing in one file, at most 16 MB, about 4 million tokens: https://www.anchorterminal.com/llms-full.txt)
- API: https://www.anchorterminal.com/api/v1/index.json
- MCP: https://www.anchorterminal.com/mcp (the whole catalogue as tools, no key)
- DNS: dig +short TXT <slug>.grade.anchorterminal.com (the grade as a DNS TXT record, for a sandbox with no HTTP where names still resolve; also top., best.<category>. and <a>.vs.<b>. under the zone, and the same under grade.letme.dev)
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)
- Updated: 2026-11-07

Photoroom API scores 53.5 (D) on agent readiness against DynaPictures's 43.2 (E), and leads in 6 of 7 scored categories. Both do design templates.

- DynaPictures: grade E, 43.2/100, rank #1239 of 1486. Markdown https://www.anchorterminal.com/tools/dynapictures.md · JSON https://www.anchorterminal.com/api/v1/tools/dynapictures.json
- Photoroom API: grade D, 53.5/100, rank #940 of 1486. Markdown https://www.anchorterminal.com/tools/photoroom.md · JSON https://www.anchorterminal.com/api/v1/tools/photoroom.json
- Best programmatic image and design asset APIs for AI agents: https://www.anchorterminal.com/best/design-assets/index.md
- All 153 assets comparisons: https://www.anchorterminal.com/compare/design-assets/index.md

## Which one, for what

### DynaPictures (E)

Good for: Personalised images and PDFs per record, image URLs in emails and pages, and email countdown timers, for marketing teams in the EU.

Also in its favour:
- Free to start without a card

Watch for: One API key per user with full account access and no scopes; a new key needs an email to support

### Photoroom API (D)

Good for: Product-photo work at volume, such as cutouts, white backgrounds, shadows, generated scenes and clothing shots, one image a call.

Ahead on:
- Agent ergonomics, 64 against 45
- Security & auth, 49 against 26
- Payments & pricing, 40 against 30
- Maintenance & community, 13 against 4
- Transparency & trust, 69 against 63

Watch for: No status page was found on the site or in the docs, so there is no public incident history to read


## Why the edge

### Security & auth: Photoroom API +23

- DynaPictures (26): One API key per user with the user's full access, not limited to workspaces or actions; a new key is requested by email to support, with no rotation in the account (10 of 30). No read-only mode, and the MCP server can author and change designs (3 of 20). Tools return the account's own templates and renders; image layers accept outside URLs (10 of 15). A list of generated images, with no audit log documented (3 of 15). No security.txt, disclosure policy, bug bounty or certification found (0). 10 + 3 + 10 + 3 + 0 = 26.
- Photoroom API (49): Per the 9 October check, not re-read on 4 November. A team can hold several API keys and revoke each in the dashboard, with no scopes found. The key travels in the `x-api-key` header only. The hosted MCP server's published OAuth metadata gives an authorisation code grant with PKCE, dynamic client registration and a revocation endpoint, per the 9 October reading, and the connector page says it creates its own key for the connection (20). No read-only key. The API stores nothing to change, a sandbox key cannot spend, and a prepaid monthly allowance bounds spend (8). Returns images, not untrusted text (10). The dashboard shows usage history, `GET /v2/account` returns the balance, and the security page says API access logs are kept for one year on Photoroom's side (6). The security page states a SOC 2 Type 2 attestation scoped to the API with a report of April 2026, held in a trust centre drawn by script that was not read. `security.txt` returns 404 and no disclosure policy or bug bounty was found, so a SOC 2 claim with no readable report or disclosure route (5).

### Agent ergonomics: Photoroom API +19

- DynaPictures (45): The MCP tool definitions weren't read (listing them needs a session), and llms.txt describes groups that include layer-by-layer design authoring, so the count is unknown. REST responses are small objects with image URLs (12 of 25). Template and generated-image listings, with no field selection documented (10 of 20). Errors are JSON with a `message` and documented statuses, without codes (12 of 20). Requests aren't idempotent, by the vendor's own note, though identical image URLs are served from cache without a credit (6 of 20). An Editor SDK for embedding the editor, and no API client SDKs (5 of 15). 12 + 10 + 12 + 6 + 5 = 45.
- Photoroom API (64): Per the 9 October check, not re-read on 4 November. The response body is the image itself, so an agent saves a file and reads nothing into context. `outputSize`, `maxWidth`, `maxHeight`, `export.format` and the `size` presets set what comes back, and the MCP server has one tool, per Photoroom (18). Nothing to paginate. Output size, format and DPI controls (15). JSON errors with a message and a documented meaning for 400, 401, 403, 402, 429 and 500, but the two APIs use different shapes and `Unauthorized` covers both a missing key and an empty balance (13). No idempotency key. Calls keep no state, failed calls are not billed and `background.seed` repeats a generated background, but a retried success is billed again. The MCP tool's annotations were not read (10). Only the image is required and defaults are sensible. No official SDK, only sample code for four platforms (8).

### Payments & pricing: Photoroom API +10

- DynaPictures (30): No x402, MPP or L402 (0). Image allowances per plan and AI credit packs ($20 for 1,000 credits) are public, but plan prices are filled in by the FastSpring script and weren't readable (10 of 20). Free plan and a 14-day trial with 30 API credits, no card (20). auth.md says a person has to copy the key; there is no OAuth or programmatic key (0). 0 + 10 + 20 + 0 = 30.
- Photoroom API (40): Per the 9 October check, not re-read on 4 November. No x402, MPP or L402 in the docs, the OpenAPI description or the pricing pages (0). Per-image prices are public, $0.02 for background removal and $0.10 for an Image Editing call (20). Sandbox mode gives 1,000 free watermarked calls a month and a new account 10 free production calls on the Remove Background API, with no card, per the pricing page (20). A person has to create an account and activate the API in the dashboard. The MCP server also needs a Photoroom sign-in (0).

### Maintenance & community: Photoroom API +9

- DynaPictures (4): No changelog, release notes or dated API change was found, and the MCP server card gives version 1.0.0 with no date (0). No dated changes since 8 August (0). Support by email and contact form, not tested (4 of 15). Not in the official MCP registry and no API SDKs (0). No public package or repository (0). 0 + 0 + 4 + 0 + 0 = 4.
- Photoroom API (13): The last dated changelog entry is 21 April 2026 by the 9 October reading, 197 days before 4 November. The changelog sits on a paused host and was not re-read (0, cause time). No dated changelog entry in the 90 days from 6 August by that reading, and no other dated Photoroom source was found (0). A public changelog and a Discourse community where each of the 17 topics dated 30 September to 3 October 2026 had a reply, per the 9 October check. We did not open the topics to see who replied (11). No official SDK, and the official MCP registry search for photoroom returned no entry on 4 November (0). The sample code repository's last commit is a README change on 23 April 2026 and it has no CI, per a clone on 4 November (2).

### Transparency & trust: Photoroom API +6

- DynaPictures (63): Closed service under terms (revision 2/2026) from DynaPictures GmbH in Freiburg, for business customers (15). The privacy policy names the controller, keeps generated images as long as needed or until deleted, gives plan image retention (3 months on Lite), and says the named AI providers don't train on API inputs under their API terms; other periods follow bookkeeping law (20 of 30). The OpenAPI file commits to six months' notice before removing an endpoint or field, with Deprecation and Sunset headers (16 of 20). AI sub-processors named with addresses (OpenAI, Google, Black Forest Labs, Replicate) and FastSpring for payments, while hosting providers aren't named (12 of 20). 15 + 20 + 16 + 12 = 63.
- Photoroom API (69): Per the 9 October check, not re-read on 4 November. Closed hosted service under the Photoroom Terms and Conditions effective 29 July 2026, which name the application programming interface. Sample code is MIT (15). The security page gives retention figures (images discarded after the call, operational logs 15 days, API access logs one year). The statements on training disagree. The privacy policy of March 2026 says model improvement does not apply to API images, the security page says self-serve API plans train by default with an opt-out, and the terms authorise training on user content with an opt-out. A DPA is for Enterprise customers only (14). Preview and alpha functions carry a two-week notice, the 2024 base URL change gave a dated deadline, and the AI Backgrounds v2 model is marked deprecated with no removal date (12). The security page names GCP, AWS, Cloudflare, Datadog and Vercel and says hosting is in the United States. The full list is in the trust centre, which was not read (16).

## Score by category

| Category | Weight | DynaPictures | Photoroom API | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 42 | 42 | even |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 82 | 86 | Photoroom API +4 |
| Agent ergonomics | 13% (16.2 this run) | 45 | 64 | Photoroom API +19 |
| Security & auth | 14% (17.5 this run) | 26 | 49 | Photoroom API +23 |
| Payments & pricing | 10% (12.5 this run) | 30 | 40 | Photoroom API +10 |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 4 | 13 | Photoroom API +9 |
| Transparency & trust | 7% (8.8 this run) | 63 | 69 | Photoroom API +6 |
| Negative events | ≤15 | 0 | 0 | |
| **Total** | | **43.2 · E** | **53.5 · D** | |

## Facts side by side

| Fact | DynaPictures | Photoroom API |
| --- | --- | --- |
| Kind | HTTP API | HTTP API |
| Vendor | DynaPictures GmbH | Photoroom |
| Hosted endpoint | `https://api.dynapictures.com` | `https://image-api.photoroom.com/v2` |
| Transports | HTTP, Streamable HTTP | HTTP, Streamable HTTP |
| Auth | API key | OAuth or key |
| Pricing | Freemium | Freemium |
| x402 | no | no |
| Licence | Closed service under the DynaPictures terms of use (revision 2/2026) | Proprietary service under the Photoroom Terms and Conditions. The sample code repository is MIT |
| Tools exposed | none | 1 |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | none | 2026-04-21 |
| Terms last updated | no date given | 2026-07-29 |
| Privacy policy last updated | no date given | 2026-03-01 |
| Customer content may train models | not found in the text | yes, with an opt-out |
| Terms restrict automated access | not found in the text | yes |
| Terms restrict benchmarking | not found in the text | not found in the text |
| Terms or service can change without notice | not found in the text | not found in the text |
| Arbitration or class-action waiver | not found in the text | yes |

## How the scores have moved

### DynaPictures

No score change since it was listed.

### Photoroom API

- -2.6 on 4 November 2026 (C to D): correction, time
- +0.1 on 27 October 2026: checklist

## Verdicts

**DynaPictures.** An OpenAPI 3.1 file, an agent skill and a six-month removal notice with Sunset headers make DynaPictures' template rendering easy to plan around, with a free plan and no-card trial. The single API key opens the whole account, requests aren't idempotent, and no changelog, status page or dated release was found.

**Photoroom API.** A call costs $0.02 for background removal or $0.10 for any combination of edits, and a sandbox key gives 1,000 free watermarked calls a month without a card. No status page or official SDK was found, and Photoroom's privacy policy and security page disagree on whether API images train its models.

## Before you call either

### DynaPictures

1. Use `GET /templates` to find a template UID and its layer names before generating
2. Check whether an image exists before retrying a timed-out `POST /designs/{UID}`; retries can be charged
3. Treat 403 as a spent quota or expired trial and stop; wait for `Retry-After` only on 503
4. Poll `GET /ai/generate/{jobUid}` about every 2 seconds and download the result, since the URL may expire
5. Keep the API key out of image URLs; use signed or public links for embedding

### Photoroom API

1. Send the key in the `x-api-key` header. Prefix it with `sandbox_` while testing, because calls with the plain key consume paid images
2. Save the response body as a file. A 200 returns image bytes, PNG by default, and any other status returns JSON with `error.message` or `detail`
3. Send model selectors such as `pr-ai-shadows-model-version: 2026-04-15` as HTTP headers, not form fields. They are not in the OpenAPI file
4. Stay under 60 images a minute. On 429 back off with an exponential delay, and set a client timeout of at least 60 seconds for AI edits
5. Use `POST /v2/edit` with `imageFile` for local files and `GET /v2/edit` with `imageUrl` for hosted ones. Each call takes one image

## Questions

### Which is better for AI agents, DynaPictures or Photoroom API?

Photoroom API scores 53.5 (D) on agent readiness against DynaPictures's 43.2 (E), and leads in 6 of 7 scored categories.

### Do DynaPictures and Photoroom API need an API key?

DynaPictures needs an API key. Photoroom API takes an API key or an OAuth sign-in.

### Can an agent call DynaPictures and Photoroom API without installing anything?

Yes. DynaPictures has a hosted endpoint at https://api.dynapictures.com and Photoroom API at https://image-api.photoroom.com/v2.


## For agents

- This comparison as JSON: https://www.anchorterminal.com/compare/dynapictures-vs-photoroom.json, and with the fewest tokens: https://www.anchorterminal.com/compare/dynapictures-vs-photoroom.min.md
- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "dynapictures", "b": "photoroom"}`. From a terminal: `anchor compare dynapictures photoroom`
- Each listing in full: https://www.anchorterminal.com/api/v1/tools/dynapictures.json and https://www.anchorterminal.com/api/v1/tools/photoroom.json

## Other comparisons with DynaPictures or Photoroom API

- [Adobe Photoshop API vs DynaPictures](https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-dynapictures.md)
- [APITemplate.io vs DynaPictures](https://www.anchorterminal.com/compare/apitemplate-io-vs-dynapictures.md)
- [APITemplate.io vs Photoroom API](https://www.anchorterminal.com/compare/apitemplate-io-vs-photoroom.md)
- [Bannerbear API + MCP vs DynaPictures](https://www.anchorterminal.com/compare/bannerbear-vs-dynapictures.md)
- [Bannerbear API + MCP vs Photoroom API](https://www.anchorterminal.com/compare/bannerbear-vs-photoroom.md)
- [Canva REST APIs + MCP vs DynaPictures](https://www.anchorterminal.com/compare/canva-vs-dynapictures.md)
- [Canva REST APIs + MCP vs Photoroom API](https://www.anchorterminal.com/compare/canva-vs-photoroom.md)
- [Contentdrips API and MCP vs DynaPictures](https://www.anchorterminal.com/compare/contentdrips-vs-dynapictures.md)
- [Contentdrips API and MCP vs Photoroom API](https://www.anchorterminal.com/compare/contentdrips-vs-photoroom.md)
- [Creatomate vs DynaPictures](https://www.anchorterminal.com/compare/creatomate-vs-dynapictures.md)
- [Creatomate vs Photoroom API](https://www.anchorterminal.com/compare/creatomate-vs-photoroom.md)
- [DynaPictures vs Layerre](https://www.anchorterminal.com/compare/dynapictures-vs-layerre.md)
- [DynaPictures vs Pictify](https://www.anchorterminal.com/compare/dynapictures-vs-pictify.md)
- [DynaPictures vs Pixelixe](https://www.anchorterminal.com/compare/dynapictures-vs-pixelixe.md)
- [DynaPictures vs Placid API + MCP](https://www.anchorterminal.com/compare/dynapictures-vs-placid.md)
- [DynaPictures vs PostNitro](https://www.anchorterminal.com/compare/dynapictures-vs-postnitro.md)
- [DynaPictures vs Robolly](https://www.anchorterminal.com/compare/dynapictures-vs-robolly.md)
- [DynaPictures vs Shotstack](https://www.anchorterminal.com/compare/dynapictures-vs-shotstack.md)
- [DynaPictures vs Templated API + MCP](https://www.anchorterminal.com/compare/dynapictures-vs-templated.md)
- [Layerre vs Photoroom API](https://www.anchorterminal.com/compare/layerre-vs-photoroom.md)
- [Photoroom API vs Pictify](https://www.anchorterminal.com/compare/photoroom-vs-pictify.md)
- [Photoroom API vs Placid API + MCP](https://www.anchorterminal.com/compare/photoroom-vs-placid.md)
- [Photoroom API vs PostNitro](https://www.anchorterminal.com/compare/photoroom-vs-postnitro.md)
- [Photoroom API vs Robolly](https://www.anchorterminal.com/compare/photoroom-vs-robolly.md)
- [Photoroom API vs Shotstack](https://www.anchorterminal.com/compare/photoroom-vs-shotstack.md)
- [Photoroom API vs Templated API + MCP](https://www.anchorterminal.com/compare/photoroom-vs-templated.md)
- [Abyssale vs DynaPictures](https://www.anchorterminal.com/compare/abyssale-vs-dynapictures.md)
- [DynaPictures vs Osmo CLI](https://www.anchorterminal.com/compare/dynapictures-vs-osmo-cli.md)
- [Abyssale vs Photoroom API](https://www.anchorterminal.com/compare/abyssale-vs-photoroom.md)
- [Adobe Photoshop API vs Photoroom API](https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-photoroom.md)
- [Osmo CLI vs Photoroom API](https://www.anchorterminal.com/compare/osmo-cli-vs-photoroom.md)
- [Photoroom API vs Pixelixe](https://www.anchorterminal.com/compare/photoroom-vs-pixelixe.md)

---

Query this catalogue directly over MCP: https://www.anchorterminal.com/mcp (Streamable HTTP, no key). How: https://www.anchorterminal.com/agents/#mcp
