homepage.blocks.list
Scope:
homepageКто может вызывать: Авторизованный пользователь
Каталог блоков главной (центр и сайдбар): встроенные блоки и локальные блоки из /local/ithive.homepage/blocks/ с эффективными настройками сайта (title, active, sort, rights, mobile, menu). Блоки, недоступные пользователю по rights, не возвращаются. Новый локальный блок из /local возвращается с active = false, пока его не включили. Порядок: зона (центр, затем сайдбар), sort, code.
HTTP: GET
Побочные эффекты: нет
Параметры метода
| Параметр | Тип | Обяз. | Описание |
|---|---|---|---|
siteId |
string |
нет | Код сайта; по умолчанию текущий. |
filter |
object |
нет | Mongo-фильтр по полям code, zone, source, title, sort, active; операторы $eq, $ne, $gt, $gte, $lt, $lte, $in, $nin. filter.siteId, если задан, должен совпадать с siteId. |
limit |
int |
нет | Размер страницы (по умолчанию 50, максимум 500). |
offset |
int |
нет | Смещение. |
fetchAll |
bool |
нет | Вернуть все страницы. |
Возвращаемые данные
result- массив блоков (формат объекта блока описан в обзоре раздела). Пути к файлам блоков в ответ не попадают.total- общее количество блоков по фильтру.next- смещение следующей страницы илиnull.error-nullпри успехе.
Обработка ошибок
| Код | Описание |
|---|---|
UNAUTHORIZED |
Пользователь не авторизован |
INVALID_LIMIT |
limit не положительный |
LIMIT_EXCEEDED |
limit больше 500 |
INVALID_OFFSET |
offset отрицательный |
INVALID_FILTER |
Некорректная структура фильтра |
INVALID_FILTER_OPERATOR |
Неизвестный оператор фильтра |
FETCH_ALL_LIMIT_EXCEEDED |
Превышен лимит fetchAll |
VALIDATION_ERROR |
Некорректные параметры запроса, в том числе неизвестное поле фильтра (error.details.allowed - допустимые поля) или filter.siteId, не совпадающий с siteId |
INTERNAL_ERROR |
Внутренняя ошибка сервиса |
Примеры кода
Пример запроса
curl -G "https://{portal}/rest/{user_id}/{webhook_code}/homepage.blocks.list.json" \
--data-urlencode 'filter={"zone":"right","source":"local"}' \
-H "Accept: application/json"
Пример ответа
{
"result": {
"result": [
{
"code": "acme_links",
"zone": "right",
"source": "local",
"title": "Полезные ссылки",
"sort": 300,
"defaultSort": 500,
"active": true,
"siteId": "s1",
"rights": {"admin": false, "groups": []},
"mobile": {"type": "none", "url": "", "dataMethod": ""},
"menu": null,
"left_menu": false
}
],
"next": null,
"error": null
},
"total": 1
}
См. также
Предыдущая
Следующая