Каталоги (Catalogs)
Ресурс Catalog — каталог с записями.

Список каталогов

Запрос
Ответ
1
URL: {domain}/api/v1/catalogs?section={sectionId}
Copied!
Метод: GET
Параметры:
  • section (строка) — фильтр по отделу
Ответ: 200 OK (application/json)
1
[{
2
"id": "1",
3
"sectionId": "1",
4
"icon": "user-2",
5
"name": "My catalog",
6
"fieldPrivilegeCodes": {
7
"9": "edit",
8
"22": "edit"
9
}
10
},
11
{
12
"id": "2",
13
"sectionId": "2",
14
"icon": "user-3",
15
"name": "Another catalog",
16
"fieldPrivilegeCodes": {}
17
}]
Copied!

Получить каталог

Запрос
Ответ
1
URL: {domain}/api/v1/catalogs/{catalogId}
2
{?fields}
Copied!
Метод: GET
Параметры:
  • catalogId (строка) — идентификатор каталога
  • fields (json array, опционально) — набор возвращаемых полей записей, формат: ["2", "3"]. Доступно с версии API 1.9.1.
Ответ: 200 OK (application/json)
1
{
2
"id": "1",
3
"sectionId": "1",
4
"icon": "icon1",
5
"name": "My catalog",
6
"privilegeCode": "admin", // право на каталог
7
"fieldPrivilegeCodes": { // права на поля для пользователя от имени которого пришел запрос
8
"9": "edit",
9
"22": "edit"
10
},
11
"fields": [
12
{
13
"id": "1",
14
"name": "User",
15
"type": "group"
16
},
17
{
18
"id": "2",
19
"name": "Username",
20
"type": "text",
21
"config": {
22
"type": "mail"
23
}
24
},
25
{
26
"id": "3",
27
"name": "Birthday",
28
"type": "date",
29
"config": {
30
"time": false
31
},
32
{
33
"id": "28",
34
"name": "Связанный каталог",
35
"type": "object",
36
"hint": "",
37
"required": false,
38
"apiOnly": false,
39
"config": {
40
"multiselect": true,
41
"accessOnly": false,
42
"catalogs": [
43
{
44
"id": "25",
45
"title": "Связанный каталог",
46
"icon": "business-23",
47
"removed": false
48
}
49
],
50
"views": [],
51
"fields": {
52
"25": [
53
{
54
"id": "2",
55
"name": "Число",
56
"type": "number",
57
"hint": "",
58
"required": false,
59
"apiOnly": false,
60
"config": {
61
"unit": "",
62
"defaultEmptyValue": null
63
}
64
},
65
{
66
"id": "3",
67
"name": "Дата",
68
"type": "date",
69
"hint": "",
70
"required": false,
71
"apiOnly": false,
72
"config": {
73
"time": false,
74
"defaultValue": false
75
}
76
},
77
{
78
"id": "4",
79
"name": "Связанный каталог",
80
"type": "object",
81
"hint": "",
82
"required": false,
83
"apiOnly": false,
84
"config": {
85
"catalogs": [],
86
"views": [],
87
"defaultEmptyValue": [],
88
"fields": {}
89
}
90
}
91
]
92
},
93
"defaultEmptyValue": []
94
}
95
}
96
]
97
}
Copied!

Создать каталог

Запрос
Ответ
1
URL: {domain}/api/v1/catalogs/
Copied!
Метод: POST
Запрос: (application/json)
1
{
2
"name": "New catalog",
3
"icon": "icon",
4
"sectionId": "2",
5
"fields": [{
6
"name": "Секция",
7
"hint": "",
8
"type": "group",
9
"config": {}
10
}, {
11
"name": "Текст",
12
"hint": "Подсказка к полю текст",
13
"type": "text",
14
"config": {
15
"type": "text"
16
}
17
}, {
18
"name": "Дата",
19
"hint": "",
20
"type": "date",
21
"config": {
22
"time": false,
23
"notificationField": null
24
}
25
}, {
26
"name": "Набор галочек",
27
"hint": "",
28
"type": "checkboxes",
29
"config": {
30
"items": [{
31
"name": "1"
32
}, {
33
"name": "2"
34
}, {
35
"name": "3"
36
}]
37
}
38
}, {
39
"name": "Прогресс",
40
"hint": "",
41
"type": "progress",
42
"config": {}
43
}, {
44
"name": "Сотрудник",
45
"hint": "",
46
"type": "user",
47
"config": {
48
"multiselect": false
49
}
50
}, {
51
"name": "Связанный объект",
52
"hint": "",
53
"type": "object",
54
"config": {
55
"multiselect": false,
56
"catalogs": [{
57
"id": "11"
58
}]
59
}
60
}, {
61
"name": "Файл",
62
"hint": "",
63
"type": "file",
64
"config": {
65
"multiselect": false
66
}
67
}]
68
}
Copied!
Возможные значения для icon описаны в документации.
Ответ: 200 OK (application/json)
1
{
2
"id": "3" // идентификатор созданного каталога
3
"values": {
4
// значения полей аналогично получению каталога
5
}
6
}
Copied!

Изменить каталог

Запрос
Ответ
1
URL: {domain}/api/v1/catalogs/{catalogId}
Copied!
Метод: PATCH
Параметры:
  • catalogId (строка) — идентификатор каталога
Запрос: (application/json)
1
{
2
"name": "My catalog1",
3
// если не передать параметр (например icon), то он изменен не будет
4
"fields" : [
5
{
6
"id": "1", // чтобы сохранить существующее поле, нужно указать его id
7
"name": "User",
8
"type": "group"
9
},
10
{
11
"id": "2",
12
"name": "User full name", // в существующем поле можно изменить имя
13
"type": "text", // тип заменить нельзя
14
"config": { // в существующем поле можно изменить его параметры
15
"type": "mail"
16
}
17
},
18
19
// поле 3 в новом наборе полей не передали: если оно было, оно будет удалено
20
21
// создали новое поле
22
{
23
"name": "Age",
24
"type": "number"
25
}
26
]
27
}
Copied!
Ответ: 200 OK

Удалить каталог

Запрос
Ответ
1
URL: {domain}/api/v1/catalogs/{catalogId}
Copied!
Метод: DELETE
Параметры:
  • catalogId (строка) — идентификатор каталога
Ответ: 200 OK
Last modified 5d ago