Základní adresa URL, schémata autentizace, určení tenanta a model chyb pro REST API CMS.
Rozhraní REST API systému Profound CMS zprostředkovává služba translation_manager napsaná v jazyce Rust. Zpřístupňuje bezhlavé koncové body pro čtení/streamování, které používá renderer, a také zapisovací koncové body pro obsah, překlady a import CSV.
Všechny příklady používají {CMS_API_URL} jako základní adresu URL hostitele vašeho CMS API (například https://cms.dev.tryprofound.com). Neexistuje žádný globální prefix cesty — trasy jsou namontované v kořeni, např. {CMS_API_URL}/routes.
Rozhraní API používá dvě samostatná schémata v závislosti na koncovém bodu.
Klíč odešlete jako hlavičku x-api-key nebo jako parametr dotazu api_key:
curl '{CMS_API_URL}/dataset/post?websiteId=<uuid>' \
-H 'x-api-key: <your-api-key>'
Klíče se ověřují vůči WorkOS a krátce se ukládají do mezipaměti. U koncových bodů pro čtení je klíč API vyžadován pouze tehdy, když server nastaví require_schema_api_key = true; jinak jsou povolena anonymní čtení. Upsert varianty (PATCH /dataset/{schema_name}) vždy vyžaduje platný klíč s oprávněním content_write.
Používá autentizaci pomocí klíče API: /routes, /route, /blocks*, /components*, /dataset/*, /schemas/*, /content-changes.
Správcovské koncové body vyžadují uživatelský JWT z WorkOS:
curl '{CMS_API_URL}/usage?orgId=<uuid>' \
-H 'Authorization: Bearer <workos-jwt>'
Používá Bearer autentizaci: /translation, /translations, /usage, /csv.
Koncové body s klíčem API zjišťují cílový web v tomto pořadí:
?websiteId=<uuid>Host, která se porovnává s nakonfigurovanou doménou webuCMS_WEBSITE_ID (single-tenant / místní vývoj)Pokud žádná z možností nevede k platnému UUID, koncový bod vrátí 400.
| Stav | Význam |
|---|---|
400 | Chybný požadavek — chybějící/neplatný websiteId, neplatné UUID nebo chyba validace |
401 | Chybějící nebo neplatné přihlašovací údaje |
403 | Autentizováno, ale chybí požadované oprávnění |
404 | Zdroj nenalezen |
500 | Interní / databázová chyba |
GET {CMS_API_URL}/health vrací { "status": "ok" } a nevyžaduje autentizaci — použijte ji pro sondy živosti.