profound-logoProfound CMS
⌘K
Admin
Theme
DocsTutorialBlogPhilosophy
DocsTutorialBlogPhilosophy

Hybrid

Параметрична маршрутизаціяTypes of ComponentsSetup server sent events (SSE) content refetchInstall Profound CMS as a proxyСкрипти у конструкторі шаблонівProject ScaffoldingMedia Library

Headless

Швидкий стартSplit Screen JSON Component Builder with LLMComponent Zod Pull

REST API

Огляд REST APIgetПідключення вебсайту до APIgetGET /routesgetGET /routegetGET /blocksgetотримати-блоки-з-CEL-кешемgetGET /blocks/generatedgetGET /componentsgetGET /components/{name}getGET /dataset/{schema_name}getGET /content-changes (SSE)patchPATCH /dataset/{schema_name}postПереклад публікаційpatchОновлення перекладівgetGET /usagepostPOST /csvpatchPATCH /csv
All Systems Operational
Powered Byprofound-logo
Theme

Огляд REST API

Базова URL-адреса, схеми автентифікації, визначення тенанта та модель помилок для REST API CMS.

REST API Profound CMS обслуговується сервісом Rust translation_manager. Він відкриває безголові кінцеві точки читання/стріму, які використовує рендерер, а також кінцеві точки запису для контенту, перекладів та імпорту CSV.

Усі приклади використовують {CMS_API_URL} як базову URL-адресу вашого хоста CMS API (наприклад, https://cms.dev.tryprofound.com). Глобального префікса шляху немає — маршрути монтуються в корені, наприклад {CMS_API_URL}/routes.

Автентифікація

API використовує дві окремі схеми залежно від кінцевої точки.

Ключ API (безголові читання + upsert варіанта)

Надішліть ключ у заголовку x-api-key або в параметрі запиту api_key:

curl '{CMS_API_URL}/dataset/post?websiteId=<uuid>' \
  -H 'x-api-key: <your-api-key>'

Ключі перевіряються через WorkOS і короткочасно кешуються в пам'яті. Для кінцевих точок читання ключ API потрібен лише тоді, коли сервер встановлює require_schema_api_key = true; інакше анонімні читання дозволені. Upsert варіанта (PATCH /dataset/{schema_name}) завжди потребує чинного ключа з дозволом content_write.

Використовує автентифікацію за ключем API: /routes, /route, /blocks*, /components*, /dataset/*, /schemas/*, /content-changes.

Bearer JWT (WorkOS)

Кінцеві точки керування потребують JWT користувача WorkOS:

curl '{CMS_API_URL}/usage?orgId=<uuid>' \
  -H 'Authorization: Bearer <workos-jwt>'

Використовує автентифікацію Bearer: /translation, /translations, /usage, /csv.

Визначення вебсайту (тенанта)

Кінцеві точки з ключем API визначають цільовий вебсайт у такому порядку:

  1. Параметр запиту ?websiteId=<uuid>
  2. Заголовок Host, що порівнюється з налаштованим доменом вебсайту
  3. Резервний CMS_WEBSITE_ID (однотенант / локальна розробка)

Якщо жоден варіант не дає чинний UUID, кінцева точка повертає 400.

Модель помилок

СтатусЗначення
400Неправильний запит — відсутній/некоректний websiteId, недійсний UUID або помилка валідації
401Відсутні або недійсні облікові дані
403Автентифікація пройдена, але бракує необхідного дозволу
404Ресурс не знайдено
500Внутрішня помилка / помилка бази даних

Перевірка стану

GET {CMS_API_URL}/health повертає { "status": "ok" } і не потребує автентифікації — використовуйте це для перевірок на живучість.

Continue Reading
NextПідключення вебсайту до API›