Список секций

GET /api/static/items/

Описание

Эндпоинт предназначен для получения списка секций. Каждая секция может содержать как базовую информацию, такую как название, URL и статус, так и вложенные элементы, относящиеся к данной секции.

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

Обязательные параметры:

Нет

Вспомогательные параметры:

  • sortBy — параметр для сортировки по указанному полю
  • sortOrder — порядок сортировки: ASC (по возрастанию) или DESC (по убыванию).
  • limit — ограничение на количество записей, возвращаемых в одном запросе.
  • page — номер страницы для постраничного вывода данных.

Пример:
GET /api/static/items?sortBy=name&sortOrder=ASC&limit=20&page=1

Ответ

Ответ возвращается в формате JSON и включает данные о каждой секции, такие как:

  • id — Уникальный идентификатор секции.
  • name — Название секции.
  • url — URL секции.
  • description — Описание секции (может быть null).
  • active — Статус активности (true / false).
  • sort — Порядок сортировки секции.
  • parentId — Идентификатор родительской секции (если применимо).
  • hits — Количество обращений к секции.
  • createdAt — Дата и время создания секции.
  • updatedAt — Дата и время последнего обновления секции.
  • items — Список элементов, входящих в секцию.
GET
/api/static/items/

При успешном запросе, ответ будет выглядеть так:

1{
2  "status": "success",
3  "payload": [
4    {
5      "id": 1,
6      "name": "Новая секция",
7      "url": "novaya_sektsiya",
8      "description": null,
9      "active": true,
10      "sort": 0,
11      "parentId": null,
12      "hits": 0,
13      "createdAt": "2024-10-25T19:02:34.000Z",
14      "updatedAt": "2024-10-25T19:02:34.000Z",
15      "items": [
16        {
17          "id": 324,
18          "name": "home_teaser_copy_1",
19          "active": true
20        },
21        {
22          "id": 1642,
23          "name": "Test21112024",
24          "active": true
25        }
26      ]
27    }
28  ],
29  "pagination": {
30    "limit": 20,
31    "offset": 0,
32    "currentTotal": 1,
33    "total": 35,
34    "page": 1
35  }
36}

Интерфейс

1interface IStatikSection {
2  id: number;
3  name: string;
4  description: string;
5  url: string;
6  hits: number;
7  parentId ? : number;
8  sort: number;
9  active: boolean;
10}