Добавление элемента
POST /core/static/items/add
Описание
Этот эндпоинт используется для добавления нового элемента. Запрос включает обязательные параметры, такие как название, URL, а также массив полей с их настройками. В ответ возвращается информация о созданном элементе.
Параметры запроса
Обязательные параметры:
- name — название элемента.
- url — URL элемента.
- fields — массив объектов, описывающих параметры элемента.
Вспомогательные параметры:
Нет
Пример:
POST
/core/static/items/add
Отправляемы данные FormData:
1{
2 "name": "TestItem123",
3 "url": "test_item_123",
4 "active": false,
5 "fields": [
6 {
7 "type": "text",
8 "name": "exampleField1",
9 "value": "Example text"
10 },
11 {
12 "type": "boolean",
13 "name": "exampleField2",
14 "value": true
15 },
16 {
17 "type": "date",
18 "name": "exampleField3",
19 "value": "2024-12-31"
20 }
21 ]
22}Ответ
Ответ возвращается в формате JSON и содержит следующие ключевые поля:
- id — Уникальный идентификатор элемента.
- name — Название элемента.
- url — URL элемента.
- fields — Массив полей, описывающих параметры элемента.
- active — Статус активности элемента (true / false).
- hits — Количество обращений к элементу.
- sort — Порядок сортировки элемента.
- createdAt — Дата и время создания элемента.
- updatedAt — Дата и время последнего обновления элемента.
POST
/core/static/items/add
При успешном запросе, ответ будет выглядеть так:
1{
2 "status": "success",
3 "payload": {
4 "id": 101,
5 "name": "SampleItem",
6 "url": "sample_item",
7 "fields": [
8 {
9 "type": "text",
10 "name": "exampleField1",
11 "value": "Sample text value"
12 },
13 {
14 "type": "boolean",
15 "name": "exampleField2",
16 "value": false
17 },
18 {
19 "type": "date",
20 "name": "exampleField3",
21 "value": "2024-12-25"
22 }
23 ],
24 "active": true,
25 "hits": 0,
26 "sort": 500,
27 "createdAt": "2024-11-25T10:00:00.000Z",
28 "updatedAt": "2024-11-25T10:00:00.000Z"
29 }
30}Интерфейс
1interface IStatik {
2 id: number | null;
3 name: string;
4 url: string;
5 active: boolean;
6 fields: Array < {
7 type: string;
8 name: string;
9 value: any;
10 } > ;
11 hits: number;
12 sort: number;
13 sectionId: number | null;
14}