cURL
Замените https://example.ru/api/ адресом своего API. Нужные наборы роутов должны быть включены.
Сервисные роуты
Параметры адреса
# Проверить работу API
curl 'https://example.ru/api/up'
# Передать id в адресе и name в строке запроса
curl 'https://example.ru/api/up/user/15?name=Ivan'Передача JSON
# Передать параметры в теле запроса
curl 'https://example.ru/api/up' \
-H 'Content-Type: application/json' \
--data '{"name": "Иван", "quantity": 2}'XML-ответ
# Отправить JSON и получить XML-ответ встроенного PUT-роута
curl -X PUT 'https://example.ru/api/up' \
-H 'Content-Type: application/json' \
--data '{"name": "Иван"}'# Выбрать XML для GET-запроса
curl 'https://example.ru/api/up?format=xml'Доступ по группам
# HTTP 403: в штатной карте задан whitelist без авторизации API
curl 'https://example.ru/api/up/group/1'Вызываемый класс
# Проверить вызываемый класс; данные не удаляются
curl -X DELETE 'https://example.ru/api/up'Токены
При AUTH_MFA_REQUIRED для выпуска и списка токенов через Basic нужны cookie сессии того же пользователя после входа с MFA. Эти примеры cookie не передают. Для серверной интеграции можно выпустить токен в админке и использовать Bearer.
Вместо login укажите логин пользователя — cURL запросит пароль. Подставьте свои <ACCESS_TOKEN>, <REFRESH_TOKEN> и <CLIENT_ID>.
Для приведённых ниже примеров используйте пару, выпущенную с User-Agent: MyIntegration/1.0,
либо ручную пару без привязки.
При переносе токена из браузера клиент будет другим — проверка привязки вернёт HTTP 401.
Выпуск
# Создать пару токенов для постоянного серверного клиента
curl -X POST 'https://example.ru/api/token' \
--user 'login' \
--user-agent 'MyIntegration/1.0'Обновление
# Заменить пару по refresh-токену
curl -X PUT 'https://example.ru/api/token' \
--user-agent 'MyIntegration/1.0' \
-H 'Authorization: Bearer <REFRESH_TOKEN>'Список
# Получить активные токен-сессии пользователя
curl 'https://example.ru/api/token' \
--user 'login' \
--user-agent 'MyIntegration/1.0'Отзыв
# client.id берётся из списка сессий
curl -X DELETE 'https://example.ru/api/token?client_id=<CLIENT_ID>' \
--user-agent 'MyIntegration/1.0' \
-H 'Authorization: Bearer <ACCESS_TOKEN>'После выпуска или обновления сохраните оба токена из ответа: access и refresh. Поля ответа и правила работы с токенами.
Провайдер
Описание метода
# Узнать параметры разрешённого метода
curl -G 'https://example.ru/api/provider' \
--user-agent 'MyIntegration/1.0' \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
--data-urlencode 'class=Bitrix\Main\Localization\Loc' \
--data-urlencode 'method=getCurrentLang'Выполнение метода
# Получить текущий язык Битрикса
curl 'https://example.ru/api/provider' \
--user-agent 'MyIntegration/1.0' \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
-H 'Content-Type: application/json' \
--data '{
"class": "Bitrix\\Main\\Localization\\Loc",
"method": "getCurrentLang"
}'