Документация1С-Битрикс: Модулиnative.apiРазработчикамКарта роутов

Параметры запроса

RouteConfig::PARAMETERS содержит массив: имя параметра → настройки проверки.

Формат запроса

Модуль поддерживает JSON-тело запроса, POST-поля и параметры URL. XML и SOAP не поддерживаются как форматы входящих запросов.

Ключи параметра

Вложенные поля задаются в parameters: см. вложенные параметры.

description и example используются для рендера документации.

Обязательность и тип

При required => true отклоняются отсутствующее значение, null, пустая строка и пустой массив. 0 и false сами по себе не считаются пустыми.

ТипДопустимое значение
stringСтрока
integerЦелое число или строка из цифр с необязательным начальным -
arrayPHP-массив, включая объект или список из JSON

Константы: TypeConfig::STRING, TypeConfig::INTEGER, TypeConfig::ARRAY. Без type тип не проверяется. Значения не преобразуются.

Допустимые значения

possibleValue принимает непустой массив значений либо диапазон из трёх элементов: нижняя граница, '...', верхняя граница. Границы включаются в диапазон.

// Одно из перечисленных значений
ParameterConfig::POSSIBLE_VALUE => ['new', 'completed', 'cancelled'],
// От 1 до 100 включительно
ParameterConfig::POSSIBLE_VALUE => [1, '...', 100],

Список сравнивается после приведения значений к строке. Диапазон допускает целые числа, строки целых чисел и числа PHP типа float.

Непустой possibleValue заменяет проверки type и вложенных parameters. Проверка required сохраняется.

Порядок проверки

Для каждого параметра, описанного в карте:

Параметр передан?
├─ Нет → required: true → ошибка обязательности
│        иначе → пропустить параметр
│
└─ Да → проверить required
         │
         └─ Проверка пройдена
            ├─ possibleValue задан и непустой
            │  └─ Проверить список или диапазон
            │     На этом проверка параметра завершена
            │
            └─ possibleValue не задан или пустой
               └─ Проверить type, если задан
                  └─ Тип допустим → проверить вложенность

Ошибка обязательности или типа останавливает проверку этого параметра. Остальные параметры продолжают проверяться; ошибки собираются в один ответ.

Источники данных

    Строка запроса
          ↓
      POST-поля
          ↓
      JSON-тело
          ↓
   Параметры адреса
          ↓
─────────────────────
Все параметры запроса

При совпадении имени значение из источника ниже заменяет предыдущее.

Поля, не описанные в карте, не удаляются и не проверяются. Ошибка проверки возвращает PARAMETERS_INVALID (HTTP 400) с указанием проблемных полей.