Skip to content
  1. Компоненты
  2. mxHeadless
  3. Аутентификация
  4. API keys

API keys ​

Ключи mxh_* для CI, статических сборок и вызовов сервер к серверу.

Формат ​

text
mxh_{lookupId}_{secret}
  • lookupId: публичный id в таблице {prefix}mxheadless_api_keys
  • secret показывают один раз при создании
  • пустые scopes в CLI и Manager означают * (все scopes)

Лимиты на ключ: колонки rate_limit_max, rate_limit_window.

Manager ​

Нужно право mxheadless_apikeys (по умолчанию у Administrator). Меню Компоненты → mxHeadless: создать ключ, задать name и scopes, отозвать.

CLI ​

bash
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

Скрипт печатает полный ключ один раз. Сохраните его в хранилище секретов.

Запрос ​

bash
# 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 не нужен.

Scopes ​

Список через запятую при создании. Примеры: resources.read, resources.create, orders.read, *.

Без --scopes= ключ получает *. Явно пустой список в Manager тоже даёт все scopes. Полный перечень: Авторизация.

Ротация ​

Создайте новый ключ → переключите клиенты → отзовите старый в Manager. Не коммитьте ключи в git.