Command Palette

Search for a command to run...

API-роуты Admin

В этом справочнике перечислены API-роуты, которые Модуль интеграций добавляет в . Medusa Admin пользуется ими на всех страницах интеграций, а ваши скрипты и собственные виджеты тоже могут ими пользоваться.

Как и любые роуты Medusa в , они требуют аутентифицированного пользователя Admin или секретный ключ API. Роут с отвечает с типом и сообщением , если под этим ключом не зарегистрирован ни один провайдер.

Роуты, которые принимают тело или параметры запроса, проверяют их строго. На неизвестный ключ или значение вне допустимого диапазона они отвечают с сообщением, которое начинается с . Тело проверяется раньше провайдера, поэтому на неверное тело для неизвестного провайдера роут тоже отвечает .

Интеграции

Роуты, которые меняют настройки, передают в воркфлоу аутентифицированного автора, а также IP-адрес, клиент и ID запроса, чтобы в истории изменений был указан автор.

Список интеграций

принимает такие параметры запроса:

  • – ищет по идентификатору провайдера или инстанса. Переведённые названия Admin ищет на своей стороне.
  • – одна категория, например .
  • – от 1 до 1000, по умолчанию .
  • – по умолчанию .

Роут возвращает . Каждый элемент содержит , , и инстанса, i18n-ключи и , , данные пакета , и , флаги , , и , а также . перечисляет категории всех зарегистрированных инстансов независимо от фильтров.

Сохранение значений параметров

принимает тело с такими полями:

  • – необязательный. Значения параметров для сохранения, где ключом служит идентификатор параметра. Без него параметры не записываются, например когда вы меняете только .
  • – необязательный. С ним записываются только параметры этой секции. Без него записываются все отправленные ключи, которые объявлены в дескрипторе.
  • – необязательный. Название сохранённой записи или , чтобы очистить его.
  • – необязательный. Объединяется с сохранёнными метаданными по ключам, как у любой сущности Medusa. Ключ со значением в виде пустой строки удаляется, а очищает метаданные. Метаданные не относятся к настройкам, поэтому история изменений их не показывает.

Например, чтобы сохранить секцию с учётными данными интеграции :

1curl -X POST "http://localhost:9000/admin/integrations/int_my" \
2 -H "Authorization: Bearer {token}" \
3 -H "Content-Type: application/json" \
4 --data '{ "section_id": "credentials", "values": { "apiKey": "sk_test_123", "sandbox": true } }'

В ответ приходит , сохранённая запись без секретов. из запроса упоминается в ней только по имени, в . Если значение не проходит валидацию, роут отвечает , а в сообщении каждая проблема записана как . На неизвестный роут тоже отвечает с типом и сообщением .

Включение и выключение

принимает тело с обязательным булевым полем и возвращает . Для зарегистрированного провайдера, у которого ещё ничего не сохранено, роут отвечает с типом и сообщением . Если установить состояние, в котором интеграция уже находится, роут ответит и ничего не запишет в историю изменений.

Удаление настроек

не принимает тело и возвращает , где содержит ключ инстанса. Роут отвечает , даже если ничего не было сохранено.

Проверка соединения

не принимает тело и для зарегистрированного провайдера всегда отвечает с , где равно , или . Для интеграции, которая не настроена, выключена или не завершена, роут возвращает с сообщением , а если тест выбросил ошибку, то с сообщением этой ошибки. Если в дескрипторе нет проверки соединения, результат с сообщением .

Объект интеграции

, и роут возвращают сохранённую запись в таком виде. Значения секретов сервер никогда не отдаёт.

Loading...

Medusa Admin показывает этот объект в секции JSON на странице интеграции.

оборачивает её в . равно до первого сохранения, а содержит дескриптор, подготовленный для Admin, с секциями, полями и раскладкой.


История изменений

История доступна только для чтения, и эти роуты принимают только . или на попадает в роуты с , которые воспринимают как ключ инстанса и отвечают ( для с неверным телом).

Список изменений

Оба роута со списком принимают такие параметры запроса:

  • – список полей через запятую, которые нужно вернуть. Роуты со списком не возвращают , и , пока вы не запросите их.
  • – от 1 до 100, по умолчанию .
  • – по умолчанию .
  • – поле для сортировки, с впереди для обратного порядка. По умолчанию .
  • – один или несколько ключей инстансов. Роут одной интеграции его игнорирует.
  • – одно или несколько значений из , , , и .
  • – один или несколько идентификаторов пользователей. обозначает все изменения, сделанные не пользователем Admin.
  • – диапазон дат с операторами вроде и .
  • – ищет по email автора или названию ключа API и по .
  • , – вместе с находят ещё и изменения, которые затронули один из этих идентификаторов или ключей меток параметров или относятся к одному из этих инстансов. Admin заполняет их тем, что совпало с в переведённых названиях.

Роуты возвращают , по умолчанию сначала новые.

Получение изменения

возвращает , одно изменение со всеми полями, включая , и . Роут принимает и отвечает для неизвестного идентификатора.

Авторы и поля

возвращает . Каждый элемент имеет вид , а список отсортирован по . В попадает текущее имя пользователя, а если его нет, то текущий email, затем email, сохранённый с изменениями пользователя, а иначе . равно , если какое-либо изменение сделал не пользователь Admin, а, например, ключ API или код, выполненный без запроса.

возвращает , по одному на каждую пару идентификатора параметра и ключа метки, которые упоминаются в истории, включая параметры и интеграции, которых уже нет. содержит идентификатор параметра или для названия записи, а содержит ключ метки, сохранённый вместе с изменением, или .

Объект изменения

Loading...

Все роуты сверяют с текущим дескриптором. Значение параметра, который стал секретным после записи изменения, возвращается как . Изменения провайдера, который больше не зарегистрирован, возвращаются в том виде, в каком были сохранены.


Каталог и лицензии

Запись каталога

возвращает . Каждый элемент является записью каталога Gorgo с полями и , которые равны и , если интеграция не зарегистрирована в проекте.

Loading...

Запись о лицензии

возвращает , последний результат проверки для каждого лицензируемого пакета, о котором знает процесс. Сюда входит и пакет, в котором нет провайдера интеграции, и тогда его пуст. Роут отдаёт то, что нашла последняя проверка, и не обращается к сервису лицензий.

Loading...

проверяет лицензии сразу и возвращает свежие результаты в том же виде, но только в том процессе, который получил запрос. Остальные процессы сервера проверяют по своему расписанию. Как лицензируются платные плагины, читайте в разделе Лицензии на платные плагины.

Материалы

Изменено 12 ноября 2026 г.·Редактировать страницу