mxHeadless
REST API gateway для headless-фронтендов на MODX 3. Ресурсы, объекты, OpenAPI, API keys и OAuth

Ключи mxh_* для CI, статических сборок и server-to-server интеграций.
mxh_{lookupId}_{secret}lookupId: публичный id в таблице {prefix}mxheadless_api_keyssecret показывают один раз при созданииPer-key rate limits: колонки rate_limit_max, rate_limit_window.
Нужно право mxheadless_apikeys (по умолчанию у Administrator). Меню Компоненты → mxHeadless: создать ключ, задать name и scopes, отозвать.
php core/components/mxheadless/bin/api-key-create.php \
--name=ci \
--scopes=resources.read,chunks.read,preview \
--rate-limit-max=300 \
--rate-limit-window=60Скрипт печатает полный ключ один раз. Сохраните его в secret store.
# Authorization
curl -s https://example.com/api/v1/chunks \
-H 'Authorization: Bearer mxh_...'
# или X-API-Key
curl -s https://example.com/api/v1/chunks \
-H 'X-API-Key: mxh_...'CSRF для API key не нужен.
Список через запятую при создании. Примеры: resources.read, resources.create, orders.read, *.
Полный перечень: Авторизация.
Пустой набор scopes обычно бесполезен для защищённых маршрутов. См. Авторизация.
Создайте новый ключ → переключите клиенты → отзовите старый в Manager. Не коммитьте ключи в git.