@epilot/sdk 2.1.10 → 2.2.1
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/bin/cli.js +66 -12
- package/dist/{js-yaml-DLCVPJ7G.js → js-yaml-UPZKYVRY.js} +15 -17
- package/package.json +1 -1
- package/definitions/access-token-runtime.json +0 -1
- package/definitions/access-token.json +0 -663
- package/definitions/address-runtime.json +0 -1
- package/definitions/address-suggestions-runtime.json +0 -1
- package/definitions/address-suggestions.json +0 -582
- package/definitions/address.json +0 -578
- package/definitions/ai-agents-runtime.json +0 -1
- package/definitions/ai-agents.json +0 -1711
- package/definitions/app-runtime.json +0 -1
- package/definitions/app.json +0 -4493
- package/definitions/audit-logs-runtime.json +0 -1
- package/definitions/audit-logs.json +0 -305
- package/definitions/automation-runtime.json +0 -1
- package/definitions/automation.json +0 -4815
- package/definitions/billing-runtime.json +0 -1
- package/definitions/billing.json +0 -837
- package/definitions/blueprint-manifest-runtime.json +0 -1
- package/definitions/blueprint-manifest.json +0 -3490
- package/definitions/consent-runtime.json +0 -1
- package/definitions/consent.json +0 -344
- package/definitions/customer-portal-runtime.json +0 -1
- package/definitions/customer-portal.json +0 -15676
- package/definitions/dashboard-runtime.json +0 -1
- package/definitions/dashboard.json +0 -484
- package/definitions/data-management-runtime.json +0 -1
- package/definitions/data-management.json +0 -972
- package/definitions/deduplication-runtime.json +0 -1
- package/definitions/deduplication.json +0 -183
- package/definitions/design-runtime.json +0 -1
- package/definitions/design.json +0 -1423
- package/definitions/document-runtime.json +0 -1
- package/definitions/document.json +0 -758
- package/definitions/email-settings-runtime.json +0 -1
- package/definitions/email-settings.json +0 -2748
- package/definitions/email-template-runtime.json +0 -1
- package/definitions/email-template.json +0 -1441
- package/definitions/entity-mapping-runtime.json +0 -1
- package/definitions/entity-mapping.json +0 -1642
- package/definitions/entity-runtime.json +0 -1
- package/definitions/entity.json +0 -10276
- package/definitions/environments-runtime.json +0 -1
- package/definitions/environments.json +0 -363
- package/definitions/erp-integration-runtime.json +0 -1
- package/definitions/erp-integration.json +0 -6304
- package/definitions/event-catalog-runtime.json +0 -1
- package/definitions/event-catalog.json +0 -1051
- package/definitions/file-runtime.json +0 -1
- package/definitions/file.json +0 -2842
- package/definitions/iban-runtime.json +0 -1
- package/definitions/iban.json +0 -132
- package/definitions/journey-runtime.json +0 -1
- package/definitions/journey.json +0 -2603
- package/definitions/kanban-runtime.json +0 -1
- package/definitions/kanban.json +0 -1505
- package/definitions/message-runtime.json +0 -1
- package/definitions/message.json +0 -2660
- package/definitions/metering-runtime.json +0 -1
- package/definitions/metering.json +0 -2321
- package/definitions/notes-runtime.json +0 -1
- package/definitions/notes.json +0 -1531
- package/definitions/notification-runtime.json +0 -1
- package/definitions/notification.json +0 -1425
- package/definitions/organization-runtime.json +0 -1
- package/definitions/organization.json +0 -1192
- package/definitions/partner-directory-runtime.json +0 -1
- package/definitions/partner-directory.json +0 -2284
- package/definitions/permissions-runtime.json +0 -1
- package/definitions/permissions.json +0 -1515
- package/definitions/pricing-runtime.json +0 -1
- package/definitions/pricing-tier-runtime.json +0 -1
- package/definitions/pricing-tier.json +0 -105
- package/definitions/pricing.json +0 -9884
- package/definitions/purpose-runtime.json +0 -1
- package/definitions/purpose.json +0 -524
- package/definitions/sandbox-runtime.json +0 -1
- package/definitions/sandbox.json +0 -453
- package/definitions/submission-runtime.json +0 -1
- package/definitions/submission.json +0 -313
- package/definitions/targeting-runtime.json +0 -1
- package/definitions/targeting.json +0 -1474
- package/definitions/template-variables-runtime.json +0 -1
- package/definitions/template-variables.json +0 -1408
- package/definitions/user-runtime.json +0 -1
- package/definitions/user.json +0 -2408
- package/definitions/validation-rules-runtime.json +0 -1
- package/definitions/validation-rules.json +0 -1491
- package/definitions/webhooks-runtime.json +0 -1
- package/definitions/webhooks.json +0 -1634
- package/definitions/workflow-definition-runtime.json +0 -1
- package/definitions/workflow-definition.json +0 -3417
- package/definitions/workflow-runtime.json +0 -1
- package/definitions/workflow.json +0 -4146
package/definitions/kanban.json
DELETED
|
@@ -1,1505 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"openapi": "3.0.3",
|
|
3
|
-
"info": {
|
|
4
|
-
"title": "Kanban API",
|
|
5
|
-
"version": "1.2.3",
|
|
6
|
-
"description": "The Kanban API provides board management and data query capabilities for epilot's Kanban view feature.\n\nKanban boards allow epilot users to visualize and manage workflow tasks, opportunities, and other entities in a column-based layout.\n\nKey capabilities:\n- Create, read, update, and delete Kanban boards with configurable swimlanes and filters\n- Share boards with individual users or across the entire organization\n- Set and clear the organization-level default board\n- Query and autocomplete Flows data to populate Kanban cards with live entity data\n"
|
|
7
|
-
},
|
|
8
|
-
"tags": [
|
|
9
|
-
{
|
|
10
|
-
"name": "Kanban",
|
|
11
|
-
"description": "Endpoints for managing Kanban boards. Boards consist of swimlanes, each with configurable filters to display matching workflow tasks or entities.\nBoards can be owned by individual users and optionally shared with other users or the whole organization.\n"
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
"name": "Query",
|
|
15
|
-
"description": "Endpoints for querying and autocompleting Flows data used to populate Kanban cards.\nThese endpoints support filtering, sorting, and pagination of the underlying workflow task dataset.\n"
|
|
16
|
-
}
|
|
17
|
-
],
|
|
18
|
-
"security": [
|
|
19
|
-
{
|
|
20
|
-
"EpilotAuth": []
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
"EpilotOrg": []
|
|
24
|
-
}
|
|
25
|
-
],
|
|
26
|
-
"paths": {
|
|
27
|
-
"/v1/kanban/board": {
|
|
28
|
-
"post": {
|
|
29
|
-
"operationId": "createKanbanBoard",
|
|
30
|
-
"summary": "createKanbanBoard",
|
|
31
|
-
"description": "Creates a new Kanban board with the provided configuration.\n\nA board must have a title and a config containing at least one dataset. Swimlanes and filters can be configured to display specific subsets of workflow tasks or entities.\n",
|
|
32
|
-
"tags": [
|
|
33
|
-
"Kanban"
|
|
34
|
-
],
|
|
35
|
-
"requestBody": {
|
|
36
|
-
"required": true,
|
|
37
|
-
"content": {
|
|
38
|
-
"application/json": {
|
|
39
|
-
"schema": {
|
|
40
|
-
"$ref": "#/components/schemas/Board"
|
|
41
|
-
},
|
|
42
|
-
"example": {
|
|
43
|
-
"title": "My Sales Board",
|
|
44
|
-
"description": "Track open opportunities",
|
|
45
|
-
"config": {
|
|
46
|
-
"dataset": "workflow_tasks_overview",
|
|
47
|
-
"swimlanes": [
|
|
48
|
-
{
|
|
49
|
-
"id": "lane-1",
|
|
50
|
-
"title": "New",
|
|
51
|
-
"position": 1,
|
|
52
|
-
"filter": {
|
|
53
|
-
"items": [
|
|
54
|
-
{
|
|
55
|
-
"key": "status",
|
|
56
|
-
"operator": "EQUALS",
|
|
57
|
-
"value": "new",
|
|
58
|
-
"data_type": "string"
|
|
59
|
-
}
|
|
60
|
-
],
|
|
61
|
-
"combination": "AND"
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
],
|
|
65
|
-
"card_config": {
|
|
66
|
-
"fields": [
|
|
67
|
-
"assignee",
|
|
68
|
-
"due_date"
|
|
69
|
-
]
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
},
|
|
76
|
-
"responses": {
|
|
77
|
-
"200": {
|
|
78
|
-
"description": "Successfully created board",
|
|
79
|
-
"content": {
|
|
80
|
-
"application/json": {
|
|
81
|
-
"schema": {
|
|
82
|
-
"$ref": "#/components/schemas/Board"
|
|
83
|
-
},
|
|
84
|
-
"example": {
|
|
85
|
-
"id": "board-abc123",
|
|
86
|
-
"title": "My Sales Board",
|
|
87
|
-
"description": "Track open opportunities",
|
|
88
|
-
"org_id": "728224",
|
|
89
|
-
"created_by": "user-1",
|
|
90
|
-
"created_at": "2024-01-15T09:00:00.000Z",
|
|
91
|
-
"updated_at": "2024-01-15T09:00:00.000Z",
|
|
92
|
-
"config": {
|
|
93
|
-
"dataset": "workflow_tasks_overview",
|
|
94
|
-
"swimlanes": []
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
},
|
|
100
|
-
"400": {
|
|
101
|
-
"description": "Bad request - Invalid input data",
|
|
102
|
-
"content": {
|
|
103
|
-
"application/json": {
|
|
104
|
-
"schema": {
|
|
105
|
-
"$ref": "#/components/schemas/Error"
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
},
|
|
110
|
-
"401": {
|
|
111
|
-
"description": "Unauthorized - Authentication required",
|
|
112
|
-
"content": {
|
|
113
|
-
"application/json": {
|
|
114
|
-
"schema": {
|
|
115
|
-
"$ref": "#/components/schemas/Error"
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
},
|
|
120
|
-
"403": {
|
|
121
|
-
"description": "Forbidden - Insufficient permissions",
|
|
122
|
-
"content": {
|
|
123
|
-
"application/json": {
|
|
124
|
-
"schema": {
|
|
125
|
-
"$ref": "#/components/schemas/Error"
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
},
|
|
130
|
-
"500": {
|
|
131
|
-
"description": "Internal server error",
|
|
132
|
-
"content": {
|
|
133
|
-
"application/json": {
|
|
134
|
-
"schema": {
|
|
135
|
-
"$ref": "#/components/schemas/Error"
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
},
|
|
143
|
-
"/v1/kanban/boards": {
|
|
144
|
-
"get": {
|
|
145
|
-
"operationId": "getKanbanBoards",
|
|
146
|
-
"summary": "getKanbanBoards",
|
|
147
|
-
"description": "Returns a list of all Kanban boards accessible to the authenticated user.\n\nUse the `filter` query parameter to narrow results to boards the user owns (`owned`) or boards shared with them (`shared`). When omitted, all accessible boards are returned.\n",
|
|
148
|
-
"tags": [
|
|
149
|
-
"Kanban"
|
|
150
|
-
],
|
|
151
|
-
"parameters": [
|
|
152
|
-
{
|
|
153
|
-
"name": "filter",
|
|
154
|
-
"in": "query",
|
|
155
|
-
"description": "Filter boards by ownership type. If not provided, returns all accessible boards.",
|
|
156
|
-
"schema": {
|
|
157
|
-
"type": "string",
|
|
158
|
-
"enum": [
|
|
159
|
-
"owned",
|
|
160
|
-
"shared"
|
|
161
|
-
]
|
|
162
|
-
},
|
|
163
|
-
"required": false
|
|
164
|
-
}
|
|
165
|
-
],
|
|
166
|
-
"responses": {
|
|
167
|
-
"200": {
|
|
168
|
-
"description": "Successfully retrieved boards",
|
|
169
|
-
"content": {
|
|
170
|
-
"application/json": {
|
|
171
|
-
"schema": {
|
|
172
|
-
"type": "array",
|
|
173
|
-
"items": {
|
|
174
|
-
"$ref": "#/components/schemas/BoardSummary"
|
|
175
|
-
}
|
|
176
|
-
},
|
|
177
|
-
"example": [
|
|
178
|
-
{
|
|
179
|
-
"id": "board-abc123",
|
|
180
|
-
"title": "My Sales Board",
|
|
181
|
-
"description": "Track open opportunities",
|
|
182
|
-
"org_id": "728224",
|
|
183
|
-
"created_by": "user-1",
|
|
184
|
-
"created_at": "2024-01-15T09:00:00.000Z",
|
|
185
|
-
"updated_at": "2024-01-15T09:00:00.000Z",
|
|
186
|
-
"shared_with_org": false,
|
|
187
|
-
"owners": [
|
|
188
|
-
"user-1"
|
|
189
|
-
]
|
|
190
|
-
}
|
|
191
|
-
]
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
},
|
|
195
|
-
"401": {
|
|
196
|
-
"description": "Unauthorized - Authentication required",
|
|
197
|
-
"content": {
|
|
198
|
-
"application/json": {
|
|
199
|
-
"schema": {
|
|
200
|
-
"$ref": "#/components/schemas/Error"
|
|
201
|
-
}
|
|
202
|
-
}
|
|
203
|
-
}
|
|
204
|
-
},
|
|
205
|
-
"403": {
|
|
206
|
-
"description": "Forbidden - Insufficient permissions",
|
|
207
|
-
"content": {
|
|
208
|
-
"application/json": {
|
|
209
|
-
"schema": {
|
|
210
|
-
"$ref": "#/components/schemas/Error"
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
},
|
|
215
|
-
"500": {
|
|
216
|
-
"description": "Internal server error",
|
|
217
|
-
"content": {
|
|
218
|
-
"application/json": {
|
|
219
|
-
"schema": {
|
|
220
|
-
"$ref": "#/components/schemas/Error"
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
}
|
|
227
|
-
},
|
|
228
|
-
"/v1/kanban/board/{boardId}": {
|
|
229
|
-
"get": {
|
|
230
|
-
"operationId": "getKanbanBoard",
|
|
231
|
-
"summary": "getKanbanBoard",
|
|
232
|
-
"description": "Retrieves a Kanban board by ID, including its full configuration (swimlanes, filters, sorting, card fields).\n\nUse `\"default\"` as the `boardId` to retrieve the organization's currently configured default board.\n",
|
|
233
|
-
"tags": [
|
|
234
|
-
"Kanban"
|
|
235
|
-
],
|
|
236
|
-
"parameters": [
|
|
237
|
-
{
|
|
238
|
-
"name": "boardId",
|
|
239
|
-
"in": "path",
|
|
240
|
-
"required": true,
|
|
241
|
-
"schema": {
|
|
242
|
-
"type": "string"
|
|
243
|
-
},
|
|
244
|
-
"description": "The board ID, or \"default\" to get the organization's default board.\n",
|
|
245
|
-
"example": "board-123"
|
|
246
|
-
}
|
|
247
|
-
],
|
|
248
|
-
"responses": {
|
|
249
|
-
"200": {
|
|
250
|
-
"description": "Successfully retrieved board",
|
|
251
|
-
"content": {
|
|
252
|
-
"application/json": {
|
|
253
|
-
"schema": {
|
|
254
|
-
"$ref": "#/components/schemas/Board"
|
|
255
|
-
},
|
|
256
|
-
"example": {
|
|
257
|
-
"id": "board-abc123",
|
|
258
|
-
"title": "My Sales Board",
|
|
259
|
-
"description": "Track open opportunities",
|
|
260
|
-
"org_id": "728224",
|
|
261
|
-
"created_by": "user-1",
|
|
262
|
-
"created_at": "2024-01-15T09:00:00.000Z",
|
|
263
|
-
"updated_at": "2024-01-15T09:00:00.000Z",
|
|
264
|
-
"shared_with_org": false,
|
|
265
|
-
"owners": [
|
|
266
|
-
"user-1"
|
|
267
|
-
],
|
|
268
|
-
"config": {
|
|
269
|
-
"dataset": "workflow_tasks_overview",
|
|
270
|
-
"swimlanes": [
|
|
271
|
-
{
|
|
272
|
-
"id": "lane-1",
|
|
273
|
-
"title": "New",
|
|
274
|
-
"position": 1,
|
|
275
|
-
"filter": {
|
|
276
|
-
"items": [
|
|
277
|
-
{
|
|
278
|
-
"key": "status",
|
|
279
|
-
"operator": "EQUALS",
|
|
280
|
-
"value": "new",
|
|
281
|
-
"data_type": "string"
|
|
282
|
-
}
|
|
283
|
-
],
|
|
284
|
-
"combination": "AND"
|
|
285
|
-
}
|
|
286
|
-
}
|
|
287
|
-
],
|
|
288
|
-
"card_config": {
|
|
289
|
-
"fields": [
|
|
290
|
-
"assignee",
|
|
291
|
-
"due_date"
|
|
292
|
-
]
|
|
293
|
-
},
|
|
294
|
-
"sorting": {
|
|
295
|
-
"field": "created_at",
|
|
296
|
-
"direction": "desc"
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
}
|
|
300
|
-
}
|
|
301
|
-
}
|
|
302
|
-
},
|
|
303
|
-
"401": {
|
|
304
|
-
"description": "Unauthorized - Authentication required",
|
|
305
|
-
"content": {
|
|
306
|
-
"application/json": {
|
|
307
|
-
"schema": {
|
|
308
|
-
"$ref": "#/components/schemas/Error"
|
|
309
|
-
}
|
|
310
|
-
}
|
|
311
|
-
}
|
|
312
|
-
},
|
|
313
|
-
"403": {
|
|
314
|
-
"description": "Forbidden - Insufficient permissions",
|
|
315
|
-
"content": {
|
|
316
|
-
"application/json": {
|
|
317
|
-
"schema": {
|
|
318
|
-
"$ref": "#/components/schemas/Error"
|
|
319
|
-
}
|
|
320
|
-
}
|
|
321
|
-
}
|
|
322
|
-
},
|
|
323
|
-
"404": {
|
|
324
|
-
"description": "Board not found",
|
|
325
|
-
"content": {
|
|
326
|
-
"application/json": {
|
|
327
|
-
"schema": {
|
|
328
|
-
"$ref": "#/components/schemas/Error"
|
|
329
|
-
}
|
|
330
|
-
}
|
|
331
|
-
}
|
|
332
|
-
},
|
|
333
|
-
"500": {
|
|
334
|
-
"description": "Internal server error",
|
|
335
|
-
"content": {
|
|
336
|
-
"application/json": {
|
|
337
|
-
"schema": {
|
|
338
|
-
"$ref": "#/components/schemas/Error"
|
|
339
|
-
}
|
|
340
|
-
}
|
|
341
|
-
}
|
|
342
|
-
}
|
|
343
|
-
}
|
|
344
|
-
},
|
|
345
|
-
"put": {
|
|
346
|
-
"operationId": "updateKanbanBoard",
|
|
347
|
-
"summary": "updateKanbanBoard",
|
|
348
|
-
"description": "Fully replaces the configuration of an existing Kanban board by ID.\n\nAll board fields (title, config, swimlanes, filters) must be provided. Use PATCH for partial updates.\n",
|
|
349
|
-
"tags": [
|
|
350
|
-
"Kanban"
|
|
351
|
-
],
|
|
352
|
-
"parameters": [
|
|
353
|
-
{
|
|
354
|
-
"name": "boardId",
|
|
355
|
-
"in": "path",
|
|
356
|
-
"required": true,
|
|
357
|
-
"schema": {
|
|
358
|
-
"type": "string"
|
|
359
|
-
},
|
|
360
|
-
"description": "The ID of the board to update."
|
|
361
|
-
}
|
|
362
|
-
],
|
|
363
|
-
"requestBody": {
|
|
364
|
-
"required": true,
|
|
365
|
-
"content": {
|
|
366
|
-
"application/json": {
|
|
367
|
-
"schema": {
|
|
368
|
-
"$ref": "#/components/schemas/Board"
|
|
369
|
-
}
|
|
370
|
-
}
|
|
371
|
-
}
|
|
372
|
-
},
|
|
373
|
-
"responses": {
|
|
374
|
-
"200": {
|
|
375
|
-
"description": "Successfully updated board",
|
|
376
|
-
"content": {
|
|
377
|
-
"application/json": {
|
|
378
|
-
"schema": {
|
|
379
|
-
"$ref": "#/components/schemas/Board"
|
|
380
|
-
},
|
|
381
|
-
"example": {
|
|
382
|
-
"id": "board-abc123",
|
|
383
|
-
"title": "Updated Sales Board",
|
|
384
|
-
"description": "Track open opportunities",
|
|
385
|
-
"org_id": "728224",
|
|
386
|
-
"created_by": "user-1",
|
|
387
|
-
"created_at": "2024-01-15T09:00:00.000Z",
|
|
388
|
-
"updated_at": "2024-01-16T10:30:00.000Z",
|
|
389
|
-
"shared_with_org": false,
|
|
390
|
-
"owners": [
|
|
391
|
-
"user-1"
|
|
392
|
-
],
|
|
393
|
-
"config": {
|
|
394
|
-
"dataset": "workflow_tasks_overview",
|
|
395
|
-
"swimlanes": []
|
|
396
|
-
}
|
|
397
|
-
}
|
|
398
|
-
}
|
|
399
|
-
}
|
|
400
|
-
},
|
|
401
|
-
"400": {
|
|
402
|
-
"description": "Bad request - Invalid input data",
|
|
403
|
-
"content": {
|
|
404
|
-
"application/json": {
|
|
405
|
-
"schema": {
|
|
406
|
-
"$ref": "#/components/schemas/Error"
|
|
407
|
-
}
|
|
408
|
-
}
|
|
409
|
-
}
|
|
410
|
-
},
|
|
411
|
-
"401": {
|
|
412
|
-
"description": "Unauthorized - Authentication required",
|
|
413
|
-
"content": {
|
|
414
|
-
"application/json": {
|
|
415
|
-
"schema": {
|
|
416
|
-
"$ref": "#/components/schemas/Error"
|
|
417
|
-
}
|
|
418
|
-
}
|
|
419
|
-
}
|
|
420
|
-
},
|
|
421
|
-
"403": {
|
|
422
|
-
"description": "Forbidden - Insufficient permissions",
|
|
423
|
-
"content": {
|
|
424
|
-
"application/json": {
|
|
425
|
-
"schema": {
|
|
426
|
-
"$ref": "#/components/schemas/Error"
|
|
427
|
-
}
|
|
428
|
-
}
|
|
429
|
-
}
|
|
430
|
-
},
|
|
431
|
-
"404": {
|
|
432
|
-
"description": "Board not found",
|
|
433
|
-
"content": {
|
|
434
|
-
"application/json": {
|
|
435
|
-
"schema": {
|
|
436
|
-
"$ref": "#/components/schemas/Error"
|
|
437
|
-
}
|
|
438
|
-
}
|
|
439
|
-
}
|
|
440
|
-
},
|
|
441
|
-
"500": {
|
|
442
|
-
"description": "Internal server error",
|
|
443
|
-
"content": {
|
|
444
|
-
"application/json": {
|
|
445
|
-
"schema": {
|
|
446
|
-
"$ref": "#/components/schemas/Error"
|
|
447
|
-
}
|
|
448
|
-
}
|
|
449
|
-
}
|
|
450
|
-
}
|
|
451
|
-
}
|
|
452
|
-
},
|
|
453
|
-
"patch": {
|
|
454
|
-
"operationId": "patchKanbanBoard",
|
|
455
|
-
"summary": "patchKanbanBoard",
|
|
456
|
-
"description": "Partially updates fields of an existing Kanban board by ID.\n\nOnly the fields provided in the request body will be updated. Useful for updating sharing settings, ownership, or title without replacing the full board configuration.\n",
|
|
457
|
-
"tags": [
|
|
458
|
-
"Kanban"
|
|
459
|
-
],
|
|
460
|
-
"parameters": [
|
|
461
|
-
{
|
|
462
|
-
"name": "boardId",
|
|
463
|
-
"in": "path",
|
|
464
|
-
"required": true,
|
|
465
|
-
"schema": {
|
|
466
|
-
"type": "string"
|
|
467
|
-
},
|
|
468
|
-
"description": "The ID of the board to patch."
|
|
469
|
-
}
|
|
470
|
-
],
|
|
471
|
-
"requestBody": {
|
|
472
|
-
"required": true,
|
|
473
|
-
"content": {
|
|
474
|
-
"application/json": {
|
|
475
|
-
"schema": {
|
|
476
|
-
"type": "object",
|
|
477
|
-
"properties": {
|
|
478
|
-
"title": {
|
|
479
|
-
"type": "string",
|
|
480
|
-
"example": "Board 1"
|
|
481
|
-
},
|
|
482
|
-
"description": {
|
|
483
|
-
"type": "string",
|
|
484
|
-
"example": "Board description"
|
|
485
|
-
},
|
|
486
|
-
"shared_with": {
|
|
487
|
-
"type": "array",
|
|
488
|
-
"items": {
|
|
489
|
-
"type": "string"
|
|
490
|
-
},
|
|
491
|
-
"description": "Array of user IDs to share the board with"
|
|
492
|
-
},
|
|
493
|
-
"shared_with_org": {
|
|
494
|
-
"type": "boolean",
|
|
495
|
-
"description": "Whether the board is shared with the entire organization"
|
|
496
|
-
},
|
|
497
|
-
"owners": {
|
|
498
|
-
"type": "array",
|
|
499
|
-
"items": {
|
|
500
|
-
"type": "string"
|
|
501
|
-
},
|
|
502
|
-
"description": "Array of user IDs who have full ownership rights for this board (view, edit, delete)"
|
|
503
|
-
}
|
|
504
|
-
}
|
|
505
|
-
},
|
|
506
|
-
"example": {
|
|
507
|
-
"title": "Updated Board Title",
|
|
508
|
-
"shared_with_org": true,
|
|
509
|
-
"owners": [
|
|
510
|
-
"user-1",
|
|
511
|
-
"user-2"
|
|
512
|
-
]
|
|
513
|
-
}
|
|
514
|
-
}
|
|
515
|
-
}
|
|
516
|
-
},
|
|
517
|
-
"responses": {
|
|
518
|
-
"200": {
|
|
519
|
-
"description": "Successfully patched board",
|
|
520
|
-
"content": {
|
|
521
|
-
"application/json": {
|
|
522
|
-
"schema": {
|
|
523
|
-
"$ref": "#/components/schemas/Board"
|
|
524
|
-
},
|
|
525
|
-
"example": {
|
|
526
|
-
"id": "board-abc123",
|
|
527
|
-
"title": "Updated Board Title",
|
|
528
|
-
"org_id": "728224",
|
|
529
|
-
"created_by": "user-1",
|
|
530
|
-
"created_at": "2024-01-15T09:00:00.000Z",
|
|
531
|
-
"updated_at": "2024-01-16T12:00:00.000Z",
|
|
532
|
-
"shared_with_org": true,
|
|
533
|
-
"owners": [
|
|
534
|
-
"user-1",
|
|
535
|
-
"user-2"
|
|
536
|
-
],
|
|
537
|
-
"config": {
|
|
538
|
-
"dataset": "workflow_tasks_overview",
|
|
539
|
-
"swimlanes": []
|
|
540
|
-
}
|
|
541
|
-
}
|
|
542
|
-
}
|
|
543
|
-
}
|
|
544
|
-
},
|
|
545
|
-
"400": {
|
|
546
|
-
"description": "Bad request - Invalid input data",
|
|
547
|
-
"content": {
|
|
548
|
-
"application/json": {
|
|
549
|
-
"schema": {
|
|
550
|
-
"$ref": "#/components/schemas/Error"
|
|
551
|
-
}
|
|
552
|
-
}
|
|
553
|
-
}
|
|
554
|
-
},
|
|
555
|
-
"401": {
|
|
556
|
-
"description": "Unauthorized - Authentication required",
|
|
557
|
-
"content": {
|
|
558
|
-
"application/json": {
|
|
559
|
-
"schema": {
|
|
560
|
-
"$ref": "#/components/schemas/Error"
|
|
561
|
-
}
|
|
562
|
-
}
|
|
563
|
-
}
|
|
564
|
-
},
|
|
565
|
-
"403": {
|
|
566
|
-
"description": "Forbidden - Insufficient permissions",
|
|
567
|
-
"content": {
|
|
568
|
-
"application/json": {
|
|
569
|
-
"schema": {
|
|
570
|
-
"$ref": "#/components/schemas/Error"
|
|
571
|
-
}
|
|
572
|
-
}
|
|
573
|
-
}
|
|
574
|
-
},
|
|
575
|
-
"404": {
|
|
576
|
-
"description": "Board not found",
|
|
577
|
-
"content": {
|
|
578
|
-
"application/json": {
|
|
579
|
-
"schema": {
|
|
580
|
-
"$ref": "#/components/schemas/Error"
|
|
581
|
-
}
|
|
582
|
-
}
|
|
583
|
-
}
|
|
584
|
-
},
|
|
585
|
-
"500": {
|
|
586
|
-
"description": "Internal server error",
|
|
587
|
-
"content": {
|
|
588
|
-
"application/json": {
|
|
589
|
-
"schema": {
|
|
590
|
-
"$ref": "#/components/schemas/Error"
|
|
591
|
-
}
|
|
592
|
-
}
|
|
593
|
-
}
|
|
594
|
-
}
|
|
595
|
-
}
|
|
596
|
-
},
|
|
597
|
-
"delete": {
|
|
598
|
-
"operationId": "deleteKanbanBoard",
|
|
599
|
-
"summary": "deleteKanbanBoard",
|
|
600
|
-
"description": "Permanently deletes a Kanban board by ID. This action is irreversible.",
|
|
601
|
-
"tags": [
|
|
602
|
-
"Kanban"
|
|
603
|
-
],
|
|
604
|
-
"parameters": [
|
|
605
|
-
{
|
|
606
|
-
"name": "boardId",
|
|
607
|
-
"in": "path",
|
|
608
|
-
"required": true,
|
|
609
|
-
"schema": {
|
|
610
|
-
"type": "string"
|
|
611
|
-
},
|
|
612
|
-
"description": "The ID of the board to delete."
|
|
613
|
-
}
|
|
614
|
-
],
|
|
615
|
-
"responses": {
|
|
616
|
-
"200": {
|
|
617
|
-
"description": "Successfully deleted board"
|
|
618
|
-
},
|
|
619
|
-
"401": {
|
|
620
|
-
"description": "Unauthorized - Authentication required",
|
|
621
|
-
"content": {
|
|
622
|
-
"application/json": {
|
|
623
|
-
"schema": {
|
|
624
|
-
"$ref": "#/components/schemas/Error"
|
|
625
|
-
}
|
|
626
|
-
}
|
|
627
|
-
}
|
|
628
|
-
},
|
|
629
|
-
"403": {
|
|
630
|
-
"description": "Forbidden - Insufficient permissions",
|
|
631
|
-
"content": {
|
|
632
|
-
"application/json": {
|
|
633
|
-
"schema": {
|
|
634
|
-
"$ref": "#/components/schemas/Error"
|
|
635
|
-
}
|
|
636
|
-
}
|
|
637
|
-
}
|
|
638
|
-
},
|
|
639
|
-
"404": {
|
|
640
|
-
"description": "Board not found",
|
|
641
|
-
"content": {
|
|
642
|
-
"application/json": {
|
|
643
|
-
"schema": {
|
|
644
|
-
"$ref": "#/components/schemas/Error"
|
|
645
|
-
}
|
|
646
|
-
}
|
|
647
|
-
}
|
|
648
|
-
},
|
|
649
|
-
"500": {
|
|
650
|
-
"description": "Internal server error",
|
|
651
|
-
"content": {
|
|
652
|
-
"application/json": {
|
|
653
|
-
"schema": {
|
|
654
|
-
"$ref": "#/components/schemas/Error"
|
|
655
|
-
}
|
|
656
|
-
}
|
|
657
|
-
}
|
|
658
|
-
}
|
|
659
|
-
}
|
|
660
|
-
}
|
|
661
|
-
},
|
|
662
|
-
"/v1/kanban/org/default-board": {
|
|
663
|
-
"put": {
|
|
664
|
-
"operationId": "setDefaultKanbanBoard",
|
|
665
|
-
"summary": "setDefaultKanbanBoard",
|
|
666
|
-
"description": "Sets a Kanban board as the default board for the organization.\n\nThe default board is shown to users who access the Kanban view without specifying a specific board ID.\nPass `boardId` as a query parameter to identify the board to set as default.\n",
|
|
667
|
-
"tags": [
|
|
668
|
-
"Kanban"
|
|
669
|
-
],
|
|
670
|
-
"parameters": [
|
|
671
|
-
{
|
|
672
|
-
"name": "boardId",
|
|
673
|
-
"in": "query",
|
|
674
|
-
"required": true,
|
|
675
|
-
"schema": {
|
|
676
|
-
"type": "string"
|
|
677
|
-
},
|
|
678
|
-
"description": "The ID of the board to set as default",
|
|
679
|
-
"example": "board-abc123"
|
|
680
|
-
}
|
|
681
|
-
],
|
|
682
|
-
"responses": {
|
|
683
|
-
"200": {
|
|
684
|
-
"description": "Successfully set default board",
|
|
685
|
-
"content": {
|
|
686
|
-
"application/json": {
|
|
687
|
-
"schema": {
|
|
688
|
-
"type": "object",
|
|
689
|
-
"properties": {
|
|
690
|
-
"message": {
|
|
691
|
-
"type": "string"
|
|
692
|
-
},
|
|
693
|
-
"default_board_id": {
|
|
694
|
-
"type": "string"
|
|
695
|
-
}
|
|
696
|
-
}
|
|
697
|
-
},
|
|
698
|
-
"example": {
|
|
699
|
-
"message": "Default board set successfully",
|
|
700
|
-
"default_board_id": "board-abc123"
|
|
701
|
-
}
|
|
702
|
-
}
|
|
703
|
-
}
|
|
704
|
-
},
|
|
705
|
-
"400": {
|
|
706
|
-
"description": "Bad request - Invalid input data or boardId missing",
|
|
707
|
-
"content": {
|
|
708
|
-
"application/json": {
|
|
709
|
-
"schema": {
|
|
710
|
-
"$ref": "#/components/schemas/Error"
|
|
711
|
-
}
|
|
712
|
-
}
|
|
713
|
-
}
|
|
714
|
-
},
|
|
715
|
-
"401": {
|
|
716
|
-
"description": "Unauthorized - Authentication required",
|
|
717
|
-
"content": {
|
|
718
|
-
"application/json": {
|
|
719
|
-
"schema": {
|
|
720
|
-
"$ref": "#/components/schemas/Error"
|
|
721
|
-
}
|
|
722
|
-
}
|
|
723
|
-
}
|
|
724
|
-
},
|
|
725
|
-
"403": {
|
|
726
|
-
"description": "Forbidden - Insufficient permissions",
|
|
727
|
-
"content": {
|
|
728
|
-
"application/json": {
|
|
729
|
-
"schema": {
|
|
730
|
-
"$ref": "#/components/schemas/Error"
|
|
731
|
-
}
|
|
732
|
-
}
|
|
733
|
-
}
|
|
734
|
-
},
|
|
735
|
-
"404": {
|
|
736
|
-
"description": "Board not found",
|
|
737
|
-
"content": {
|
|
738
|
-
"application/json": {
|
|
739
|
-
"schema": {
|
|
740
|
-
"$ref": "#/components/schemas/Error"
|
|
741
|
-
}
|
|
742
|
-
}
|
|
743
|
-
}
|
|
744
|
-
},
|
|
745
|
-
"500": {
|
|
746
|
-
"description": "Internal server error",
|
|
747
|
-
"content": {
|
|
748
|
-
"application/json": {
|
|
749
|
-
"schema": {
|
|
750
|
-
"$ref": "#/components/schemas/Error"
|
|
751
|
-
}
|
|
752
|
-
}
|
|
753
|
-
}
|
|
754
|
-
}
|
|
755
|
-
}
|
|
756
|
-
},
|
|
757
|
-
"delete": {
|
|
758
|
-
"operationId": "clearDefaultKanbanBoard",
|
|
759
|
-
"summary": "clearDefaultKanbanBoard",
|
|
760
|
-
"description": "Removes the default board configuration for the organization.\n\nAfter calling this endpoint, `getKanbanBoard` with `boardId=default` will return a 404 until a new default is set.\n",
|
|
761
|
-
"tags": [
|
|
762
|
-
"Kanban"
|
|
763
|
-
],
|
|
764
|
-
"responses": {
|
|
765
|
-
"200": {
|
|
766
|
-
"description": "Successfully cleared default board",
|
|
767
|
-
"content": {
|
|
768
|
-
"application/json": {
|
|
769
|
-
"schema": {
|
|
770
|
-
"type": "object",
|
|
771
|
-
"properties": {
|
|
772
|
-
"message": {
|
|
773
|
-
"type": "string"
|
|
774
|
-
},
|
|
775
|
-
"default_board_id": {
|
|
776
|
-
"type": "string",
|
|
777
|
-
"nullable": true
|
|
778
|
-
}
|
|
779
|
-
}
|
|
780
|
-
},
|
|
781
|
-
"example": {
|
|
782
|
-
"message": "Default board cleared successfully",
|
|
783
|
-
"default_board_id": null
|
|
784
|
-
}
|
|
785
|
-
}
|
|
786
|
-
}
|
|
787
|
-
},
|
|
788
|
-
"401": {
|
|
789
|
-
"description": "Unauthorized - Authentication required",
|
|
790
|
-
"content": {
|
|
791
|
-
"application/json": {
|
|
792
|
-
"schema": {
|
|
793
|
-
"$ref": "#/components/schemas/Error"
|
|
794
|
-
}
|
|
795
|
-
}
|
|
796
|
-
}
|
|
797
|
-
},
|
|
798
|
-
"403": {
|
|
799
|
-
"description": "Forbidden - Insufficient permissions",
|
|
800
|
-
"content": {
|
|
801
|
-
"application/json": {
|
|
802
|
-
"schema": {
|
|
803
|
-
"$ref": "#/components/schemas/Error"
|
|
804
|
-
}
|
|
805
|
-
}
|
|
806
|
-
}
|
|
807
|
-
},
|
|
808
|
-
"500": {
|
|
809
|
-
"description": "Internal server error",
|
|
810
|
-
"content": {
|
|
811
|
-
"application/json": {
|
|
812
|
-
"schema": {
|
|
813
|
-
"$ref": "#/components/schemas/Error"
|
|
814
|
-
}
|
|
815
|
-
}
|
|
816
|
-
}
|
|
817
|
-
}
|
|
818
|
-
}
|
|
819
|
-
}
|
|
820
|
-
},
|
|
821
|
-
"/v1/kanban/query/flows:autocomplete": {
|
|
822
|
-
"get": {
|
|
823
|
-
"operationId": "flowsAutocomplete",
|
|
824
|
-
"summary": "flowsAutocomplete",
|
|
825
|
-
"description": "Returns autocomplete suggestions for a given attribute in the Flows dataset.\n\nUse this endpoint to power filter dropdowns and search inputs in the Kanban board configuration UI.\nThe `attribute` parameter specifies which field to autocomplete (e.g. `name`, `assignee`, `status`).\nThe optional `input` parameter filters results to those matching the typed prefix.\n",
|
|
826
|
-
"tags": [
|
|
827
|
-
"Query"
|
|
828
|
-
],
|
|
829
|
-
"parameters": [
|
|
830
|
-
{
|
|
831
|
-
"name": "input",
|
|
832
|
-
"in": "query",
|
|
833
|
-
"description": "Typed input string to filter autocomplete suggestions",
|
|
834
|
-
"schema": {
|
|
835
|
-
"type": "string"
|
|
836
|
-
},
|
|
837
|
-
"example": "John"
|
|
838
|
-
},
|
|
839
|
-
{
|
|
840
|
-
"name": "attribute",
|
|
841
|
-
"in": "query",
|
|
842
|
-
"description": "The field name to autocomplete values for",
|
|
843
|
-
"schema": {
|
|
844
|
-
"type": "string",
|
|
845
|
-
"example": "name"
|
|
846
|
-
},
|
|
847
|
-
"required": true
|
|
848
|
-
},
|
|
849
|
-
{
|
|
850
|
-
"name": "size",
|
|
851
|
-
"in": "query",
|
|
852
|
-
"description": "Maximum number of results to return",
|
|
853
|
-
"schema": {
|
|
854
|
-
"type": "integer",
|
|
855
|
-
"default": 25,
|
|
856
|
-
"minimum": 1,
|
|
857
|
-
"maximum": 250
|
|
858
|
-
}
|
|
859
|
-
},
|
|
860
|
-
{
|
|
861
|
-
"name": "from",
|
|
862
|
-
"in": "query",
|
|
863
|
-
"description": "Starting offset for pagination",
|
|
864
|
-
"schema": {
|
|
865
|
-
"type": "integer",
|
|
866
|
-
"default": 0,
|
|
867
|
-
"minimum": 0
|
|
868
|
-
}
|
|
869
|
-
}
|
|
870
|
-
],
|
|
871
|
-
"responses": {
|
|
872
|
-
"200": {
|
|
873
|
-
"description": "Autocomplete results returned successfully",
|
|
874
|
-
"content": {
|
|
875
|
-
"application/json": {
|
|
876
|
-
"schema": {
|
|
877
|
-
"type": "object",
|
|
878
|
-
"properties": {
|
|
879
|
-
"results": {
|
|
880
|
-
"type": "array",
|
|
881
|
-
"items": {
|
|
882
|
-
"anyOf": [
|
|
883
|
-
{
|
|
884
|
-
"type": "string"
|
|
885
|
-
},
|
|
886
|
-
{
|
|
887
|
-
"type": "boolean"
|
|
888
|
-
},
|
|
889
|
-
{
|
|
890
|
-
"type": "object",
|
|
891
|
-
"additionalProperties": true
|
|
892
|
-
}
|
|
893
|
-
]
|
|
894
|
-
},
|
|
895
|
-
"example": [
|
|
896
|
-
"value"
|
|
897
|
-
]
|
|
898
|
-
},
|
|
899
|
-
"hits": {
|
|
900
|
-
"type": "number",
|
|
901
|
-
"description": "Total number of matching items available",
|
|
902
|
-
"example": 42
|
|
903
|
-
}
|
|
904
|
-
},
|
|
905
|
-
"required": [
|
|
906
|
-
"results",
|
|
907
|
-
"hits"
|
|
908
|
-
]
|
|
909
|
-
}
|
|
910
|
-
}
|
|
911
|
-
}
|
|
912
|
-
},
|
|
913
|
-
"400": {
|
|
914
|
-
"description": "Bad request - Missing or invalid parameters",
|
|
915
|
-
"content": {
|
|
916
|
-
"application/json": {
|
|
917
|
-
"schema": {
|
|
918
|
-
"$ref": "#/components/schemas/Error"
|
|
919
|
-
}
|
|
920
|
-
}
|
|
921
|
-
}
|
|
922
|
-
},
|
|
923
|
-
"401": {
|
|
924
|
-
"description": "Unauthorized - Authentication required",
|
|
925
|
-
"content": {
|
|
926
|
-
"application/json": {
|
|
927
|
-
"schema": {
|
|
928
|
-
"$ref": "#/components/schemas/Error"
|
|
929
|
-
}
|
|
930
|
-
}
|
|
931
|
-
}
|
|
932
|
-
},
|
|
933
|
-
"403": {
|
|
934
|
-
"description": "Forbidden - Insufficient permissions",
|
|
935
|
-
"content": {
|
|
936
|
-
"application/json": {
|
|
937
|
-
"schema": {
|
|
938
|
-
"$ref": "#/components/schemas/Error"
|
|
939
|
-
}
|
|
940
|
-
}
|
|
941
|
-
}
|
|
942
|
-
},
|
|
943
|
-
"500": {
|
|
944
|
-
"description": "Internal server error",
|
|
945
|
-
"content": {
|
|
946
|
-
"application/json": {
|
|
947
|
-
"schema": {
|
|
948
|
-
"$ref": "#/components/schemas/Error"
|
|
949
|
-
}
|
|
950
|
-
}
|
|
951
|
-
}
|
|
952
|
-
}
|
|
953
|
-
}
|
|
954
|
-
}
|
|
955
|
-
},
|
|
956
|
-
"/v1/kanban/query/flows:execute": {
|
|
957
|
-
"post": {
|
|
958
|
-
"operationId": "executeFlowsQuery",
|
|
959
|
-
"summary": "executeFlowsQuery",
|
|
960
|
-
"description": "Executes a query against the Flows dataset and returns paginated results for use in Kanban card rendering.\n\nSupports filtering with complex AND/OR logic, sorting, and offset-based pagination.\nResults are used to populate Kanban swimlane cards with real-time workflow task data.\n",
|
|
961
|
-
"tags": [
|
|
962
|
-
"Query"
|
|
963
|
-
],
|
|
964
|
-
"requestBody": {
|
|
965
|
-
"required": true,
|
|
966
|
-
"content": {
|
|
967
|
-
"application/json": {
|
|
968
|
-
"schema": {
|
|
969
|
-
"$ref": "#/components/schemas/FlowsQueryRequest"
|
|
970
|
-
},
|
|
971
|
-
"example": {
|
|
972
|
-
"filters": {
|
|
973
|
-
"items": [
|
|
974
|
-
{
|
|
975
|
-
"key": "status",
|
|
976
|
-
"operator": "IS_ONE_OF",
|
|
977
|
-
"value": [
|
|
978
|
-
"open",
|
|
979
|
-
"in_progress"
|
|
980
|
-
],
|
|
981
|
-
"data_type": "string"
|
|
982
|
-
}
|
|
983
|
-
],
|
|
984
|
-
"combination": "AND"
|
|
985
|
-
},
|
|
986
|
-
"sorting": {
|
|
987
|
-
"field": "created_at",
|
|
988
|
-
"direction": "desc"
|
|
989
|
-
},
|
|
990
|
-
"from": 0,
|
|
991
|
-
"size": 10
|
|
992
|
-
}
|
|
993
|
-
}
|
|
994
|
-
}
|
|
995
|
-
},
|
|
996
|
-
"responses": {
|
|
997
|
-
"200": {
|
|
998
|
-
"description": "Query executed successfully",
|
|
999
|
-
"content": {
|
|
1000
|
-
"application/json": {
|
|
1001
|
-
"schema": {
|
|
1002
|
-
"$ref": "#/components/schemas/FlowsQueryResult"
|
|
1003
|
-
},
|
|
1004
|
-
"example": {
|
|
1005
|
-
"results": [
|
|
1006
|
-
{
|
|
1007
|
-
"id": "flow-001",
|
|
1008
|
-
"status": "open",
|
|
1009
|
-
"assignee": "user-1",
|
|
1010
|
-
"created_at": "2024-01-10T08:00:00.000Z"
|
|
1011
|
-
}
|
|
1012
|
-
],
|
|
1013
|
-
"hits": 42,
|
|
1014
|
-
"page_number": 1,
|
|
1015
|
-
"page_size": 10,
|
|
1016
|
-
"total_pages": 5
|
|
1017
|
-
}
|
|
1018
|
-
}
|
|
1019
|
-
}
|
|
1020
|
-
},
|
|
1021
|
-
"400": {
|
|
1022
|
-
"description": "Bad request - Invalid filter or sort configuration",
|
|
1023
|
-
"content": {
|
|
1024
|
-
"application/json": {
|
|
1025
|
-
"schema": {
|
|
1026
|
-
"$ref": "#/components/schemas/Error"
|
|
1027
|
-
}
|
|
1028
|
-
}
|
|
1029
|
-
}
|
|
1030
|
-
},
|
|
1031
|
-
"401": {
|
|
1032
|
-
"description": "Unauthorized - Authentication required",
|
|
1033
|
-
"content": {
|
|
1034
|
-
"application/json": {
|
|
1035
|
-
"schema": {
|
|
1036
|
-
"$ref": "#/components/schemas/Error"
|
|
1037
|
-
}
|
|
1038
|
-
}
|
|
1039
|
-
}
|
|
1040
|
-
},
|
|
1041
|
-
"403": {
|
|
1042
|
-
"description": "Forbidden - Insufficient permissions",
|
|
1043
|
-
"content": {
|
|
1044
|
-
"application/json": {
|
|
1045
|
-
"schema": {
|
|
1046
|
-
"$ref": "#/components/schemas/Error"
|
|
1047
|
-
}
|
|
1048
|
-
}
|
|
1049
|
-
}
|
|
1050
|
-
},
|
|
1051
|
-
"500": {
|
|
1052
|
-
"description": "Internal server error",
|
|
1053
|
-
"content": {
|
|
1054
|
-
"application/json": {
|
|
1055
|
-
"schema": {
|
|
1056
|
-
"$ref": "#/components/schemas/Error"
|
|
1057
|
-
}
|
|
1058
|
-
}
|
|
1059
|
-
}
|
|
1060
|
-
}
|
|
1061
|
-
}
|
|
1062
|
-
}
|
|
1063
|
-
}
|
|
1064
|
-
},
|
|
1065
|
-
"components": {
|
|
1066
|
-
"securitySchemes": {
|
|
1067
|
-
"EpilotAuth": {
|
|
1068
|
-
"type": "http",
|
|
1069
|
-
"scheme": "bearer",
|
|
1070
|
-
"description": "Authorization header with epilot OAuth2 bearer token",
|
|
1071
|
-
"bearerFormat": "JWT"
|
|
1072
|
-
},
|
|
1073
|
-
"EpilotOrg": {
|
|
1074
|
-
"description": "Overrides the target organization to allow shared tenant access",
|
|
1075
|
-
"name": "x-epilot-org-id",
|
|
1076
|
-
"in": "header",
|
|
1077
|
-
"type": "apiKey"
|
|
1078
|
-
}
|
|
1079
|
-
},
|
|
1080
|
-
"schemas": {
|
|
1081
|
-
"Error": {
|
|
1082
|
-
"type": "object",
|
|
1083
|
-
"description": "Standard error response",
|
|
1084
|
-
"properties": {
|
|
1085
|
-
"message": {
|
|
1086
|
-
"type": "string",
|
|
1087
|
-
"description": "Human-readable error message",
|
|
1088
|
-
"example": "Board not found"
|
|
1089
|
-
},
|
|
1090
|
-
"status": {
|
|
1091
|
-
"type": "integer",
|
|
1092
|
-
"description": "HTTP status code",
|
|
1093
|
-
"example": 404
|
|
1094
|
-
}
|
|
1095
|
-
}
|
|
1096
|
-
},
|
|
1097
|
-
"BoardSummary": {
|
|
1098
|
-
"type": "object",
|
|
1099
|
-
"description": "Summary representation of a Kanban board, returned in list responses. Does not include swimlane and filter configuration details.",
|
|
1100
|
-
"properties": {
|
|
1101
|
-
"id": {
|
|
1102
|
-
"type": "string"
|
|
1103
|
-
},
|
|
1104
|
-
"title": {
|
|
1105
|
-
"type": "string",
|
|
1106
|
-
"example": "Board 1"
|
|
1107
|
-
},
|
|
1108
|
-
"description": {
|
|
1109
|
-
"type": "string",
|
|
1110
|
-
"example": "Board description"
|
|
1111
|
-
},
|
|
1112
|
-
"created_at": {
|
|
1113
|
-
"type": "string",
|
|
1114
|
-
"format": "date-time"
|
|
1115
|
-
},
|
|
1116
|
-
"updated_at": {
|
|
1117
|
-
"type": "string",
|
|
1118
|
-
"format": "date-time"
|
|
1119
|
-
},
|
|
1120
|
-
"created_by": {
|
|
1121
|
-
"type": "string"
|
|
1122
|
-
},
|
|
1123
|
-
"org_id": {
|
|
1124
|
-
"type": "string"
|
|
1125
|
-
},
|
|
1126
|
-
"updated_by": {
|
|
1127
|
-
"type": "string"
|
|
1128
|
-
},
|
|
1129
|
-
"shared_with": {
|
|
1130
|
-
"type": "array",
|
|
1131
|
-
"items": {
|
|
1132
|
-
"type": "string"
|
|
1133
|
-
}
|
|
1134
|
-
},
|
|
1135
|
-
"shared_with_org": {
|
|
1136
|
-
"type": "boolean"
|
|
1137
|
-
},
|
|
1138
|
-
"owners": {
|
|
1139
|
-
"type": "array",
|
|
1140
|
-
"items": {
|
|
1141
|
-
"type": "string"
|
|
1142
|
-
},
|
|
1143
|
-
"description": "Array of user IDs who have full ownership rights for this board (view, edit, delete)"
|
|
1144
|
-
}
|
|
1145
|
-
}
|
|
1146
|
-
},
|
|
1147
|
-
"Board": {
|
|
1148
|
-
"description": "Full representation of a Kanban board, including swimlane layout, filter configuration, card display fields, and sorting options.",
|
|
1149
|
-
"allOf": [
|
|
1150
|
-
{
|
|
1151
|
-
"$ref": "#/components/schemas/BoardSummary"
|
|
1152
|
-
},
|
|
1153
|
-
{
|
|
1154
|
-
"type": "object",
|
|
1155
|
-
"properties": {
|
|
1156
|
-
"config": {
|
|
1157
|
-
"type": "object",
|
|
1158
|
-
"properties": {
|
|
1159
|
-
"dataset": {
|
|
1160
|
-
"type": "string",
|
|
1161
|
-
"example": "workflow_tasks_overview"
|
|
1162
|
-
},
|
|
1163
|
-
"swimlanes": {
|
|
1164
|
-
"type": "array",
|
|
1165
|
-
"items": {
|
|
1166
|
-
"$ref": "#/components/schemas/Swimlane"
|
|
1167
|
-
}
|
|
1168
|
-
},
|
|
1169
|
-
"card_config": {
|
|
1170
|
-
"type": "object",
|
|
1171
|
-
"properties": {
|
|
1172
|
-
"fields": {
|
|
1173
|
-
"type": "array",
|
|
1174
|
-
"items": {
|
|
1175
|
-
"type": "string",
|
|
1176
|
-
"example": "assignee"
|
|
1177
|
-
}
|
|
1178
|
-
}
|
|
1179
|
-
}
|
|
1180
|
-
},
|
|
1181
|
-
"board_filter": {
|
|
1182
|
-
"$ref": "#/components/schemas/BoardFilter"
|
|
1183
|
-
},
|
|
1184
|
-
"sorting": {
|
|
1185
|
-
"$ref": "#/components/schemas/Sorting"
|
|
1186
|
-
},
|
|
1187
|
-
"group_by": {
|
|
1188
|
-
"$ref": "#/components/schemas/GroupBy"
|
|
1189
|
-
},
|
|
1190
|
-
"search_query": {
|
|
1191
|
-
"type": "string",
|
|
1192
|
-
"example": "task 1"
|
|
1193
|
-
}
|
|
1194
|
-
}
|
|
1195
|
-
}
|
|
1196
|
-
},
|
|
1197
|
-
"required": [
|
|
1198
|
-
"title",
|
|
1199
|
-
"config"
|
|
1200
|
-
]
|
|
1201
|
-
}
|
|
1202
|
-
]
|
|
1203
|
-
},
|
|
1204
|
-
"Swimlane": {
|
|
1205
|
-
"type": "object",
|
|
1206
|
-
"description": "A vertical column in a Kanban board that groups workflow tasks or entities matching its filter criteria. Each swimlane has an independent filter and a display position.",
|
|
1207
|
-
"properties": {
|
|
1208
|
-
"id": {
|
|
1209
|
-
"type": "string"
|
|
1210
|
-
},
|
|
1211
|
-
"title": {
|
|
1212
|
-
"type": "string",
|
|
1213
|
-
"example": "Swimlane 1"
|
|
1214
|
-
},
|
|
1215
|
-
"position": {
|
|
1216
|
-
"type": "number",
|
|
1217
|
-
"example": 1
|
|
1218
|
-
},
|
|
1219
|
-
"filter": {
|
|
1220
|
-
"$ref": "#/components/schemas/BoardFilter"
|
|
1221
|
-
},
|
|
1222
|
-
"title_chip_variant": {
|
|
1223
|
-
"type": "string",
|
|
1224
|
-
"example": "success"
|
|
1225
|
-
}
|
|
1226
|
-
}
|
|
1227
|
-
},
|
|
1228
|
-
"Sorting": {
|
|
1229
|
-
"type": "object",
|
|
1230
|
-
"description": "Defines how query results should be sorted. Specify a field name and sort direction.",
|
|
1231
|
-
"properties": {
|
|
1232
|
-
"field": {
|
|
1233
|
-
"type": "string",
|
|
1234
|
-
"example": "created_at"
|
|
1235
|
-
},
|
|
1236
|
-
"direction": {
|
|
1237
|
-
"type": "string",
|
|
1238
|
-
"enum": [
|
|
1239
|
-
"asc",
|
|
1240
|
-
"desc"
|
|
1241
|
-
],
|
|
1242
|
-
"default": "asc"
|
|
1243
|
-
}
|
|
1244
|
-
},
|
|
1245
|
-
"required": [
|
|
1246
|
-
"field"
|
|
1247
|
-
]
|
|
1248
|
-
},
|
|
1249
|
-
"GroupBy": {
|
|
1250
|
-
"type": "object",
|
|
1251
|
-
"description": "Defines how tasks should be grouped within each swimlane. Tasks with the same group value are returned adjacently in the result set.",
|
|
1252
|
-
"required": [
|
|
1253
|
-
"field"
|
|
1254
|
-
],
|
|
1255
|
-
"properties": {
|
|
1256
|
-
"field": {
|
|
1257
|
-
"type": "string",
|
|
1258
|
-
"enum": [
|
|
1259
|
-
"context_entity",
|
|
1260
|
-
"phase"
|
|
1261
|
-
],
|
|
1262
|
-
"description": "Property to group tasks by within each swimlane"
|
|
1263
|
-
}
|
|
1264
|
-
}
|
|
1265
|
-
},
|
|
1266
|
-
"BoardFilter": {
|
|
1267
|
-
"type": "object",
|
|
1268
|
-
"description": "A filter group containing one or more filter items or nested filter groups. Items are combined using the specified logical operator (AND/OR).",
|
|
1269
|
-
"properties": {
|
|
1270
|
-
"items": {
|
|
1271
|
-
"type": "array",
|
|
1272
|
-
"items": {
|
|
1273
|
-
"oneOf": [
|
|
1274
|
-
{
|
|
1275
|
-
"$ref": "#/components/schemas/FilterItem"
|
|
1276
|
-
},
|
|
1277
|
-
{
|
|
1278
|
-
"$ref": "#/components/schemas/FilterGroup"
|
|
1279
|
-
}
|
|
1280
|
-
]
|
|
1281
|
-
}
|
|
1282
|
-
},
|
|
1283
|
-
"combination": {
|
|
1284
|
-
"type": "string",
|
|
1285
|
-
"enum": [
|
|
1286
|
-
"AND",
|
|
1287
|
-
"OR"
|
|
1288
|
-
],
|
|
1289
|
-
"example": "OR"
|
|
1290
|
-
}
|
|
1291
|
-
},
|
|
1292
|
-
"required": [
|
|
1293
|
-
"items",
|
|
1294
|
-
"combination"
|
|
1295
|
-
]
|
|
1296
|
-
},
|
|
1297
|
-
"FilterGroup": {
|
|
1298
|
-
"type": "object",
|
|
1299
|
-
"properties": {
|
|
1300
|
-
"items": {
|
|
1301
|
-
"type": "array",
|
|
1302
|
-
"items": {
|
|
1303
|
-
"$ref": "#/components/schemas/FilterItem"
|
|
1304
|
-
}
|
|
1305
|
-
},
|
|
1306
|
-
"combination": {
|
|
1307
|
-
"type": "string",
|
|
1308
|
-
"enum": [
|
|
1309
|
-
"AND",
|
|
1310
|
-
"OR"
|
|
1311
|
-
],
|
|
1312
|
-
"example": "AND"
|
|
1313
|
-
}
|
|
1314
|
-
},
|
|
1315
|
-
"required": [
|
|
1316
|
-
"items",
|
|
1317
|
-
"combination"
|
|
1318
|
-
]
|
|
1319
|
-
},
|
|
1320
|
-
"FilterOperator": {
|
|
1321
|
-
"type": "string",
|
|
1322
|
-
"enum": [
|
|
1323
|
-
"EQUALS",
|
|
1324
|
-
"NOT_EQUALS",
|
|
1325
|
-
"EMPTY",
|
|
1326
|
-
"NOT_EMPTY",
|
|
1327
|
-
"CONTAINS",
|
|
1328
|
-
"NOT_CONTAINS",
|
|
1329
|
-
"IS_ONE_OF",
|
|
1330
|
-
"IS_NONE_OF",
|
|
1331
|
-
"GREATER_THAN",
|
|
1332
|
-
"LESS_THAN",
|
|
1333
|
-
"GREATER_THAN_OR_EQUAL",
|
|
1334
|
-
"LESS_THAN_OR_EQUAL"
|
|
1335
|
-
],
|
|
1336
|
-
"example": "EQUALS",
|
|
1337
|
-
"description": "The comparison operator for filtering"
|
|
1338
|
-
},
|
|
1339
|
-
"DynamicDateValue": {
|
|
1340
|
-
"type": "string",
|
|
1341
|
-
"enum": [
|
|
1342
|
-
"TODAY",
|
|
1343
|
-
"TOMORROW",
|
|
1344
|
-
"YESTERDAY",
|
|
1345
|
-
"IN_THE_FUTURE",
|
|
1346
|
-
"IN_THE_PAST",
|
|
1347
|
-
"THIS_WEEK",
|
|
1348
|
-
"NEXT_WEEK",
|
|
1349
|
-
"LAST_WEEK",
|
|
1350
|
-
"THIS_MONTH",
|
|
1351
|
-
"NEXT_MONTH",
|
|
1352
|
-
"LAST_MONTH",
|
|
1353
|
-
"TODAY_OR_EARLIER"
|
|
1354
|
-
],
|
|
1355
|
-
"description": "Dynamic date keywords that resolve to actual dates at runtime"
|
|
1356
|
-
},
|
|
1357
|
-
"ValueType": {
|
|
1358
|
-
"anyOf": [
|
|
1359
|
-
{
|
|
1360
|
-
"type": "string",
|
|
1361
|
-
"example": "100020"
|
|
1362
|
-
},
|
|
1363
|
-
{
|
|
1364
|
-
"$ref": "#/components/schemas/DynamicDateValue"
|
|
1365
|
-
},
|
|
1366
|
-
{
|
|
1367
|
-
"type": "number",
|
|
1368
|
-
"example": 42
|
|
1369
|
-
},
|
|
1370
|
-
{
|
|
1371
|
-
"type": "boolean",
|
|
1372
|
-
"example": true
|
|
1373
|
-
},
|
|
1374
|
-
{
|
|
1375
|
-
"type": "array",
|
|
1376
|
-
"items": {
|
|
1377
|
-
"anyOf": [
|
|
1378
|
-
{
|
|
1379
|
-
"type": "string"
|
|
1380
|
-
},
|
|
1381
|
-
{
|
|
1382
|
-
"$ref": "#/components/schemas/DynamicDateValue"
|
|
1383
|
-
},
|
|
1384
|
-
{
|
|
1385
|
-
"type": "number"
|
|
1386
|
-
},
|
|
1387
|
-
{
|
|
1388
|
-
"type": "boolean"
|
|
1389
|
-
}
|
|
1390
|
-
]
|
|
1391
|
-
},
|
|
1392
|
-
"example": [
|
|
1393
|
-
"value1",
|
|
1394
|
-
"value2",
|
|
1395
|
-
123,
|
|
1396
|
-
true
|
|
1397
|
-
]
|
|
1398
|
-
}
|
|
1399
|
-
],
|
|
1400
|
-
"description": "The value to compare against - can be a single value (string, number, boolean, or dynamic date) or an array of values"
|
|
1401
|
-
},
|
|
1402
|
-
"FlowsQueryRequest": {
|
|
1403
|
-
"type": "object",
|
|
1404
|
-
"description": "Request payload for executing a query against the Flows dataset. Supports filter conditions, sorting, grouping, and offset-based pagination.",
|
|
1405
|
-
"properties": {
|
|
1406
|
-
"filters": {
|
|
1407
|
-
"$ref": "#/components/schemas/BoardFilter",
|
|
1408
|
-
"description": "Optional filter conditions to narrow the result set using AND/OR logic."
|
|
1409
|
-
},
|
|
1410
|
-
"sorting": {
|
|
1411
|
-
"$ref": "#/components/schemas/Sorting",
|
|
1412
|
-
"description": "Sort the results by a specific field and direction."
|
|
1413
|
-
},
|
|
1414
|
-
"group_by": {
|
|
1415
|
-
"$ref": "#/components/schemas/GroupBy",
|
|
1416
|
-
"description": "Group tasks by a shared property within each swimlane. Grouped tasks are returned adjacently in the result set."
|
|
1417
|
-
},
|
|
1418
|
-
"from": {
|
|
1419
|
-
"type": "number",
|
|
1420
|
-
"default": 0,
|
|
1421
|
-
"description": "Zero-based offset for pagination. Use with `size` to paginate through results.",
|
|
1422
|
-
"example": 0
|
|
1423
|
-
},
|
|
1424
|
-
"size": {
|
|
1425
|
-
"type": "number",
|
|
1426
|
-
"default": 10,
|
|
1427
|
-
"description": "Number of results to return per page.",
|
|
1428
|
-
"example": 10
|
|
1429
|
-
}
|
|
1430
|
-
}
|
|
1431
|
-
},
|
|
1432
|
-
"FlowsQueryResult": {
|
|
1433
|
-
"type": "object",
|
|
1434
|
-
"description": "Paginated result set returned from a Flows query. Each item in `results` is a workflow task record with dynamic fields depending on the dataset configuration.",
|
|
1435
|
-
"properties": {
|
|
1436
|
-
"results": {
|
|
1437
|
-
"type": "array",
|
|
1438
|
-
"description": "Array of matching workflow task records. Fields vary based on the dataset and card configuration.",
|
|
1439
|
-
"items": {
|
|
1440
|
-
"type": "object",
|
|
1441
|
-
"additionalProperties": true
|
|
1442
|
-
}
|
|
1443
|
-
},
|
|
1444
|
-
"hits": {
|
|
1445
|
-
"type": "number",
|
|
1446
|
-
"description": "Total number of records matching the query (across all pages).",
|
|
1447
|
-
"example": 42
|
|
1448
|
-
},
|
|
1449
|
-
"page_number": {
|
|
1450
|
-
"type": "number",
|
|
1451
|
-
"description": "Current page number (1-based).",
|
|
1452
|
-
"example": 1
|
|
1453
|
-
},
|
|
1454
|
-
"page_size": {
|
|
1455
|
-
"type": "number",
|
|
1456
|
-
"description": "Number of results per page (matches the `size` request parameter).",
|
|
1457
|
-
"example": 10
|
|
1458
|
-
},
|
|
1459
|
-
"total_pages": {
|
|
1460
|
-
"type": "number",
|
|
1461
|
-
"description": "Total number of available pages based on `hits` and `page_size`.",
|
|
1462
|
-
"example": 5
|
|
1463
|
-
}
|
|
1464
|
-
},
|
|
1465
|
-
"additionalProperties": true
|
|
1466
|
-
},
|
|
1467
|
-
"FilterItem": {
|
|
1468
|
-
"type": "object",
|
|
1469
|
-
"properties": {
|
|
1470
|
-
"key": {
|
|
1471
|
-
"type": "string",
|
|
1472
|
-
"example": "assignee",
|
|
1473
|
-
"description": "The field key to filter on"
|
|
1474
|
-
},
|
|
1475
|
-
"operator": {
|
|
1476
|
-
"$ref": "#/components/schemas/FilterOperator"
|
|
1477
|
-
},
|
|
1478
|
-
"value": {
|
|
1479
|
-
"$ref": "#/components/schemas/ValueType"
|
|
1480
|
-
},
|
|
1481
|
-
"data_type": {
|
|
1482
|
-
"type": "string",
|
|
1483
|
-
"enum": [
|
|
1484
|
-
"string",
|
|
1485
|
-
"number",
|
|
1486
|
-
"boolean",
|
|
1487
|
-
"date"
|
|
1488
|
-
],
|
|
1489
|
-
"example": "string",
|
|
1490
|
-
"description": "The data type of the field"
|
|
1491
|
-
}
|
|
1492
|
-
},
|
|
1493
|
-
"required": [
|
|
1494
|
-
"key",
|
|
1495
|
-
"operator"
|
|
1496
|
-
]
|
|
1497
|
-
}
|
|
1498
|
-
}
|
|
1499
|
-
},
|
|
1500
|
-
"servers": [
|
|
1501
|
-
{
|
|
1502
|
-
"url": "https://kanban.sls.epilot.io"
|
|
1503
|
-
}
|
|
1504
|
-
]
|
|
1505
|
-
}
|