goalsmanagement.ratingitem.list

Scope: goalsmanagement

Кто может вызывать: Авторизованный с доступом к карточке. Подробнее: Права доступа

Список оценок по карточке (обязателен cardId)

HTTP: GET

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

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

Параметр Тип Обяз. Описание
limit int нет Размер страницы, по умолчанию 50, максимум 500
offset int нет Смещение, по умолчанию 0
fetchAll bool нет fetchAll flag
filter.cardId int да ID карточки оценки (top-level cardId accepted)

Поля filter (Mongo)

Поддерживаемые поля: cardId, id, progress, progressPrev, weight, goal, task, type_goal, criterion, commentGeneral, commentEmployee, commentHead, commentFuncHead, commentDirector, commentAdmin, depend, file_rating, file_result, file_goals, relatedCard, userGoalId, createdBy, modifiedBy, dateCreate, dateModify, percentStep, color, progressHint, sort, maxPercent.

Операторы: $eq, $ne, $gt, $gte, $lt, $lte, $in, $nin. Для enum-полей допускаются xmlId или числовой id значения.

Пагинация

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

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

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

Каждая строка дополнительно содержит каталожные пользовательские поля, видимые в карточке оценки (SHOW_IN_RATING_CARD=Y, с учётом override):

Поле Тип Описание
progressFormulaMode string Режим расчёта % выполнения цели строки: growth | decline | custom (для строк без цели из каталога — growth)
progressFormulaExpression string Формула, по которой считается прогресс (для встроенных режимов — их текст)
quantChildrenCalcMode string SUM | AVG — режим покрытия/rollup по подцелям: сначала значение из HL строки цели карточки, иначе из каталога QUANT_CHILDREN_CALC_MODE
userFields object Значения UF: ключ — fieldId (int); приоритет: rating_card → предыдущая утверждённая оценка → goal_card → default
catalogGoalId int ID цели каталога, по которой создана строка (по нему подбираются переопределения полей); 0, если цель не из каталога
userFieldMeta object Мета по полю: { isRequired, allowEmployeeEdit, allowCascade, allowEditInCascaded, fillInRatingCard, active }. allowEmployeeEdit=false блокирует запись UF для всех ролей

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

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

Код Описание
UNAUTHORIZED Пользователь не авторизован
VALIDATION_ERROR Некорректные или неполные параметры
CARD_NOT_FOUND Карточка целей/оценки не найдена
INVALID_FILTER Некорректный filter или неизвестное поле
INTERNAL_ERROR Внутренняя ошибка сервера

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

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

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

{
          "result": {
            "result": [
              {
                "id": 9001,
                "file_id": 3002,
                "file_name": "quarter-report.pdf",
                "file_url": "/upload/quarter-report.pdf",
                "progress": 65,
                "commentEmployee": "План выполнен на 65%",
                "commentHead": "Результат подтверждён",
                "commentGeneral": "Оценка за второй квартал",
                "relatedCard": 701,
                "userGoalId": 1001,
                "goal": "Увеличить выручку отдела",
                "type_goal": "Стратегическая",
                "criterion": "Рост выручки на 15%",
                "weight": 40,
                "progressFormulaMode": "growth",
                "progressFormulaExpression": "fact / plan",
                "employeeId": 15,
                "dateCreate": "2026-07-01 10:00:00",
                "dateModify": "2026-07-20 16:45:00",
                "userFields": {
                  "12": "Q3 focus"
                },
                "userFieldMeta": {
                  "12": {
                    "isRequired": true,
                    "allowEmployeeEdit": true,
                    "allowCascade": true,
                    "allowEditInCascaded": true,
                    "fillInRatingCard": true,
                    "active": true
                  }
                }
              }
            ],
            "error": null,
            "next": null
          },
          "total": 1
        }
        

См. также