goalsmanagement.goal.list

Scope: goalsmanagement

Кто может вызывать: ModuleUser::canViewGoal(). Подробнее: Права доступа

Список каталога целей (фильтр публичной гриды)

HTTP: GET

Побочные эффекты: none

Параметры метода

Параметр Тип Обяз. Описание
limit int нет Размер страницы, по умолчанию 50, максимум 500
offset int нет Смещение, по умолчанию 0
fetchAll bool нет fetchAll flag
filter object нет Mongo-фильтр = фильтр публичной гриды каталога (/goals-management/goals/). Поля: id, name, active, type, canCascade, createdBy, dateCreate, timestampX. Enum type: xmlId|enumId (strategy|operational|informational; smart скрыт). Для GET-фильтра canCascade используйте Y/N (строка true/false в query не матчит)

Поля filter (Mongo)

Поддерживаемые поля: id, name, active, type, canCascade, createdBy, dateCreate, timestampX.

Операторы: $eq, $ne, $gt, $gte, $lt, $lte, $in, $nin. Для enum-полей допускаются xmlId или числовой id значения. Для canCascade и active в query-string передавайте Y/N (например filter[canCascade][$eq]=Y).

Пагинация

limit (default 50, max 500), offset, fetchAll (защитный лимит записей, иначе FETCH_ALL_LIMIT_EXCEEDED).

Возвращаемые данные

Ответ в конверте модуля: result.result — массив элементов (массив целей каталога + total); result.next — смещение следующей страницы или null; result.error; верхнеуровневый Bitrix total — общее число записей.

Обработка ошибок

Справочник кодов: error-codes.md.

Код Описание
UNAUTHORIZED Пользователь не авторизован
ACCESS_DENIED Нет прав на операцию (общий запрет)
INVALID_LIMIT limit вне диапазона 1..500
INVALID_OFFSET offset < 0
INVALID_FILTER Некорректный filter или неизвестное поле
INVALID_FILTER_OPERATOR Неизвестный оператор фильтра
FETCH_ALL_LIMIT_EXCEEDED При fetchAll=true подходящих записей больше защитного лимита (по умолчанию 5000)
INTERNAL_ERROR Внутренняя ошибка сервера

Пример запроса (GET)

curl -G "https://{портал}/rest/{user_id}/{webhook_code}/goalsmanagement.goal.list.json" \
          -H "Accept: application/json" \
          --data-urlencode "limit=20" \
          --data-urlencode "offset=0" \
          --data-urlencode "filter[canCascade][$eq]=Y"
        

Пример ответа

{
          "result": {
            "result": [
              {
                "id": 101,
                "active": true,
                "name": "Увеличить выручку отдела",
                "type": "strategy",
                "weightGoals": 40,
                "weightStep": 5,
                "maxPercent": 120,
                "percentStep": 5,
                "sort": 100,
                "canCascade": true,
                "color": "#2FC6F6",
                "dateCreate": "2026-01-10 09:15:00",
                "timestampX": "2026-07-15 14:30:00",
                "createdBy": 15,
                "modifiedBy": 15
              }
            ],
            "error": null,
            "next": null
          },
          "total": 1
        }
        

См. также

Предыдущая