Документация1С-Битрикс: Модулиnative.apiНастройки модуля

Основные

Вкладка «Основные» находится в разделе «Сервисы → API-платформа → Настройки модуля». Здесь задаются пути API, документации, пользовательской карты роутов и файловых журналов.

Настройка путей

Указывайте пути относительно корня сайта, без домена. Серые примеры внутри пустых полей служат подсказками и не означают, что значение уже сохранено.

Путь интерфейса

Базовый путь для запросов к API. Например, значение api задаёт адрес /api/, а api/v1 — /api/v1/. Адрес конкретного роута добавляется к этому пути.

Заполненное поле включает API. Если очистить его и сохранить настройки, API отключится, а зарегистрированная точка входа будет удалена.

При смене пути обновите адрес API в подключённых клиентах: старый адрес перестанет обслуживаться модулем.

Путь документации

Путь к странице встроенной документации. Например, api/docs задаёт адрес /api/docs/. Это полный путь относительно корня сайта: он не добавляется автоматически к пути интерфейса.

Пустое значение отключает эту точку входа. Настройки доступа и работы со страницей описаны в разделе «Документация».

Для API и документации выбирайте разные пути. Они не должны совпадать с существующими каталогами сайта; путь rest зарезервирован платформой. Не используйте пробелы, обратные косые черты и сегменты . или ... Точки входа создаются при сохранении — вручную создавать каталоги для них не нужно.

Модуль автоматически выбирает способ обработки адресов. Если после сохранения API недоступен, проверьте имя сервера в настройках сайта и правила обработки URL на веб-сервере.

Путь карты роутов

Путь к существующему PHP-файлу пользовательской карты, например local/api/routes.php. Файл должен находиться внутри сайта и возвращать массив роутов.

Пользовательская карта дополняет встроенные роуты. При совпадении адреса и HTTP-метода используется описание из пользовательской карты. Пустое поле оставляет только встроенные роуты, включённые на вкладке «Роуты».

После изменения содержимого файла нажмите «Очистить кеш», чтобы модуль заново загрузил карту.

Путь к логам

Каталог для файловых журналов. Если поле пустое, используется local/logs. К выбранному пути модуль добавляет собственный каталог native.api. События записываются в YYYY-MM-DD/EVENT_CODE.log, а данные запросов и ответов — в REQUEST_RECEIVED/{REQUEST_ID}/request.json и response.json или response.xml.

Можно хранить журналы вне каталога сайта: ../logs задаёт каталог на уровень выше, а ../../logs — на два уровня выше корня сайта. Выход выше корня разрешён только для журналов.

Путь указывается без завершающей косой черты. Абсолютные пути, пробелы и символьные ссылки не допускаются. PHP должен иметь право записи в выбранное расположение; ограничения сервера также учитываются при сохранении. При сохранении пути и перед записью логов модуль создаёт в своём каталоге native.api файл .htaccess с запретом прямого HTTP-доступа, если такого файла ещё нет. Существующий .htaccess остаётся без изменений, даже если он пустой или разрешает доступ. Если создать файл не удалось, путь не сохраняется или соответствующая файловая запись не выполняется.

Запрет работает в Apache 2.4 при разрешённой обработке .htaccess. Если файлы отдаёт Nginx, доступ нужно закрыть в его конфигурации. После настройки проверьте, что существующий файл журнала нельзя прочитать по прямому URL. Правило не запрещает работу PHP и доступ через SSH/SFTP при наличии файловых прав.

Новый путь применяется к новым штатным записям; ранее созданные файлы и их .htaccess не переносятся и не удаляются при смене пути. Резервный журнал ошибки запуска использует local/logs/native.api независимо от выбранного пути; для него также создаётся отсутствующий .htaccess. Проверьте HTTP-защиту резервного и прежних каталогов. Выбор событий для записи выполняется на вкладке «Логирование».

Разрешить сбор данных

Флажок сохраняет разрешение на передачу технических данных разработчику для улучшения модуля. Сейчас сбор и передача данных не выполняются; изменение флажка не влияет на работу API.