URL de base, mécanismes d'authentification, résolution du locataire et modÚle d'erreur pour l'API REST du CMS.
L'API REST de Profound CMS est fournie par le service Rust translation_manager. Elle expose des points de terminaison headless de lecture/flux utilisés par le moteur de rendu, ainsi que des points de terminaison d'écriture pour le contenu, la traduction et l'importation CSV.
Tous les exemples utilisent {CMS_API_URL} comme URL de base de votre hĂŽte d'API CMS (par exemple https://cms.dev.tryprofound.com). Il n'y a aucun prĂ©fixe de chemin global â les routes sont montĂ©es Ă la racine, par ex. {CMS_API_URL}/routes.
L'API utilise deux mécanismes distincts selon le point de terminaison.
Envoyez la clĂ© dans l'en-tĂȘte x-api-key ou le paramĂštre de requĂȘte api_key :
curl '{CMS_API_URL}/dataset/post?websiteId=<uuid>' \
-H 'x-api-key: <your-api-key>'
Les clés sont validées auprÚs de WorkOS et mises briÚvement en cache en mémoire. Pour les points de terminaison de lecture, une clé d'API n'est requise que lorsque le serveur définit require_schema_api_key = true; autrement, les lectures anonymes sont autorisées. L'upsert de variante (PATCH /dataset/{schema_name}) exige toujours une clé valide portant la permission content_write.
Utilise l'authentification par clé d'API : /routes, /route, /blocks*, /components*, /dataset/*, /schemas/*, /content-changes.
Les points de terminaison de gestion nécessitent un JWT utilisateur WorkOS :
curl '{CMS_API_URL}/usage?orgId=<uuid>' \
-H 'Authorization: Bearer <workos-jwt>'
Utilise l'authentification Bearer : /translation, /translations, /usage, /csv.
Les points de terminaison utilisant une clé d'API déterminent le site web cible dans cet ordre :
?websiteId=<uuid>Host, comparé à un domaine de site web configuréCMS_WEBSITE_ID (mono-locataire / développement local)Si aucun ne se résout en UUID valide, le point de terminaison renvoie 400.
| Statut | Signification |
|---|---|
400 | Mauvaise requĂȘte â websiteId manquant/invalide, UUID invalide ou Ă©chec de validation |
401 | Identifiants manquants ou invalides |
403 | Authentifié mais permission requise manquante |
404 | Ressource introuvable |
500 | Erreur interne / base de données |
GET {CMS_API_URL}/health renvoie { "status": "ok" } et ne nĂ©cessite aucune authentification â utilisez-le pour les sondes de vivacitĂ©.