| Vendor | Canto | Alchemy |
|---|
| HQ | USA (Atlanta, GA) | France (Paris) |
|---|
| Founded | 1990 | 1996 |
|---|
| Ownership | PE-backed (JMI Equity) | independent (privately held French SARL) |
|---|
| Target market | Mid-market | SMB to enterprise (companies, public sector, photographers) |
|---|
| Deployment | SaaS | SaaS, On-premise |
|---|
| Hosting regions | US, EU, Canada, Australia | Not public |
|---|
| Pricing model | quote-only packages (4 tiers) + paid add-ons | free open-source licence; SaaS plans by workspaces, storage and request quotas (from €169/month); services packs |
|---|
| Public pricing | No | Yes |
|---|
| SSO | SAML | SAML, OIDC |
|---|
| Certifications | SOC 2 Type 2, ISO 27001, HIPAA, TX-RAMP | None published |
|---|
| Analyst coverage | Forrester Wave DAM Systems Q1 2026: Strong Performer | Not public |
|---|
| Webhooks (overview) | UI only | Yes |
|---|
| Official MCP server | YesProduct Hub MCP — PIM data only, no DAM MCP | No |
|---|
| API base URL | https://{tenant}.{region}/api/v1 | Phrasea: https://api-databox.{domain}/ · Phraseanet: https://{host}/api/v3/ |
|---|
| Authentication | OAuth 2.0 authorization code, OAuth 2.0 client credentials | OAuth 2.0 authorization code, OAuth 2.0 PKCE, OAuth 2.0 client credentials, OAuth 2.0 password, API key |
|---|
| Token lifetime | Access 30 days; refresh 365 days, rotated; no refresh for client_credentials | Phrasea: Keycloak realm setting (Not public); Phraseanet v1: tokens do not expire |
|---|
| Rate limit | Per endpoint, 50-1,000 req/min by level; HTTP 429 | Phraseanet v1: none; Phrasea SaaS plans: 5-40 concurrent requests + request quotas |
|---|
| Pagination | offset (start/limit, max 1,000); marker on reports; page on users | Phrasea: page + limit (max 100); Phraseanet v3: offset/limit or page/per_page (max 100) |
|---|
| Webhooks (API) | Admin UI only, 14 event types, no retries (Product Hub: API-managed) | Phrasea: admin-managed entity events, unsigned; Phraseanet: per OAuth app, 17 events |
|---|
| API spec | OpenAPI 3.0.1 (11 files) + Postman collection | OpenAPI 3.1.0 Databox (239 ops) + Expose (37 ops); Phraseanet v3 OpenAPI 3.0.3 (7 ops) |
|---|
| Official SDKs | None official (JS sample; community PHP clients) | Phraseanet PHP SDK (last release 2021); no official Phrasea SDK |
|---|