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
}