@pachca/cli 2026.3.1 → 2026.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/base-command.d.ts +11 -1
- package/dist/base-command.d.ts.map +1 -1
- package/dist/base-command.js +34 -3
- package/dist/base-command.js.map +1 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +40 -6
- package/dist/client.js.map +1 -1
- package/dist/commands/api.d.ts.map +1 -1
- package/dist/commands/api.js +1 -1
- package/dist/commands/api.js.map +1 -1
- package/dist/commands/auth/list.d.ts.map +1 -1
- package/dist/commands/auth/list.js +1 -1
- package/dist/commands/auth/list.js.map +1 -1
- package/dist/commands/auth/login.d.ts.map +1 -1
- package/dist/commands/auth/login.js +6 -5
- package/dist/commands/auth/login.js.map +1 -1
- package/dist/commands/auth/logout.d.ts.map +1 -1
- package/dist/commands/auth/logout.js +1 -1
- package/dist/commands/auth/logout.js.map +1 -1
- package/dist/commands/auth/refresh.d.ts.map +1 -1
- package/dist/commands/auth/refresh.js +3 -3
- package/dist/commands/auth/refresh.js.map +1 -1
- package/dist/commands/auth/status.d.ts.map +1 -1
- package/dist/commands/auth/status.js +1 -1
- package/dist/commands/auth/status.js.map +1 -1
- package/dist/commands/auth/switch.d.ts.map +1 -1
- package/dist/commands/auth/switch.js +1 -1
- package/dist/commands/auth/switch.js.map +1 -1
- package/dist/commands/bots/remove-event.d.ts.map +1 -1
- package/dist/commands/bots/remove-event.js +2 -3
- package/dist/commands/bots/remove-event.js.map +1 -1
- package/dist/commands/bots/update.d.ts +1 -0
- package/dist/commands/bots/update.d.ts.map +1 -1
- package/dist/commands/bots/update.js +4 -7
- package/dist/commands/bots/update.js.map +1 -1
- package/dist/commands/changelog.d.ts.map +1 -1
- package/dist/commands/changelog.js +1 -1
- package/dist/commands/changelog.js.map +1 -1
- package/dist/commands/chats/archive.js +1 -1
- package/dist/commands/chats/archive.js.map +1 -1
- package/dist/commands/chats/create.d.ts +1 -0
- package/dist/commands/chats/create.d.ts.map +1 -1
- package/dist/commands/chats/create.js +2 -4
- package/dist/commands/chats/create.js.map +1 -1
- package/dist/commands/chats/get.js +1 -1
- package/dist/commands/chats/get.js.map +1 -1
- package/dist/commands/chats/unarchive.js +1 -1
- package/dist/commands/chats/unarchive.js.map +1 -1
- package/dist/commands/chats/update.d.ts.map +1 -1
- package/dist/commands/chats/update.js +2 -3
- package/dist/commands/chats/update.js.map +1 -1
- package/dist/commands/commands.d.ts.map +1 -1
- package/dist/commands/commands.js +7 -5
- package/dist/commands/commands.js.map +1 -1
- package/dist/commands/common/custom-properties.d.ts +1 -0
- package/dist/commands/common/custom-properties.d.ts.map +1 -1
- package/dist/commands/common/custom-properties.js +2 -5
- package/dist/commands/common/custom-properties.js.map +1 -1
- package/dist/commands/common/direct-url.d.ts +1 -0
- package/dist/commands/common/direct-url.d.ts.map +1 -1
- package/dist/commands/common/direct-url.js +2 -4
- package/dist/commands/common/direct-url.js.map +1 -1
- package/dist/commands/common/request-export.d.ts +1 -0
- package/dist/commands/common/request-export.d.ts.map +1 -1
- package/dist/commands/common/request-export.js +2 -4
- package/dist/commands/common/request-export.js.map +1 -1
- package/dist/commands/config/get.d.ts.map +1 -1
- package/dist/commands/config/get.js +1 -1
- package/dist/commands/config/get.js.map +1 -1
- package/dist/commands/config/list.d.ts.map +1 -1
- package/dist/commands/config/list.js +1 -1
- package/dist/commands/config/list.js.map +1 -1
- package/dist/commands/config/set.d.ts.map +1 -1
- package/dist/commands/config/set.js +1 -1
- package/dist/commands/config/set.js.map +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +3 -3
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/group-tags/create.d.ts +1 -0
- package/dist/commands/group-tags/create.d.ts.map +1 -1
- package/dist/commands/group-tags/create.js +2 -4
- package/dist/commands/group-tags/create.js.map +1 -1
- package/dist/commands/group-tags/delete.d.ts.map +1 -1
- package/dist/commands/group-tags/delete.js +1 -2
- package/dist/commands/group-tags/delete.js.map +1 -1
- package/dist/commands/group-tags/update.d.ts +1 -0
- package/dist/commands/group-tags/update.d.ts.map +1 -1
- package/dist/commands/group-tags/update.js +3 -6
- package/dist/commands/group-tags/update.js.map +1 -1
- package/dist/commands/guide.d.ts.map +1 -1
- package/dist/commands/guide.js +5 -3
- package/dist/commands/guide.js.map +1 -1
- package/dist/commands/introspect.d.ts.map +1 -1
- package/dist/commands/introspect.js +15 -5
- package/dist/commands/introspect.js.map +1 -1
- package/dist/commands/link-previews/add.d.ts +1 -0
- package/dist/commands/link-previews/add.d.ts.map +1 -1
- package/dist/commands/link-previews/add.js +2 -4
- package/dist/commands/link-previews/add.js.map +1 -1
- package/dist/commands/members/add-group-tags.d.ts +1 -0
- package/dist/commands/members/add-group-tags.d.ts.map +1 -1
- package/dist/commands/members/add-group-tags.js +2 -4
- package/dist/commands/members/add-group-tags.js.map +1 -1
- package/dist/commands/members/add.d.ts +1 -0
- package/dist/commands/members/add.d.ts.map +1 -1
- package/dist/commands/members/add.js +2 -4
- package/dist/commands/members/add.js.map +1 -1
- package/dist/commands/members/leave.d.ts.map +1 -1
- package/dist/commands/members/leave.js +1 -2
- package/dist/commands/members/leave.js.map +1 -1
- package/dist/commands/members/remove-group-tag.d.ts.map +1 -1
- package/dist/commands/members/remove-group-tag.js +2 -3
- package/dist/commands/members/remove-group-tag.js.map +1 -1
- package/dist/commands/members/remove.d.ts.map +1 -1
- package/dist/commands/members/remove.js +2 -3
- package/dist/commands/members/remove.js.map +1 -1
- package/dist/commands/members/update.d.ts +1 -0
- package/dist/commands/members/update.d.ts.map +1 -1
- package/dist/commands/members/update.js +4 -7
- package/dist/commands/members/update.js.map +1 -1
- package/dist/commands/messages/create.d.ts +1 -0
- package/dist/commands/messages/create.d.ts.map +1 -1
- package/dist/commands/messages/create.js +9 -9
- package/dist/commands/messages/create.js.map +1 -1
- package/dist/commands/messages/delete.d.ts.map +1 -1
- package/dist/commands/messages/delete.js +2 -3
- package/dist/commands/messages/delete.js.map +1 -1
- package/dist/commands/messages/get.js +1 -1
- package/dist/commands/messages/get.js.map +1 -1
- package/dist/commands/messages/list.d.ts +1 -0
- package/dist/commands/messages/list.d.ts.map +1 -1
- package/dist/commands/messages/list.js +2 -4
- package/dist/commands/messages/list.js.map +1 -1
- package/dist/commands/messages/pin.js +1 -1
- package/dist/commands/messages/pin.js.map +1 -1
- package/dist/commands/messages/unpin.d.ts.map +1 -1
- package/dist/commands/messages/unpin.js +2 -3
- package/dist/commands/messages/unpin.js.map +1 -1
- package/dist/commands/messages/update.d.ts.map +1 -1
- package/dist/commands/messages/update.js +2 -3
- package/dist/commands/messages/update.js.map +1 -1
- package/dist/commands/profile/delete-status.d.ts.map +1 -1
- package/dist/commands/profile/delete-status.js +1 -2
- package/dist/commands/profile/delete-status.js.map +1 -1
- package/dist/commands/profile/update-status.d.ts +1 -0
- package/dist/commands/profile/update-status.d.ts.map +1 -1
- package/dist/commands/profile/update-status.js +8 -8
- package/dist/commands/profile/update-status.js.map +1 -1
- package/dist/commands/reactions/add.d.ts +1 -0
- package/dist/commands/reactions/add.d.ts.map +1 -1
- package/dist/commands/reactions/add.js +2 -4
- package/dist/commands/reactions/add.js.map +1 -1
- package/dist/commands/reactions/remove.d.ts +1 -0
- package/dist/commands/reactions/remove.d.ts.map +1 -1
- package/dist/commands/reactions/remove.js +3 -6
- package/dist/commands/reactions/remove.js.map +1 -1
- package/dist/commands/security/list.d.ts +1 -0
- package/dist/commands/security/list.d.ts.map +1 -1
- package/dist/commands/security/list.js +2 -4
- package/dist/commands/security/list.js.map +1 -1
- package/dist/commands/tasks/create.d.ts +1 -0
- package/dist/commands/tasks/create.d.ts.map +1 -1
- package/dist/commands/tasks/create.js +5 -7
- package/dist/commands/tasks/create.js.map +1 -1
- package/dist/commands/tasks/delete.d.ts.map +1 -1
- package/dist/commands/tasks/delete.js +2 -3
- package/dist/commands/tasks/delete.js.map +1 -1
- package/dist/commands/tasks/get.js +1 -1
- package/dist/commands/tasks/get.js.map +1 -1
- package/dist/commands/tasks/list.js +2 -2
- package/dist/commands/tasks/list.js.map +1 -1
- package/dist/commands/tasks/update.d.ts.map +1 -1
- package/dist/commands/tasks/update.js +2 -3
- package/dist/commands/tasks/update.js.map +1 -1
- package/dist/commands/users/create.d.ts +1 -0
- package/dist/commands/users/create.d.ts.map +1 -1
- package/dist/commands/users/create.js +2 -4
- package/dist/commands/users/create.js.map +1 -1
- package/dist/commands/users/delete.d.ts.map +1 -1
- package/dist/commands/users/delete.js +2 -3
- package/dist/commands/users/delete.js.map +1 -1
- package/dist/commands/users/get-status.js +1 -1
- package/dist/commands/users/get-status.js.map +1 -1
- package/dist/commands/users/get.js +1 -1
- package/dist/commands/users/get.js.map +1 -1
- package/dist/commands/users/remove-status.d.ts.map +1 -1
- package/dist/commands/users/remove-status.js +2 -3
- package/dist/commands/users/remove-status.js.map +1 -1
- package/dist/commands/users/update-status.d.ts +1 -0
- package/dist/commands/users/update-status.d.ts.map +1 -1
- package/dist/commands/users/update-status.js +9 -9
- package/dist/commands/users/update-status.js.map +1 -1
- package/dist/commands/users/update.d.ts.map +1 -1
- package/dist/commands/users/update.js +2 -3
- package/dist/commands/users/update.js.map +1 -1
- package/dist/commands/version.d.ts.map +1 -1
- package/dist/commands/version.js +1 -1
- package/dist/commands/version.js.map +1 -1
- package/dist/commands/views/open.d.ts +1 -0
- package/dist/commands/views/open.d.ts.map +1 -1
- package/dist/commands/views/open.js +12 -16
- package/dist/commands/views/open.js.map +1 -1
- package/dist/data/changelog.json +46 -290
- package/dist/data/workflows.json +118 -346
- package/dist/hooks/init.d.ts.map +1 -1
- package/dist/hooks/init.js +7 -5
- package/dist/hooks/init.js.map +1 -1
- package/dist/hooks/postrun.js +1 -1
- package/dist/hooks/postrun.js.map +1 -1
- package/dist/output.d.ts.map +1 -1
- package/dist/output.js +9 -2
- package/dist/output.js.map +1 -1
- package/oclif.manifest.json +736 -658
- package/package.json +61 -5
package/dist/data/workflows.json
CHANGED
|
@@ -5,11 +5,11 @@
|
|
|
5
5
|
"steps": [
|
|
6
6
|
{
|
|
7
7
|
"description": "GET /chats — перебери результаты, найди нужный по полю `name`",
|
|
8
|
-
"command": "pachca
|
|
8
|
+
"command": "pachca chats list --all # перебери результаты, найди по полю name"
|
|
9
9
|
},
|
|
10
10
|
{
|
|
11
11
|
"description": "Отправь POST /messages с `\"entity_id\": chat.id`",
|
|
12
|
-
"command": "pachca
|
|
12
|
+
"command": "pachca messages create --entity-id=<chat_id> --content=\"Текст сообщения\""
|
|
13
13
|
}
|
|
14
14
|
]
|
|
15
15
|
},
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"steps": [
|
|
20
20
|
{
|
|
21
21
|
"description": "Отправь POST /messages с `\"entity_id\": chat_id`",
|
|
22
|
-
"command": "pachca
|
|
22
|
+
"command": "pachca messages create --entity-id=<chat_id> --content=\"Текст сообщения\""
|
|
23
23
|
}
|
|
24
24
|
]
|
|
25
25
|
},
|
|
@@ -29,11 +29,11 @@
|
|
|
29
29
|
"steps": [
|
|
30
30
|
{
|
|
31
31
|
"description": "Определи `user_id` получателя (GET /users или из контекста)",
|
|
32
|
-
"command": "pachca
|
|
32
|
+
"command": "pachca users list # определи user_id получателя"
|
|
33
33
|
},
|
|
34
34
|
{
|
|
35
35
|
"description": "Отправь POST /messages с `\"entity_type\": \"user\"`, `\"entity_id\": user_id`",
|
|
36
|
-
"command": "pachca
|
|
36
|
+
"command": "pachca messages create --entity-type=user --entity-id=<user_id> --content=\"Привет!\""
|
|
37
37
|
}
|
|
38
38
|
]
|
|
39
39
|
},
|
|
@@ -42,15 +42,12 @@
|
|
|
42
42
|
"skill": "pachca-messages",
|
|
43
43
|
"steps": [
|
|
44
44
|
{
|
|
45
|
-
"description": "
|
|
46
|
-
"command": "pachca
|
|
47
|
-
},
|
|
48
|
-
{
|
|
49
|
-
"description": "Из ответа возьми id треда (`thread.id`)"
|
|
45
|
+
"description": "POST /messages/{id}/thread — получи или создай тред (`id` — id родительского сообщения), возьми `thread.id` из ответа",
|
|
46
|
+
"command": "pachca thread add <ID> # возьми thread.id из ответа"
|
|
50
47
|
},
|
|
51
48
|
{
|
|
52
49
|
"description": "Отправь POST /messages с `\"entity_type\": \"thread\"`, `\"entity_id\": thread.id`",
|
|
53
|
-
"command": "pachca
|
|
50
|
+
"command": "pachca messages create --entity-type=thread --entity-id=<thread_id> --content=\"Ответ в тред\""
|
|
54
51
|
}
|
|
55
52
|
]
|
|
56
53
|
},
|
|
@@ -58,20 +55,17 @@
|
|
|
58
55
|
"title": "Ответить пользователю, который написал боту",
|
|
59
56
|
"skill": "pachca-messages",
|
|
60
57
|
"steps": [
|
|
61
|
-
{
|
|
62
|
-
"description": "Вебхук содержит `entity_type` — он однозначно определяет контекст: `\"user\"` — личное сообщение боту, `\"thread\"` — сообщение в треде, `\"discussion\"` — сообщение в канале или беседе"
|
|
63
|
-
},
|
|
64
58
|
{
|
|
65
59
|
"description": "DM (`entity_type: \"user\"`): ответь POST /messages с `\"entity_type\": \"user\"`, `\"entity_id\"`: `user_id` из вебхука",
|
|
66
|
-
"command": "pachca
|
|
60
|
+
"command": "pachca messages create --entity-type=user --entity-id=<user_id> --content=\"Ответ\""
|
|
67
61
|
},
|
|
68
62
|
{
|
|
69
63
|
"description": "Тред (`entity_type: \"thread\"`): вложенных тредов нет — ответь в тот же тред: POST /messages с `\"entity_type\": \"thread\"`, `\"entity_id\"`: `entity_id` из вебхука, `\"parent_message_id\"`: `id` сообщения пользователя из вебхука",
|
|
70
|
-
"command": "pachca
|
|
64
|
+
"command": "pachca messages create --entity-type=thread --entity-id=<entity_id> --parent-message-id=<id> --content=\"Ответ\""
|
|
71
65
|
},
|
|
72
66
|
{
|
|
73
67
|
"description": "Беседа/канал (`entity_type: \"discussion\"`): выбери стратегию — inline-ответ (POST /messages c `\"parent_message_id\"`: `id` сообщения) или тред (POST /messages/{id}/thread → ответ в тред)",
|
|
74
|
-
"command": "pachca
|
|
68
|
+
"command": "pachca messages create --entity-id=<entity_id> --parent-message-id=<id> --content=\"Ответ\""
|
|
75
69
|
}
|
|
76
70
|
]
|
|
77
71
|
},
|
|
@@ -81,17 +75,11 @@
|
|
|
81
75
|
"steps": [
|
|
82
76
|
{
|
|
83
77
|
"description": "Для каждого файла: POST /uploads → получи `key` (с `${filename}`), `direct_url`, `policy`, подпись",
|
|
84
|
-
"command": "pachca
|
|
85
|
-
},
|
|
86
|
-
{
|
|
87
|
-
"description": "Для каждого файла: подставь имя файла вместо `${filename}` в `key`, затем загрузи файл POST на `direct_url` (`multipart/form-data`, без авторизации)"
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
"description": "Собери массив `files` из всех загруженных файлов (`key`, `name`, `file_type`, `size`)"
|
|
78
|
+
"command": "pachca common uploads # получи key, direct_url, policy, подпись"
|
|
91
79
|
},
|
|
92
80
|
{
|
|
93
81
|
"description": "Отправь POST /messages с массивом `files` — одно сообщение со всеми файлами",
|
|
94
|
-
"command": "pachca
|
|
82
|
+
"command": "pachca messages create --entity-id=<chat_id> --content=\"Смотри файл\" --files='[{\"key\":\"...\",\"name\":\"report.pdf\",\"file_type\":\"file\",\"size\":12345}]'"
|
|
95
83
|
}
|
|
96
84
|
]
|
|
97
85
|
},
|
|
@@ -99,18 +87,9 @@
|
|
|
99
87
|
"title": "Отправить сообщение с кнопками",
|
|
100
88
|
"skill": "pachca-messages",
|
|
101
89
|
"steps": [
|
|
102
|
-
{
|
|
103
|
-
"description": "Сформируй массив `buttons` — массив строк, каждая строка — массив кнопок: `[[{кнопка1, кнопка2}, ...], ...]`"
|
|
104
|
-
},
|
|
105
|
-
{
|
|
106
|
-
"description": "Каждая кнопка: `{\"text\": \"Текст\"}` + либо `url` (ссылка), либо `data` (callback для вебхука)"
|
|
107
|
-
},
|
|
108
90
|
{
|
|
109
91
|
"description": "Отправь POST /messages с полем `buttons`",
|
|
110
|
-
"command": "pachca
|
|
111
|
-
},
|
|
112
|
-
{
|
|
113
|
-
"description": "Нажатия кнопок приходят в исходящий вебхук (событие \"Нажатие кнопок\")"
|
|
92
|
+
"command": "pachca messages create --entity-id=<chat_id> --content=\"Выбери действие\" --buttons='[[{\"text\":\"Подробнее\",\"url\":\"https://example.com\"},{\"text\":\"Отлично!\",\"data\":\"awesome\"}]]'"
|
|
114
93
|
}
|
|
115
94
|
]
|
|
116
95
|
},
|
|
@@ -119,14 +98,8 @@
|
|
|
119
98
|
"skill": "pachca-messages",
|
|
120
99
|
"steps": [
|
|
121
100
|
{
|
|
122
|
-
"description": "GET /messages?chat_id={id}",
|
|
123
|
-
"command": "pachca
|
|
124
|
-
},
|
|
125
|
-
{
|
|
126
|
-
"description": "Пагинация: `limit` (1-50, по умолчанию 50) и `cursor` (из `meta.paginate.next_page`)"
|
|
127
|
-
},
|
|
128
|
-
{
|
|
129
|
-
"description": "Сортировка: `sort[id]=asc` или `sort[id]=desc` (по умолчанию `\"desc\"`)"
|
|
101
|
+
"description": "GET /messages?chat_id={id} — пагинация: `limit` (1-50, по умолчанию 50), `cursor` (из `meta.paginate.next_page`), сортировка: `sort[id]=asc` или `sort[id]=desc` (по умолчанию)",
|
|
102
|
+
"command": "pachca messages list --chat-id=<chat_id>"
|
|
130
103
|
}
|
|
131
104
|
]
|
|
132
105
|
},
|
|
@@ -136,10 +109,7 @@
|
|
|
136
109
|
"steps": [
|
|
137
110
|
{
|
|
138
111
|
"description": "GET /messages/{id} — в поле `files[]` каждый объект содержит `url` (прямая ссылка), `name`, `file_type`, `size`",
|
|
139
|
-
"command": "pachca
|
|
140
|
-
},
|
|
141
|
-
{
|
|
142
|
-
"description": "Скачай нужные файлы по `files[].url` — ссылка прямая, авторизация не требуется"
|
|
112
|
+
"command": "pachca messages get <ID> # в files[] — url, name, file_type, size"
|
|
143
113
|
}
|
|
144
114
|
]
|
|
145
115
|
},
|
|
@@ -149,11 +119,11 @@
|
|
|
149
119
|
"steps": [
|
|
150
120
|
{
|
|
151
121
|
"description": "Закрепить: POST /messages/{id}/pin",
|
|
152
|
-
"command": "pachca
|
|
122
|
+
"command": "pachca messages pin <ID>"
|
|
153
123
|
},
|
|
154
124
|
{
|
|
155
125
|
"description": "Открепить: DELETE /messages/{id}/pin",
|
|
156
|
-
"command": "pachca
|
|
126
|
+
"command": "pachca messages unpin <ID>"
|
|
157
127
|
}
|
|
158
128
|
]
|
|
159
129
|
},
|
|
@@ -162,18 +132,12 @@
|
|
|
162
132
|
"skill": "pachca-messages",
|
|
163
133
|
"steps": [
|
|
164
134
|
{
|
|
165
|
-
"description": "POST /messages/{id}/thread — если треда нет, он будет создан; если есть — вернётся
|
|
166
|
-
"command": "pachca
|
|
167
|
-
},
|
|
168
|
-
{
|
|
169
|
-
"description": "Из ответа возьми `chat_id` треда (`data.chat_id`)"
|
|
135
|
+
"description": "POST /messages/{id}/thread — если треда нет, он будет создан; если есть — вернётся существующий. Возьми `chat_id` треда из ответа (`data.chat_id`)",
|
|
136
|
+
"command": "pachca thread add <ID> # возьми chat_id треда из ответа"
|
|
170
137
|
},
|
|
171
138
|
{
|
|
172
139
|
"description": "Добавь бота (или пользователя) в участники чата треда: POST /chats/{id}/members с `member_ids`",
|
|
173
|
-
"command": "pachca
|
|
174
|
-
},
|
|
175
|
-
{
|
|
176
|
-
"description": "Теперь бот будет получать вебхук-события о новых сообщениях в этом треде"
|
|
140
|
+
"command": "pachca members add <thread_chat_id> --member-ids='[<bot_user_id>]'"
|
|
177
141
|
}
|
|
178
142
|
]
|
|
179
143
|
},
|
|
@@ -181,26 +145,17 @@
|
|
|
181
145
|
"title": "Упомянуть пользователя по имени",
|
|
182
146
|
"skill": "pachca-messages",
|
|
183
147
|
"steps": [
|
|
184
|
-
{
|
|
185
|
-
"description": "Определи поисковый запрос — используй фамилию, она уникальнее. Имена не склоняются в API, приводи к именительному падежу: «упомяни Пашу» → ищи `Паша` или `Павел`, «тегни Голубева» → ищи `Голубев`"
|
|
186
|
-
},
|
|
187
148
|
{
|
|
188
149
|
"description": "Ищи сначала среди участников целевого чата: GET /chats/{id}/members (для треда тоже работает, у него свои участники) — фильтруй по имени на клиенте",
|
|
189
|
-
"command": "pachca
|
|
150
|
+
"command": "pachca members list <chat_id> # фильтруй по имени на клиенте"
|
|
190
151
|
},
|
|
191
152
|
{
|
|
192
153
|
"description": "Если пишешь в тред: также проверь участников родительского чата (GET /chats/{id}/members с `id=message_chat_id`)",
|
|
193
|
-
"command": "pachca
|
|
154
|
+
"command": "pachca members list <parent_chat_id>"
|
|
194
155
|
},
|
|
195
156
|
{
|
|
196
157
|
"description": "Не нашёл — ищи по всей компании: GET /users?query={запрос}",
|
|
197
|
-
"command": "pachca
|
|
198
|
-
},
|
|
199
|
-
{
|
|
200
|
-
"description": "Один подходящий результат → используй `nickname`. Несколько → уточни у пользователя (имя + фамилия). Ничего → попробуй другую форму имени (уменьшительное ↔ полное)"
|
|
201
|
-
},
|
|
202
|
-
{
|
|
203
|
-
"description": "Вставь `@nickname` в текст сообщения"
|
|
158
|
+
"command": "pachca users list --query=<запрос>"
|
|
204
159
|
}
|
|
205
160
|
]
|
|
206
161
|
},
|
|
@@ -210,7 +165,7 @@
|
|
|
210
165
|
"steps": [
|
|
211
166
|
{
|
|
212
167
|
"description": "PUT /messages/{id} с полем `content` (и/или `buttons`, `files`)",
|
|
213
|
-
"command": "pachca
|
|
168
|
+
"command": "pachca messages update <ID> --content=\"Обновлённый текст\""
|
|
214
169
|
}
|
|
215
170
|
]
|
|
216
171
|
},
|
|
@@ -220,15 +175,15 @@
|
|
|
220
175
|
"steps": [
|
|
221
176
|
{
|
|
222
177
|
"description": "GET /messages/{id} — получи текущие вложения из поля `files[]`, сохрани нужные объекты (`key`, `name`, `file_type`, `size`)",
|
|
223
|
-
"command": "pachca
|
|
178
|
+
"command": "pachca messages get <ID> # сохрани нужные объекты из files[]"
|
|
224
179
|
},
|
|
225
180
|
{
|
|
226
181
|
"description": "Если нужно добавить новый файл: POST /uploads → загрузи файл → добавь объект в список",
|
|
227
|
-
"command": "pachca
|
|
182
|
+
"command": "pachca common uploads # загрузи новый файл"
|
|
228
183
|
},
|
|
229
184
|
{
|
|
230
185
|
"description": "PUT /messages/{id} с массивом `files` — только те файлы, которые должны остаться (+ новые при необходимости)",
|
|
231
|
-
"command": "pachca
|
|
186
|
+
"command": "pachca messages update <ID> --files='[...]'"
|
|
232
187
|
}
|
|
233
188
|
]
|
|
234
189
|
},
|
|
@@ -238,7 +193,7 @@
|
|
|
238
193
|
"steps": [
|
|
239
194
|
{
|
|
240
195
|
"description": "DELETE /messages/{id}",
|
|
241
|
-
"command": "pachca
|
|
196
|
+
"command": "pachca messages delete <ID>"
|
|
242
197
|
}
|
|
243
198
|
]
|
|
244
199
|
},
|
|
@@ -248,11 +203,11 @@
|
|
|
248
203
|
"steps": [
|
|
249
204
|
{
|
|
250
205
|
"description": "POST /messages/{id}/reactions с полем `code` (emoji)",
|
|
251
|
-
"command": "pachca
|
|
206
|
+
"command": "pachca reactions add <ID> --code=\"👍\""
|
|
252
207
|
},
|
|
253
208
|
{
|
|
254
209
|
"description": "Убрать реакцию: DELETE /messages/{id}/reactions с полем `code`",
|
|
255
|
-
"command": "pachca
|
|
210
|
+
"command": "pachca reactions remove <ID> --code=\"👍\""
|
|
256
211
|
}
|
|
257
212
|
]
|
|
258
213
|
},
|
|
@@ -262,11 +217,11 @@
|
|
|
262
217
|
"steps": [
|
|
263
218
|
{
|
|
264
219
|
"description": "GET /messages/{id}/read_member_ids — возвращает массив `user_id` прочитавших",
|
|
265
|
-
"command": "pachca
|
|
220
|
+
"command": "pachca read-member list-readers <ID>"
|
|
266
221
|
},
|
|
267
222
|
{
|
|
268
223
|
"description": "При необходимости сопоставь с GET /users для получения имён",
|
|
269
|
-
"command": "pachca
|
|
224
|
+
"command": "pachca users list # сопоставь user_id с именами"
|
|
270
225
|
}
|
|
271
226
|
]
|
|
272
227
|
},
|
|
@@ -276,11 +231,11 @@
|
|
|
276
231
|
"steps": [
|
|
277
232
|
{
|
|
278
233
|
"description": "Определи список `user_id` получателей (GET /users или из контекста)",
|
|
279
|
-
"command": "pachca
|
|
234
|
+
"command": "pachca users list # определи user_id получателей"
|
|
280
235
|
},
|
|
281
236
|
{
|
|
282
237
|
"description": "Для каждого: POST /messages с `\"entity_type\": \"user\"`, `\"entity_id\": user_id`",
|
|
283
|
-
"command": "pachca
|
|
238
|
+
"command": "pachca messages create --entity-type=user --entity-id=<user_id> --content=\"Уведомление\" # для каждого получателя"
|
|
284
239
|
}
|
|
285
240
|
]
|
|
286
241
|
},
|
|
@@ -289,15 +244,12 @@
|
|
|
289
244
|
"skill": "pachca-chats",
|
|
290
245
|
"steps": [
|
|
291
246
|
{
|
|
292
|
-
"description": "POST /chats — `\"channel\": true` для канала, `false` (по умолчанию) для
|
|
293
|
-
"command": "pachca
|
|
247
|
+
"description": "POST /chats — `\"channel\": true` для канала, `false` (по умолчанию) для беседы. Участников можно передать сразу при создании: `member_ids` и/или `group_tag_ids` в теле запроса",
|
|
248
|
+
"command": "pachca chats create --name=\"Новый канал\" --channel --member-ids='[1,2,3]'"
|
|
294
249
|
},
|
|
295
250
|
{
|
|
296
|
-
"description": "
|
|
297
|
-
|
|
298
|
-
{
|
|
299
|
-
"description": "Или добавить позже: POST /chats/{id}/members с `member_ids`, POST /chats/{id}/group_tags с `group_tag_ids`",
|
|
300
|
-
"command": "pachca api POST /chats/{id}/members"
|
|
251
|
+
"description": "Или добавить участников позже: POST /chats/{id}/members с `member_ids`, POST /chats/{id}/group_tags с `group_tag_ids`",
|
|
252
|
+
"command": "pachca members add <chat_id> --member-ids='[1,2,3]'"
|
|
301
253
|
}
|
|
302
254
|
]
|
|
303
255
|
},
|
|
@@ -307,23 +259,23 @@
|
|
|
307
259
|
"steps": [
|
|
308
260
|
{
|
|
309
261
|
"description": "Архивировать: PUT /chats/{id}/archive",
|
|
310
|
-
"command": "pachca
|
|
262
|
+
"command": "pachca chats archive <ID>"
|
|
311
263
|
},
|
|
312
264
|
{
|
|
313
265
|
"description": "Разархивировать: PUT /chats/{id}/unarchive",
|
|
314
|
-
"command": "pachca
|
|
266
|
+
"command": "pachca chats unarchive <ID>"
|
|
315
267
|
},
|
|
316
268
|
{
|
|
317
269
|
"description": "Изменить роль участника: PUT /chats/{id}/members/{user_id} с `role` (`\"admin\"` | `\"member\"`; `\"editor\"` — только для каналов). Роль создателя чата изменить нельзя.",
|
|
318
|
-
"command": "pachca
|
|
270
|
+
"command": "pachca members update <chat_id> <user_id> --role=admin"
|
|
319
271
|
},
|
|
320
272
|
{
|
|
321
273
|
"description": "Удалить участника: DELETE /chats/{id}/members/{user_id}",
|
|
322
|
-
"command": "pachca
|
|
274
|
+
"command": "pachca members remove <chat_id> <user_id>"
|
|
323
275
|
},
|
|
324
276
|
{
|
|
325
277
|
"description": "Покинуть чат: DELETE /chats/{id}/leave",
|
|
326
|
-
"command": "pachca
|
|
278
|
+
"command": "pachca members leave <chat_id>"
|
|
327
279
|
}
|
|
328
280
|
]
|
|
329
281
|
},
|
|
@@ -333,7 +285,7 @@
|
|
|
333
285
|
"steps": [
|
|
334
286
|
{
|
|
335
287
|
"description": "PUT /chats/{id} с нужными параметрами: `name` (название) и/или `public` (открытый доступ)",
|
|
336
|
-
"command": "pachca
|
|
288
|
+
"command": "pachca chats update <ID> --name=\"Новое название\""
|
|
337
289
|
}
|
|
338
290
|
]
|
|
339
291
|
},
|
|
@@ -343,15 +295,11 @@
|
|
|
343
295
|
"steps": [
|
|
344
296
|
{
|
|
345
297
|
"description": "POST /chats с `name`, `\"channel\": false` и `group_tag_ids` (добавить всех участников тега сразу)",
|
|
346
|
-
"command": "pachca
|
|
347
|
-
},
|
|
348
|
-
{
|
|
349
|
-
"description": "Или POST /chats → затем POST /chats/{id}/members с `member_ids` + POST /chats/{id}/group_tags с `group_tag_ids`",
|
|
350
|
-
"command": "pachca api POST /chats"
|
|
298
|
+
"command": "pachca chats create --name=\"Проект Alpha\" --group-tag-ids='[42]' --member-ids='[186,187]'"
|
|
351
299
|
},
|
|
352
300
|
{
|
|
353
301
|
"description": "Отправь приветственное сообщение: POST /messages с `\"entity_id\": chat.id`",
|
|
354
|
-
"command": "pachca
|
|
302
|
+
"command": "pachca messages create --entity-id=<chat_id> --content=\"Добро пожаловать в проект!\""
|
|
355
303
|
}
|
|
356
304
|
]
|
|
357
305
|
},
|
|
@@ -361,14 +309,11 @@
|
|
|
361
309
|
"steps": [
|
|
362
310
|
{
|
|
363
311
|
"description": "POST /chats/exports с `start_at`, `end_at` (формат YYYY-MM-DD) и обязательным `webhook_url` — запрос выполняется асинхронно",
|
|
364
|
-
"command": "pachca
|
|
365
|
-
},
|
|
366
|
-
{
|
|
367
|
-
"description": "Дождись вебхука на `webhook_url`: придёт JSON с `\"type\": \"export\"`, `\"event\": \"ready\"` и полем `export_id` — по `\"type\": \"export\"` можно отличить от других вебхуков"
|
|
312
|
+
"command": "pachca common request-export --start-at=<YYYY-MM-DD> --end-at=<YYYY-MM-DD> --webhook-url=<URL>"
|
|
368
313
|
},
|
|
369
314
|
{
|
|
370
315
|
"description": "GET /chats/exports/{id} — сервер вернёт 302, большинство HTTP-клиентов скачают файл автоматически",
|
|
371
|
-
"command": "pachca
|
|
316
|
+
"command": "pachca common get-exports <export_id>"
|
|
372
317
|
}
|
|
373
318
|
]
|
|
374
319
|
},
|
|
@@ -377,14 +322,8 @@
|
|
|
377
322
|
"skill": "pachca-chats",
|
|
378
323
|
"steps": [
|
|
379
324
|
{
|
|
380
|
-
"description": "GET /chats с `last_message_at_after={дата}` — только чаты с активностью после указанной
|
|
381
|
-
"command": "pachca
|
|
382
|
-
},
|
|
383
|
-
{
|
|
384
|
-
"description": "Для диапазона добавь `last_message_at_before={дата}` — чаты с активностью между двумя датами"
|
|
385
|
-
},
|
|
386
|
-
{
|
|
387
|
-
"description": "Перебери страницы: `cursor` из `meta.paginate.next_page`, пока он не пустой"
|
|
325
|
+
"description": "GET /chats с `last_message_at_after={дата}` — только чаты с активностью после указанной даты. Для диапазона добавь `last_message_at_before={дата}`",
|
|
326
|
+
"command": "pachca chats list --last-message-at-after=<дата> --all"
|
|
388
327
|
}
|
|
389
328
|
]
|
|
390
329
|
},
|
|
@@ -394,32 +333,11 @@
|
|
|
394
333
|
"steps": [
|
|
395
334
|
{
|
|
396
335
|
"description": "GET /chats с `last_message_at_before={порог}` — сразу только чаты без активности с нужной даты",
|
|
397
|
-
"command": "pachca
|
|
398
|
-
},
|
|
399
|
-
{
|
|
400
|
-
"description": "Перебери страницы: `cursor` из `meta.paginate.next_page`, пока он не пустой"
|
|
336
|
+
"command": "pachca chats list --last-message-at-before=<порог> --all"
|
|
401
337
|
},
|
|
402
338
|
{
|
|
403
339
|
"description": "Для каждого чата: PUT /chats/{id}/archive",
|
|
404
|
-
"command": "pachca
|
|
405
|
-
}
|
|
406
|
-
]
|
|
407
|
-
},
|
|
408
|
-
{
|
|
409
|
-
"title": "Настроить бота с исходящим вебхуком",
|
|
410
|
-
"skill": "pachca-bots",
|
|
411
|
-
"steps": [
|
|
412
|
-
{
|
|
413
|
-
"description": "Создай бота в интерфейсе Пачки: Автоматизации → Интеграции → Webhook"
|
|
414
|
-
},
|
|
415
|
-
{
|
|
416
|
-
"description": "Получи `access_token` бота во вкладке «API» настроек бота"
|
|
417
|
-
},
|
|
418
|
-
{
|
|
419
|
-
"description": "Укажи Webhook URL для получения событий"
|
|
420
|
-
},
|
|
421
|
-
{
|
|
422
|
-
"description": "Выбери типы событий: новые сообщения, реакции, кнопки, участники"
|
|
340
|
+
"command": "pachca chats archive <ID> # для каждого найденного чата"
|
|
423
341
|
}
|
|
424
342
|
]
|
|
425
343
|
},
|
|
@@ -429,7 +347,7 @@
|
|
|
429
347
|
"steps": [
|
|
430
348
|
{
|
|
431
349
|
"description": "PUT /bots/{id} с новым `outgoing_url` — `id` бота (его `user_id`) можно узнать во вкладке «API» настроек бота",
|
|
432
|
-
"command": "pachca
|
|
350
|
+
"command": "pachca bots update <bot_id> --webhook='{\"outgoing_url\":\"https://example.com/webhook\"}'"
|
|
433
351
|
}
|
|
434
352
|
]
|
|
435
353
|
},
|
|
@@ -437,21 +355,9 @@
|
|
|
437
355
|
"title": "Обработать входящий вебхук-событие",
|
|
438
356
|
"skill": "pachca-bots",
|
|
439
357
|
"steps": [
|
|
440
|
-
{
|
|
441
|
-
"description": "Получи POST-запрос на свой Webhook URL"
|
|
442
|
-
},
|
|
443
|
-
{
|
|
444
|
-
"description": "Проверь подпись (Signing secret) для безопасности"
|
|
445
|
-
},
|
|
446
|
-
{
|
|
447
|
-
"description": "Проверь `webhook_timestamp` — должен быть в пределах 1 минуты"
|
|
448
|
-
},
|
|
449
|
-
{
|
|
450
|
-
"description": "Разбери JSON: тип события, данные"
|
|
451
|
-
},
|
|
452
358
|
{
|
|
453
359
|
"description": "Для полной информации сделай запрос к API: GET /messages/{id} — особенно важно для получения вложений (`files[]`), которых нет в вебхуке",
|
|
454
|
-
"command": "pachca
|
|
360
|
+
"command": "pachca messages get <message_id> # получи вложения (files[])"
|
|
455
361
|
}
|
|
456
362
|
]
|
|
457
363
|
},
|
|
@@ -459,18 +365,9 @@
|
|
|
459
365
|
"title": "Разворачивание ссылок (unfurling)",
|
|
460
366
|
"skill": "pachca-bots",
|
|
461
367
|
"steps": [
|
|
462
|
-
{
|
|
463
|
-
"description": "Создай специального Unfurl-бота и укажи отслеживаемые домены в его настройках"
|
|
464
|
-
},
|
|
465
|
-
{
|
|
466
|
-
"description": "При появлении ссылки бот получает вебхук `\"event\": \"link_shared\"` с массивом `links` (`url` + `domain`) и `message_id`"
|
|
467
|
-
},
|
|
468
|
-
{
|
|
469
|
-
"description": "Извлеки данные из своей системы по URL из `links`"
|
|
470
|
-
},
|
|
471
368
|
{
|
|
472
369
|
"description": "Отправь POST /messages/{id}/link_previews с превью-данными",
|
|
473
|
-
"command": "pachca
|
|
370
|
+
"command": "pachca link-previews add <message_id>"
|
|
474
371
|
}
|
|
475
372
|
]
|
|
476
373
|
},
|
|
@@ -478,19 +375,13 @@
|
|
|
478
375
|
"title": "Обработать нажатие кнопки (callback)",
|
|
479
376
|
"skill": "pachca-bots",
|
|
480
377
|
"steps": [
|
|
481
|
-
{
|
|
482
|
-
"description": "Получи вебхук с `\"event\": \"message_button_clicked\"` — в payload: `data` (из кнопки), `user_id`, `message_id`"
|
|
483
|
-
},
|
|
484
|
-
{
|
|
485
|
-
"description": "Выполни нужное действие (запись в БД, запрос к API и т.д.)"
|
|
486
|
-
},
|
|
487
378
|
{
|
|
488
379
|
"description": "Ответь пользователю: POST /messages с `\"entity_type\": \"user\"`, `\"entity_id\": user_id` из вебхука",
|
|
489
|
-
"command": "pachca
|
|
380
|
+
"command": "pachca messages create --entity-type=user --entity-id=<user_id> --content=\"Принято!\""
|
|
490
381
|
},
|
|
491
382
|
{
|
|
492
383
|
"description": "Опционально: обнови исходное сообщение через PUT /messages/{id} — чтобы убрать кнопки передай `\"buttons\": []`, чтобы изменить текст — передай `\"content\"`",
|
|
493
|
-
"command": "pachca
|
|
384
|
+
"command": "pachca messages update <message_id> --buttons='[]' --content=\"Обработано\""
|
|
494
385
|
}
|
|
495
386
|
]
|
|
496
387
|
},
|
|
@@ -498,15 +389,9 @@
|
|
|
498
389
|
"title": "Периодический дайджест/отчёт",
|
|
499
390
|
"skill": "pachca-bots",
|
|
500
391
|
"steps": [
|
|
501
|
-
{
|
|
502
|
-
"description": "По расписанию (cron/scheduler): собери данные из своей системы"
|
|
503
|
-
},
|
|
504
|
-
{
|
|
505
|
-
"description": "Сформируй текст сообщения с нужными метриками или сводкой"
|
|
506
|
-
},
|
|
507
392
|
{
|
|
508
393
|
"description": "POST /messages с `\"entity_id\": chat_id` нужного канала",
|
|
509
|
-
"command": "pachca
|
|
394
|
+
"command": "pachca messages create --entity-id=<chat_id> --content=\"Дайджест за сегодня: ...\""
|
|
510
395
|
}
|
|
511
396
|
]
|
|
512
397
|
},
|
|
@@ -514,18 +399,9 @@
|
|
|
514
399
|
"title": "Мониторинг и алерты",
|
|
515
400
|
"skill": "pachca-bots",
|
|
516
401
|
"steps": [
|
|
517
|
-
{
|
|
518
|
-
"description": "Внешняя система (CI, мониторинг, сервис) обнаруживает событие (ошибка, деплой, порог метрики)"
|
|
519
|
-
},
|
|
520
|
-
{
|
|
521
|
-
"description": "Делает POST запрос к твоему боту или напрямую вызывает Pachca API"
|
|
522
|
-
},
|
|
523
402
|
{
|
|
524
403
|
"description": "POST /messages в канал алертов с описанием события и кнопками «Взять в работу» / «Игнорировать»",
|
|
525
|
-
"command": "pachca
|
|
526
|
-
},
|
|
527
|
-
{
|
|
528
|
-
"description": "При нажатии кнопки — обработай callback и обнови статус алерта"
|
|
404
|
+
"command": "pachca messages create --entity-id=<alert_chat_id> --content=\"Алерт: ...\" --buttons='[[{\"text\":\"Взять в работу\",\"data\":\"take\"},{\"text\":\"Игнорировать\",\"data\":\"ignore\"}]]'"
|
|
529
405
|
}
|
|
530
406
|
]
|
|
531
407
|
},
|
|
@@ -533,19 +409,13 @@
|
|
|
533
409
|
"title": "Обработка событий через историю (polling)",
|
|
534
410
|
"skill": "pachca-bots",
|
|
535
411
|
"steps": [
|
|
536
|
-
{
|
|
537
|
-
"description": "В настройках бота включи «Сохранять историю событий» (вкладка «Исходящий webhook»). Webhook URL указывать не обязательно."
|
|
538
|
-
},
|
|
539
412
|
{
|
|
540
413
|
"description": "По расписанию или по запросу: GET /webhooks/events — получи накопленные события с пагинацией (`limit`, `cursor`)",
|
|
541
|
-
"command": "pachca
|
|
542
|
-
},
|
|
543
|
-
{
|
|
544
|
-
"description": "Обработай каждое событие (тот же формат payload, что и в real-time вебхуке)"
|
|
414
|
+
"command": "pachca bots list-events --all"
|
|
545
415
|
},
|
|
546
416
|
{
|
|
547
417
|
"description": "После обработки: DELETE /webhooks/events/{id} — удали событие, чтобы не обработать повторно",
|
|
548
|
-
"command": "pachca
|
|
418
|
+
"command": "pachca bots remove-event <event_id>"
|
|
549
419
|
}
|
|
550
420
|
]
|
|
551
421
|
},
|
|
@@ -553,43 +423,13 @@
|
|
|
553
423
|
"title": "Показать интерактивную форму пользователю",
|
|
554
424
|
"skill": "pachca-forms",
|
|
555
425
|
"steps": [
|
|
556
|
-
{
|
|
557
|
-
"description": "Заранее подготовь объект формы: `view` с `title`, `blocks` (типы: `input`, `select`, `radio`, `checkbox`, `date`, `time`, `file_input`, `header`, `plain_text`, `markdown`, `divider`), опционально `callback_id` (идентификатор формы) и `private_metadata` (контекст, например id сообщения)"
|
|
558
|
-
},
|
|
559
426
|
{
|
|
560
427
|
"description": "Отправь сообщение с кнопкой (POST /messages с `buttons`, в `data` кнопки передай идентификатор формы)",
|
|
561
|
-
"command": "pachca
|
|
562
|
-
},
|
|
563
|
-
{
|
|
564
|
-
"description": "При нажатии кнопки — получи вебхук-событие с `trigger_id`"
|
|
428
|
+
"command": "pachca messages create --entity-id=<chat_id> --content=\"Заполните форму\" --buttons='[[{\"text\":\"Открыть форму\",\"data\":\"open_form\"}]]'"
|
|
565
429
|
},
|
|
566
430
|
{
|
|
567
431
|
"description": "Немедленно отправь POST /views/open с `trigger_id` и готовым объектом формы",
|
|
568
|
-
"command": "pachca
|
|
569
|
-
},
|
|
570
|
-
{
|
|
571
|
-
"description": "Пользователь заполняет форму → при отправке получи вебхук — обработай по сценарию «Обработать отправку формы»"
|
|
572
|
-
}
|
|
573
|
-
]
|
|
574
|
-
},
|
|
575
|
-
{
|
|
576
|
-
"title": "Обработать отправку формы (view_submission)",
|
|
577
|
-
"skill": "pachca-forms",
|
|
578
|
-
"steps": [
|
|
579
|
-
{
|
|
580
|
-
"description": "Получи вебхук с `\"type\": \"view\"`, `\"event\": \"submit\"` — содержит `callback_id`, `user_id`, `private_metadata` и `data` (значения полей, ключи совпадают с полем `name` каждого блока)"
|
|
581
|
-
},
|
|
582
|
-
{
|
|
583
|
-
"description": "Извлеки значения из `data`: например, для блока с `\"name\": \"comment\"` значение в `data.comment`"
|
|
584
|
-
},
|
|
585
|
-
{
|
|
586
|
-
"description": "Если форма содержит `file_input` — скачай файлы по `data.field_name[].url` немедленно: ссылки истекают через 1 час"
|
|
587
|
-
},
|
|
588
|
-
{
|
|
589
|
-
"description": "Если данные валидны → ответь HTTP 200 (пустое тело) — форма закроется у пользователя"
|
|
590
|
-
},
|
|
591
|
-
{
|
|
592
|
-
"description": "Если есть ошибки → ответь HTTP 400 с `{\"errors\": {\"field_name\": \"текст ошибки\"}}` — пользователь увидит ошибки в форме и сможет исправить и отправить повторно"
|
|
432
|
+
"command": "pachca views open --type=modal --trigger-id=<trigger_id> --title=\"Заявка\" --blocks='[...]'"
|
|
593
433
|
}
|
|
594
434
|
]
|
|
595
435
|
},
|
|
@@ -599,23 +439,11 @@
|
|
|
599
439
|
"steps": [
|
|
600
440
|
{
|
|
601
441
|
"description": "Отправь сообщение с кнопкой «Пройти опрос» в канал или ЛС: POST /messages с `\"data\": \"survey_start\"` в кнопке",
|
|
602
|
-
"command": "pachca
|
|
603
|
-
},
|
|
604
|
-
{
|
|
605
|
-
"description": "При нажатии кнопки получи вебхук с `trigger_id` и `user_id` нажавшего"
|
|
442
|
+
"command": "pachca messages create --entity-id=<chat_id> --content=\"Пройди опрос\" --buttons='[[{\"text\":\"Пройти опрос\",\"data\":\"survey_start\"}]]'"
|
|
606
443
|
},
|
|
607
444
|
{
|
|
608
445
|
"description": "Немедленно отправь POST /views/open с формой (поля: `input`, `select`, `radio` и т.д.)",
|
|
609
|
-
"command": "pachca
|
|
610
|
-
},
|
|
611
|
-
{
|
|
612
|
-
"description": "При отправке формы получи вебхук с `\"event\": \"submit\"` — значения полей в `data`"
|
|
613
|
-
},
|
|
614
|
-
{
|
|
615
|
-
"description": "Обработай ответы: сохрани в базу или отправь итоговым сообщением в канал"
|
|
616
|
-
},
|
|
617
|
-
{
|
|
618
|
-
"description": "Ответь HTTP 200 — форма закроется"
|
|
446
|
+
"command": "pachca views open --type=modal --trigger-id=<trigger_id> --title=\"Опрос\" --blocks='[...]'"
|
|
619
447
|
}
|
|
620
448
|
]
|
|
621
449
|
},
|
|
@@ -624,21 +452,20 @@
|
|
|
624
452
|
"skill": "pachca-forms",
|
|
625
453
|
"steps": [
|
|
626
454
|
{
|
|
627
|
-
"description": "Размести в канале сообщение с кнопкой «Создать заявку» (`\"data\": \"new_request\"`)"
|
|
455
|
+
"description": "Размести в канале сообщение с кнопкой «Создать заявку» (`\"data\": \"new_request\"`)",
|
|
456
|
+
"command": "pachca messages create --entity-id=<chat_id> --content=\"Создать заявку\" --buttons='[[{\"text\":\"Создать заявку\",\"data\":\"new_request\"}]]'"
|
|
628
457
|
},
|
|
629
458
|
{
|
|
630
|
-
"description": "При нажатии открой форму с полями: тема, описание, приоритет (`select`)"
|
|
459
|
+
"description": "При нажатии открой форму с полями: тема, описание, приоритет (`select`)",
|
|
460
|
+
"command": "pachca views open --type=modal --trigger-id=<trigger_id> --title=\"Заявка\" --blocks='[...]'"
|
|
631
461
|
},
|
|
632
462
|
{
|
|
633
463
|
"description": "При submit-вебхуке: создай задачу (POST /tasks) или отправь уведомление ответственному (POST /messages с `\"entity_type\": \"user\"`)",
|
|
634
|
-
"command": "pachca
|
|
464
|
+
"command": "pachca tasks create --kind=reminder --content=\"Заявка: ...\" --due-at=<дата>"
|
|
635
465
|
},
|
|
636
466
|
{
|
|
637
467
|
"description": "Отправь подтверждение автору: POST /messages с `\"entity_type\": \"user\"`, `\"entity_id\": user_id` из вебхука",
|
|
638
|
-
"command": "pachca
|
|
639
|
-
},
|
|
640
|
-
{
|
|
641
|
-
"description": "Ответь HTTP 200 — форма закроется"
|
|
468
|
+
"command": "pachca messages create --entity-type=user --entity-id=<user_id> --content=\"Заявка принята\""
|
|
642
469
|
}
|
|
643
470
|
]
|
|
644
471
|
},
|
|
@@ -648,7 +475,7 @@
|
|
|
648
475
|
"steps": [
|
|
649
476
|
{
|
|
650
477
|
"description": "GET /users/{id} — полная информация о сотруднике",
|
|
651
|
-
"command": "pachca
|
|
478
|
+
"command": "pachca users get <ID>"
|
|
652
479
|
}
|
|
653
480
|
]
|
|
654
481
|
},
|
|
@@ -658,15 +485,15 @@
|
|
|
658
485
|
"steps": [
|
|
659
486
|
{
|
|
660
487
|
"description": "Создай тег (если нужен): POST /group_tags с `{\"group_tag\": {\"name\": ...}}`",
|
|
661
|
-
"command": "pachca
|
|
488
|
+
"command": "pachca group-tags create --name=\"Backend\""
|
|
662
489
|
},
|
|
663
490
|
{
|
|
664
491
|
"description": "Для каждого сотрудника: POST /users — теги назначаются через поле `list_tags` в теле запроса",
|
|
665
|
-
"command": "pachca
|
|
492
|
+
"command": "pachca users create --first-name=\"Иван\" --last-name=\"Петров\" --email=\"ivan@example.com\" --list-tags='[{\"name\":\"Backend\"}]'"
|
|
666
493
|
},
|
|
667
494
|
{
|
|
668
495
|
"description": "Или обнови существующего: PUT /users/{id} с `list_tags`",
|
|
669
|
-
"command": "pachca
|
|
496
|
+
"command": "pachca users update <ID> --list-tags='[{\"name\":\"Backend\"}]'"
|
|
670
497
|
}
|
|
671
498
|
]
|
|
672
499
|
},
|
|
@@ -676,10 +503,7 @@
|
|
|
676
503
|
"steps": [
|
|
677
504
|
{
|
|
678
505
|
"description": "GET /users?query=Иван — поиск по имени/email (частичное совпадение)",
|
|
679
|
-
"command": "pachca
|
|
680
|
-
},
|
|
681
|
-
{
|
|
682
|
-
"description": "Если нужен точный поиск по email — перебери страницы и отфильтруй на клиенте"
|
|
506
|
+
"command": "pachca users list --query=Иван"
|
|
683
507
|
}
|
|
684
508
|
]
|
|
685
509
|
},
|
|
@@ -689,15 +513,15 @@
|
|
|
689
513
|
"steps": [
|
|
690
514
|
{
|
|
691
515
|
"description": "POST /users с `email`, именем, тегами (`list_tags`) — создать аккаунт",
|
|
692
|
-
"command": "pachca
|
|
516
|
+
"command": "pachca users create --email=\"new@example.com\" --first-name=\"Иван\" --last-name=\"Петров\""
|
|
693
517
|
},
|
|
694
518
|
{
|
|
695
519
|
"description": "POST /chats/{id}/members с `member_ids` — добавить в нужные каналы (онбординг, общий, тематические)",
|
|
696
|
-
"command": "pachca
|
|
520
|
+
"command": "pachca members add <chat_id> --member-ids='[<user_id>]'"
|
|
697
521
|
},
|
|
698
522
|
{
|
|
699
523
|
"description": "POST /messages с `\"entity_type\": \"user\"`, `\"entity_id\": user.id` — отправить welcome-сообщение в личные сообщения",
|
|
700
|
-
"command": "pachca
|
|
524
|
+
"command": "pachca messages create --entity-type=user --entity-id=<user_id> --content=\"Добро пожаловать!\""
|
|
701
525
|
}
|
|
702
526
|
]
|
|
703
527
|
},
|
|
@@ -707,11 +531,11 @@
|
|
|
707
531
|
"steps": [
|
|
708
532
|
{
|
|
709
533
|
"description": "PUT /users/{id} с `\"suspended\": true` — заблокировать доступ",
|
|
710
|
-
"command": "pachca
|
|
534
|
+
"command": "pachca users update <ID> --suspended"
|
|
711
535
|
},
|
|
712
536
|
{
|
|
713
537
|
"description": "Опционально: DELETE /users/{id} — удалить аккаунт полностью",
|
|
714
|
-
"command": "pachca
|
|
538
|
+
"command": "pachca users delete <ID>"
|
|
715
539
|
}
|
|
716
540
|
]
|
|
717
541
|
},
|
|
@@ -720,15 +544,12 @@
|
|
|
720
544
|
"skill": "pachca-users",
|
|
721
545
|
"steps": [
|
|
722
546
|
{
|
|
723
|
-
"description": "GET /group_tags?names[]=Backend — найти тег по
|
|
724
|
-
"command": "pachca
|
|
725
|
-
},
|
|
726
|
-
{
|
|
727
|
-
"description": "Из ответа взять `id` тега"
|
|
547
|
+
"description": "GET /group_tags?names[]=Backend — найти тег по названию, взять `id` тега из ответа",
|
|
548
|
+
"command": "pachca group-tags list # найди тег по названию, возьми id"
|
|
728
549
|
},
|
|
729
550
|
{
|
|
730
551
|
"description": "GET /group_tags/{id}/users с пагинацией (`limit` + `cursor`) — получить всех участников",
|
|
731
|
-
"command": "pachca
|
|
552
|
+
"command": "pachca group-tags list-users <tag_id> --all"
|
|
732
553
|
}
|
|
733
554
|
]
|
|
734
555
|
},
|
|
@@ -738,15 +559,15 @@
|
|
|
738
559
|
"steps": [
|
|
739
560
|
{
|
|
740
561
|
"description": "GET /users/{user_id}/status — получить текущий статус сотрудника",
|
|
741
|
-
"command": "pachca
|
|
562
|
+
"command": "pachca users get-status <user_id>"
|
|
742
563
|
},
|
|
743
564
|
{
|
|
744
565
|
"description": "PUT /users/{user_id}/status с `emoji`, `title` и опционально `is_away: true`, `away_message: \"текст\"` — установить статус",
|
|
745
|
-
"command": "pachca
|
|
566
|
+
"command": "pachca users update-status <user_id> --emoji=\"🏖️\" --title=\"В отпуске\" --is-away"
|
|
746
567
|
},
|
|
747
568
|
{
|
|
748
569
|
"description": "DELETE /users/{user_id}/status — удалить статус сотрудника",
|
|
749
|
-
"command": "pachca
|
|
570
|
+
"command": "pachca users remove-status <user_id>"
|
|
750
571
|
}
|
|
751
572
|
]
|
|
752
573
|
},
|
|
@@ -755,15 +576,8 @@
|
|
|
755
576
|
"skill": "pachca-tasks",
|
|
756
577
|
"steps": [
|
|
757
578
|
{
|
|
758
|
-
"description": "POST /tasks с `kind`, `content` и `due_at`",
|
|
759
|
-
"command": "pachca
|
|
760
|
-
},
|
|
761
|
-
{
|
|
762
|
-
"description": "Чтобы привязать к чату — добавь `chat_id`"
|
|
763
|
-
},
|
|
764
|
-
{
|
|
765
|
-
"description": "Чтобы заполнить дополнительные поля — добавь `custom_properties: [{\"id\": <field_id>, \"value\": \"...\"}]` (список полей: GET /custom_properties?entity_type=Task)",
|
|
766
|
-
"command": "pachca api GET /custom_properties?entity_type=Task)"
|
|
579
|
+
"description": "POST /tasks с `kind`, `content` и `due_at`. Чтобы привязать к чату — добавь `chat_id`. Чтобы заполнить дополнительные поля — добавь `custom_properties: [{\"id\": <field_id>, \"value\": \"...\"}]` (список полей: GET /custom_properties?entity_type=Task)",
|
|
580
|
+
"command": "pachca tasks create --kind=reminder --content=\"Позвонить клиенту\" --due-at=<дата> --chat-id=<chat_id>"
|
|
767
581
|
}
|
|
768
582
|
]
|
|
769
583
|
},
|
|
@@ -772,11 +586,8 @@
|
|
|
772
586
|
"skill": "pachca-tasks",
|
|
773
587
|
"steps": [
|
|
774
588
|
{
|
|
775
|
-
"description": "GET /tasks с пагинацией (`limit`, `cursor`)",
|
|
776
|
-
"command": "pachca
|
|
777
|
-
},
|
|
778
|
-
{
|
|
779
|
-
"description": "Отфильтруй на клиенте по полю `status`: `\"undone\"` — не выполнена, `\"done\"` — выполнена"
|
|
589
|
+
"description": "GET /tasks с пагинацией (`limit`, `cursor`) — отфильтруй на клиенте по полю `status`: `\"undone\"` — не выполнена, `\"done\"` — выполнена",
|
|
590
|
+
"command": "pachca tasks list --all # фильтруй по status на клиенте"
|
|
780
591
|
}
|
|
781
592
|
]
|
|
782
593
|
},
|
|
@@ -786,7 +597,7 @@
|
|
|
786
597
|
"steps": [
|
|
787
598
|
{
|
|
788
599
|
"description": "GET /tasks/{id} — полная информация о задаче, включая `custom_properties`, `performer_ids`, `status`",
|
|
789
|
-
"command": "pachca
|
|
600
|
+
"command": "pachca tasks get <ID>"
|
|
790
601
|
}
|
|
791
602
|
]
|
|
792
603
|
},
|
|
@@ -796,7 +607,7 @@
|
|
|
796
607
|
"steps": [
|
|
797
608
|
{
|
|
798
609
|
"description": "PUT /tasks/{id} с `\"status\": \"done\"`",
|
|
799
|
-
"command": "pachca
|
|
610
|
+
"command": "pachca tasks update <ID> --status=done"
|
|
800
611
|
}
|
|
801
612
|
]
|
|
802
613
|
},
|
|
@@ -806,7 +617,7 @@
|
|
|
806
617
|
"steps": [
|
|
807
618
|
{
|
|
808
619
|
"description": "PUT /tasks/{id} с нужными полями: `content`, `due_at`, `kind`, `priority`, `performer_ids`, `custom_properties`",
|
|
809
|
-
"command": "pachca
|
|
620
|
+
"command": "pachca tasks update <ID> --due-at=<дата> --priority=2 --performer-ids='[186,187]'"
|
|
810
621
|
}
|
|
811
622
|
]
|
|
812
623
|
},
|
|
@@ -816,7 +627,7 @@
|
|
|
816
627
|
"steps": [
|
|
817
628
|
{
|
|
818
629
|
"description": "DELETE /tasks/{id}",
|
|
819
|
-
"command": "pachca
|
|
630
|
+
"command": "pachca tasks delete <ID>"
|
|
820
631
|
}
|
|
821
632
|
]
|
|
822
633
|
},
|
|
@@ -824,12 +635,9 @@
|
|
|
824
635
|
"title": "Создать серию напоминаний",
|
|
825
636
|
"skill": "pachca-tasks",
|
|
826
637
|
"steps": [
|
|
827
|
-
{
|
|
828
|
-
"description": "Подготовь список дат (ежедневно, еженедельно и т.д.)"
|
|
829
|
-
},
|
|
830
638
|
{
|
|
831
639
|
"description": "Для каждой даты: POST /tasks с нужным `kind`, `content` и `due_at`",
|
|
832
|
-
"command": "pachca
|
|
640
|
+
"command": "pachca tasks create --kind=reminder --content=\"Напоминание\" --due-at=<дата> # для каждой даты"
|
|
833
641
|
}
|
|
834
642
|
]
|
|
835
643
|
},
|
|
@@ -839,7 +647,7 @@
|
|
|
839
647
|
"steps": [
|
|
840
648
|
{
|
|
841
649
|
"description": "GET /profile — возвращает полную информацию о текущем пользователе",
|
|
842
|
-
"command": "pachca
|
|
650
|
+
"command": "pachca profile get"
|
|
843
651
|
}
|
|
844
652
|
]
|
|
845
653
|
},
|
|
@@ -849,7 +657,7 @@
|
|
|
849
657
|
"steps": [
|
|
850
658
|
{
|
|
851
659
|
"description": "GET /oauth/token/info — возвращает информацию о текущем токене: скоупы, дату создания, срок жизни",
|
|
852
|
-
"command": "pachca
|
|
660
|
+
"command": "pachca profile get-info"
|
|
853
661
|
}
|
|
854
662
|
]
|
|
855
663
|
},
|
|
@@ -858,17 +666,8 @@
|
|
|
858
666
|
"skill": "pachca-profile",
|
|
859
667
|
"steps": [
|
|
860
668
|
{
|
|
861
|
-
"description": "PUT /profile/status с `emoji` и `title`",
|
|
862
|
-
"command": "pachca
|
|
863
|
-
},
|
|
864
|
-
{
|
|
865
|
-
"description": "Чтобы включить режим «Нет на месте» — добавь `is_away: true`"
|
|
866
|
-
},
|
|
867
|
-
{
|
|
868
|
-
"description": "Чтобы задать сообщение о недоступности — добавь `away_message: \"текст\"` (макс 1024 символа, отображается в профиле и при личных сообщениях/упоминаниях)"
|
|
869
|
-
},
|
|
870
|
-
{
|
|
871
|
-
"description": "Чтобы статус автоматически сбросился — добавь `expires_at: \"2024-04-08T10:00:00.000Z\"` (ISO-8601, UTC+0)"
|
|
669
|
+
"description": "PUT /profile/status с `emoji` и `title`. Чтобы включить режим «Нет на месте» — добавь `is_away: true`. Чтобы задать сообщение о недоступности — добавь `away_message: \"текст\"` (макс 1024 символа). Чтобы статус автоматически сбросился — добавь `expires_at` (ISO-8601, UTC+0)",
|
|
670
|
+
"command": "pachca profile update-status --emoji=\"🏖️\" --title=\"В отпуске\" --is-away --away-message=\"Я в отпуске до 10 марта\" --expires-at=\"2025-03-10T23:59:59.000Z\""
|
|
872
671
|
}
|
|
873
672
|
]
|
|
874
673
|
},
|
|
@@ -878,7 +677,7 @@
|
|
|
878
677
|
"steps": [
|
|
879
678
|
{
|
|
880
679
|
"description": "DELETE /profile/status",
|
|
881
|
-
"command": "pachca
|
|
680
|
+
"command": "pachca profile delete-status"
|
|
882
681
|
}
|
|
883
682
|
]
|
|
884
683
|
},
|
|
@@ -888,11 +687,11 @@
|
|
|
888
687
|
"steps": [
|
|
889
688
|
{
|
|
890
689
|
"description": "GET /custom_properties?entity_type=User — список дополнительных полей для сотрудников (`id`, `name`, `data_type`)",
|
|
891
|
-
"command": "pachca
|
|
690
|
+
"command": "pachca common custom-properties # entity_type=User"
|
|
892
691
|
},
|
|
893
692
|
{
|
|
894
693
|
"description": "GET /profile — в ответе поле `custom_properties` содержит значения для текущего пользователя",
|
|
895
|
-
"command": "pachca
|
|
694
|
+
"command": "pachca profile get # custom_properties содержит значения полей"
|
|
896
695
|
}
|
|
897
696
|
]
|
|
898
697
|
},
|
|
@@ -901,14 +700,8 @@
|
|
|
901
700
|
"skill": "pachca-search",
|
|
902
701
|
"steps": [
|
|
903
702
|
{
|
|
904
|
-
"description": "GET /search/messages?query=текст — полнотекстовый
|
|
905
|
-
"command": "pachca
|
|
906
|
-
},
|
|
907
|
-
{
|
|
908
|
-
"description": "Пагинация: `limit` (до 200) и `cursor` (из `meta.paginate.next_page`)"
|
|
909
|
-
},
|
|
910
|
-
{
|
|
911
|
-
"description": "Общее количество результатов — в `meta.total`"
|
|
703
|
+
"description": "GET /search/messages?query=текст — полнотекстовый поиск. Пагинация: `limit` (до 200) и `cursor`. Общее количество результатов — в `meta.total`",
|
|
704
|
+
"command": "pachca search list-messages --query=\"текст\""
|
|
912
705
|
}
|
|
913
706
|
]
|
|
914
707
|
},
|
|
@@ -917,11 +710,8 @@
|
|
|
917
710
|
"skill": "pachca-search",
|
|
918
711
|
"steps": [
|
|
919
712
|
{
|
|
920
|
-
"description": "GET /search/chats?query=название — полнотекстовый поиск по
|
|
921
|
-
"command": "pachca
|
|
922
|
-
},
|
|
923
|
-
{
|
|
924
|
-
"description": "Пагинация: `limit` (до 100) и `cursor`"
|
|
713
|
+
"description": "GET /search/chats?query=название — полнотекстовый поиск по чатам. Пагинация: `limit` (до 100) и `cursor`",
|
|
714
|
+
"command": "pachca search list-chats --query=\"название\""
|
|
925
715
|
}
|
|
926
716
|
]
|
|
927
717
|
},
|
|
@@ -930,14 +720,8 @@
|
|
|
930
720
|
"skill": "pachca-search",
|
|
931
721
|
"steps": [
|
|
932
722
|
{
|
|
933
|
-
"description": "GET /search/users?query=имя — полнотекстовый поиск по
|
|
934
|
-
"command": "pachca
|
|
935
|
-
},
|
|
936
|
-
{
|
|
937
|
-
"description": "Пагинация: `limit` (до 200) и `cursor`"
|
|
938
|
-
},
|
|
939
|
-
{
|
|
940
|
-
"description": "Сортировка: `sort=alphabetical` для алфавитного порядка, `sort=by_score` (по умолчанию) для релевантности"
|
|
723
|
+
"description": "GET /search/users?query=имя — полнотекстовый поиск по сотрудникам. Пагинация: `limit` (до 200) и `cursor`. Сортировка: `sort=alphabetical` для алфавитного порядка, `sort=by_score` (по умолчанию) для релевантности",
|
|
724
|
+
"command": "pachca search list-users --query=\"имя\""
|
|
941
725
|
}
|
|
942
726
|
]
|
|
943
727
|
},
|
|
@@ -946,11 +730,8 @@
|
|
|
946
730
|
"skill": "pachca-security",
|
|
947
731
|
"steps": [
|
|
948
732
|
{
|
|
949
|
-
"description": "GET /audit_events с обязательными `start_time` и `end_time` (ISO-8601, UTC+0)",
|
|
950
|
-
"command": "pachca
|
|
951
|
-
},
|
|
952
|
-
{
|
|
953
|
-
"description": "Опциональные фильтры: `event_key`, `actor_id`, `actor_type`, `entity_id`, `entity_type`"
|
|
733
|
+
"description": "GET /audit_events с обязательными `start_time` и `end_time` (ISO-8601, UTC+0). Опциональные фильтры: `event_key`, `actor_id`, `actor_type`, `entity_id`, `entity_type`",
|
|
734
|
+
"command": "pachca security list --start-time=<ISO-8601> --end-time=<ISO-8601>"
|
|
954
735
|
}
|
|
955
736
|
]
|
|
956
737
|
},
|
|
@@ -959,15 +740,12 @@
|
|
|
959
740
|
"skill": "pachca-security",
|
|
960
741
|
"steps": [
|
|
961
742
|
{
|
|
962
|
-
"description": "GET /audit_events с `event_key=user_2fa_fail` (или `user_login`) за нужный период",
|
|
963
|
-
"command": "pachca
|
|
964
|
-
},
|
|
965
|
-
{
|
|
966
|
-
"description": "Пагинируй с `cursor` до получения всех записей"
|
|
743
|
+
"description": "GET /audit_events с `event_key=user_2fa_fail` (или `user_login`) за нужный период — пагинируй с `cursor` до получения всех записей",
|
|
744
|
+
"command": "pachca security list --start-time=<ISO-8601> --end-time=<ISO-8601> --event-key=user_2fa_fail --all"
|
|
967
745
|
},
|
|
968
746
|
{
|
|
969
747
|
"description": "Если найдены аномалии (много неудачных 2FA с одного аккаунта) — отправь уведомление администратору через POST /messages",
|
|
970
|
-
"command": "pachca
|
|
748
|
+
"command": "pachca messages create --entity-type=user --entity-id=<admin_id> --content=\"Обнаружены подозрительные входы\""
|
|
971
749
|
}
|
|
972
750
|
]
|
|
973
751
|
},
|
|
@@ -976,14 +754,8 @@
|
|
|
976
754
|
"skill": "pachca-security",
|
|
977
755
|
"steps": [
|
|
978
756
|
{
|
|
979
|
-
"description": "GET /audit_events с `start_time` и `end_time` (ISO-8601, UTC+0)",
|
|
980
|
-
"command": "pachca
|
|
981
|
-
},
|
|
982
|
-
{
|
|
983
|
-
"description": "Пагинируй с `cursor` до получения всех записей (`limit` до 50)"
|
|
984
|
-
},
|
|
985
|
-
{
|
|
986
|
-
"description": "Собери все события в массив → сохрани в файл или отправь во внешнюю систему (SIEM, таблицы)"
|
|
757
|
+
"description": "GET /audit_events с `start_time` и `end_time` (ISO-8601, UTC+0) — пагинируй с `cursor` до получения всех записей (`limit` до 50)",
|
|
758
|
+
"command": "pachca security list --start-time=<ISO-8601> --end-time=<ISO-8601> --all"
|
|
987
759
|
}
|
|
988
760
|
]
|
|
989
761
|
}
|