@epilot/sdk 2.0.0-beta.6 → 2.0.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.
Files changed (134) hide show
  1. package/LICENSE +21 -0
  2. package/dist/apis/automation.d.cts +2 -2
  3. package/dist/apis/automation.d.ts +2 -2
  4. package/dist/apis/customer-portal.cjs +1 -1
  5. package/dist/apis/customer-portal.d.cts +2 -2
  6. package/dist/apis/customer-portal.d.ts +2 -2
  7. package/dist/apis/customer-portal.js +1 -1
  8. package/dist/apis/erp-integration.cjs +1 -1
  9. package/dist/apis/erp-integration.d.cts +2 -2
  10. package/dist/apis/erp-integration.d.ts +2 -2
  11. package/dist/apis/erp-integration.js +1 -1
  12. package/dist/apis/journey.d.cts +2 -2
  13. package/dist/apis/journey.d.ts +2 -2
  14. package/dist/apis/kanban.d.cts +2 -2
  15. package/dist/apis/kanban.d.ts +2 -2
  16. package/dist/apis/organization.cjs +1 -1
  17. package/dist/apis/organization.d.cts +2 -2
  18. package/dist/apis/organization.d.ts +2 -2
  19. package/dist/apis/organization.js +1 -1
  20. package/dist/apis/workflow.d.cts +2 -2
  21. package/dist/apis/workflow.d.ts +2 -2
  22. package/dist/{automation.d-sRCRiHKf.d.cts → automation.d-KOiZ6ru5.d.cts} +2 -24
  23. package/dist/{automation.d-sRCRiHKf.d.ts → automation.d-KOiZ6ru5.d.ts} +2 -24
  24. package/dist/{customer-portal.d-D7cJvhBK.d.ts → customer-portal.d-Bh9NF8cY.d.cts} +598 -99
  25. package/dist/{customer-portal.d-D7cJvhBK.d.cts → customer-portal.d-Bh9NF8cY.d.ts} +598 -99
  26. package/dist/{erp-integration.d-3LmxMirP.d.cts → erp-integration.d-DOhxy4P5.d.cts} +409 -15
  27. package/dist/{erp-integration.d-3LmxMirP.d.ts → erp-integration.d-DOhxy4P5.d.ts} +409 -15
  28. package/dist/index.d.cts +7 -7
  29. package/dist/index.d.ts +7 -7
  30. package/dist/{journey.d-DkBvO_Wa.d.ts → journey.d-C4N4t1Rh.d.cts} +122 -4
  31. package/dist/{journey.d-DkBvO_Wa.d.cts → journey.d-C4N4t1Rh.d.ts} +122 -4
  32. package/dist/kanban.d-CtSt3uX2.d.cts +745 -0
  33. package/dist/kanban.d-CtSt3uX2.d.ts +745 -0
  34. package/dist/organization.d-Bd2Hmk8v.d.cts +1244 -0
  35. package/dist/organization.d-Bd2Hmk8v.d.ts +1244 -0
  36. package/dist/{workflow.d-EPa2OdVW.d.cts → workflow.d-DvhTpEtU.d.cts} +45 -3
  37. package/dist/{workflow.d-EPa2OdVW.d.ts → workflow.d-DvhTpEtU.d.ts} +45 -3
  38. package/package.json +10 -11
  39. package/definitions/access-token-runtime.json +0 -1
  40. package/definitions/access-token.json +0 -663
  41. package/definitions/address-runtime.json +0 -1
  42. package/definitions/address-suggestions-runtime.json +0 -1
  43. package/definitions/address-suggestions.json +0 -582
  44. package/definitions/address.json +0 -578
  45. package/definitions/ai-agents-runtime.json +0 -1
  46. package/definitions/ai-agents.json +0 -1711
  47. package/definitions/app-runtime.json +0 -1
  48. package/definitions/app.json +0 -4443
  49. package/definitions/audit-logs-runtime.json +0 -1
  50. package/definitions/audit-logs.json +0 -305
  51. package/definitions/automation-runtime.json +0 -1
  52. package/definitions/automation.json +0 -4850
  53. package/definitions/billing-runtime.json +0 -1
  54. package/definitions/billing.json +0 -837
  55. package/definitions/blueprint-manifest-runtime.json +0 -1
  56. package/definitions/blueprint-manifest.json +0 -3376
  57. package/definitions/consent-runtime.json +0 -1
  58. package/definitions/consent.json +0 -344
  59. package/definitions/customer-portal-runtime.json +0 -1
  60. package/definitions/customer-portal.json +0 -15000
  61. package/definitions/dashboard-runtime.json +0 -1
  62. package/definitions/dashboard.json +0 -484
  63. package/definitions/data-management-runtime.json +0 -1
  64. package/definitions/data-management.json +0 -962
  65. package/definitions/deduplication-runtime.json +0 -1
  66. package/definitions/deduplication.json +0 -183
  67. package/definitions/design-runtime.json +0 -1
  68. package/definitions/design.json +0 -1423
  69. package/definitions/document-runtime.json +0 -1
  70. package/definitions/document.json +0 -758
  71. package/definitions/email-settings-runtime.json +0 -1
  72. package/definitions/email-settings.json +0 -2627
  73. package/definitions/email-template-runtime.json +0 -1
  74. package/definitions/email-template.json +0 -1419
  75. package/definitions/entity-mapping-runtime.json +0 -1
  76. package/definitions/entity-mapping.json +0 -1642
  77. package/definitions/entity-runtime.json +0 -1
  78. package/definitions/entity.json +0 -10074
  79. package/definitions/environments-runtime.json +0 -1
  80. package/definitions/environments.json +0 -363
  81. package/definitions/erp-integration-runtime.json +0 -1
  82. package/definitions/erp-integration.json +0 -5845
  83. package/definitions/event-catalog-runtime.json +0 -1
  84. package/definitions/event-catalog.json +0 -1051
  85. package/definitions/file-runtime.json +0 -1
  86. package/definitions/file.json +0 -2842
  87. package/definitions/iban-runtime.json +0 -1
  88. package/definitions/iban.json +0 -132
  89. package/definitions/journey-runtime.json +0 -1
  90. package/definitions/journey.json +0 -2341
  91. package/definitions/kanban-runtime.json +0 -1
  92. package/definitions/kanban.json +0 -929
  93. package/definitions/message-runtime.json +0 -1
  94. package/definitions/message.json +0 -2660
  95. package/definitions/metering-runtime.json +0 -1
  96. package/definitions/metering.json +0 -2321
  97. package/definitions/notes-runtime.json +0 -1
  98. package/definitions/notes.json +0 -1531
  99. package/definitions/notification-runtime.json +0 -1
  100. package/definitions/notification.json +0 -1425
  101. package/definitions/organization-runtime.json +0 -1
  102. package/definitions/organization.json +0 -629
  103. package/definitions/partner-directory-runtime.json +0 -1
  104. package/definitions/partner-directory.json +0 -1718
  105. package/definitions/permissions-runtime.json +0 -1
  106. package/definitions/permissions.json +0 -1480
  107. package/definitions/pricing-runtime.json +0 -1
  108. package/definitions/pricing-tier-runtime.json +0 -1
  109. package/definitions/pricing-tier.json +0 -105
  110. package/definitions/pricing.json +0 -9884
  111. package/definitions/purpose-runtime.json +0 -1
  112. package/definitions/purpose.json +0 -524
  113. package/definitions/sandbox-runtime.json +0 -1
  114. package/definitions/sandbox.json +0 -453
  115. package/definitions/submission-runtime.json +0 -1
  116. package/definitions/submission.json +0 -313
  117. package/definitions/targeting-runtime.json +0 -1
  118. package/definitions/targeting.json +0 -1474
  119. package/definitions/template-variables-runtime.json +0 -1
  120. package/definitions/template-variables.json +0 -1408
  121. package/definitions/user-runtime.json +0 -1
  122. package/definitions/user.json +0 -2408
  123. package/definitions/validation-rules-runtime.json +0 -1
  124. package/definitions/validation-rules.json +0 -1491
  125. package/definitions/webhooks-runtime.json +0 -1
  126. package/definitions/webhooks.json +0 -1525
  127. package/definitions/workflow-definition-runtime.json +0 -1
  128. package/definitions/workflow-definition.json +0 -3417
  129. package/definitions/workflow-runtime.json +0 -1
  130. package/definitions/workflow.json +0 -4106
  131. package/dist/kanban.d-DUClxyBG.d.cts +0 -630
  132. package/dist/kanban.d-DUClxyBG.d.ts +0 -630
  133. package/dist/organization.d-BOLK3v9o.d.cts +0 -628
  134. package/dist/organization.d-BOLK3v9o.d.ts +0 -628
@@ -1,1425 +0,0 @@
1
- {
2
- "openapi": "3.0.3",
3
- "info": {
4
- "title": "Notification API",
5
- "version": "1.7.0",
6
- "description": "Notification API for epilot 360"
7
- },
8
- "security": [
9
- {
10
- "EpilotAuth": []
11
- },
12
- {
13
- "EpilotOrg": []
14
- }
15
- ],
16
- "tags": [
17
- {
18
- "name": "Notification",
19
- "description": "Notification"
20
- },
21
- {
22
- "name": "Template",
23
- "description": "Notification Template"
24
- }
25
- ],
26
- "paths": {
27
- "/v2/notification/notifications": {
28
- "get": {
29
- "operationId": "getNotificationsV2",
30
- "summary": "getNotificationsV2",
31
- "description": "Get notifications items. These items may eventually contain entities within their payload, which can be hydrated by the client if desired by calling the Entity API directly.",
32
- "tags": [
33
- "Notification"
34
- ],
35
- "parameters": [
36
- {
37
- "in": "query",
38
- "name": "cursor",
39
- "schema": {
40
- "type": "string"
41
- },
42
- "required": false,
43
- "description": "Base64 encoded cursor to be used for pagination"
44
- },
45
- {
46
- "in": "query",
47
- "name": "after_id",
48
- "schema": {
49
- "type": "integer"
50
- }
51
- },
52
- {
53
- "in": "query",
54
- "name": "limit",
55
- "schema": {
56
- "type": "integer"
57
- },
58
- "description": "The numbers of items to return"
59
- }
60
- ],
61
- "responses": {
62
- "200": {
63
- "description": "Success",
64
- "content": {
65
- "application/json": {
66
- "schema": {
67
- "type": "object",
68
- "properties": {
69
- "cursor": {
70
- "type": "string",
71
- "example": "eyJjcmVhd",
72
- "description": "Base64 encoded cursor to be used for pagination"
73
- },
74
- "total": {
75
- "type": "integer",
76
- "example": 1
77
- },
78
- "total_unread": {
79
- "type": "integer",
80
- "example": 1
81
- },
82
- "results": {
83
- "type": "array",
84
- "items": {
85
- "$ref": "#/components/schemas/NotificationItem"
86
- }
87
- }
88
- }
89
- }
90
- }
91
- }
92
- }
93
- }
94
- }
95
- },
96
- "/v1/notification/notifications": {
97
- "post": {
98
- "operationId": "createNotification",
99
- "summary": "createNotification",
100
- "description": "Create a message that can be displayed in the notification panel.",
101
- "tags": [
102
- "Notification"
103
- ],
104
- "requestBody": {
105
- "content": {
106
- "application/json": {
107
- "schema": {
108
- "$ref": "#/components/schemas/Notification"
109
- }
110
- }
111
- }
112
- },
113
- "responses": {
114
- "202": {
115
- "description": "Success"
116
- }
117
- }
118
- },
119
- "get": {
120
- "operationId": "getNotifications",
121
- "summary": "getNotifications",
122
- "description": "Get notifications",
123
- "tags": [
124
- "Notification"
125
- ],
126
- "parameters": [
127
- {
128
- "in": "query",
129
- "name": "after_id",
130
- "schema": {
131
- "type": "integer"
132
- }
133
- },
134
- {
135
- "in": "query",
136
- "name": "limit",
137
- "schema": {
138
- "type": "integer"
139
- },
140
- "description": "The numbers of items to return"
141
- },
142
- {
143
- "in": "query",
144
- "name": "no_hydrate",
145
- "schema": {
146
- "type": "boolean"
147
- },
148
- "description": "When true, the payload will not be hydrated with the entity data. This is useful when the client does not need the entity data and wants to save on API calls (performance gain). When false, the payload will be hydrated with the entity data. This is useful when the client needs the entity data to display the notification (e.g. to show the name of the contact in the notification message), but can have a significative performance impact.\n\nThis endpoint will eventually be deprecated in favor of GET /v2/notification/notifications which no longer hydrates the payload by default.\n"
149
- }
150
- ],
151
- "responses": {
152
- "200": {
153
- "description": "Success",
154
- "content": {
155
- "application/json": {
156
- "schema": {
157
- "type": "object",
158
- "properties": {
159
- "total": {
160
- "type": "integer",
161
- "example": 1
162
- },
163
- "total_unread": {
164
- "type": "integer",
165
- "example": 1
166
- },
167
- "results": {
168
- "type": "array",
169
- "items": {
170
- "$ref": "#/components/schemas/NotificationItem"
171
- }
172
- }
173
- }
174
- }
175
- }
176
- }
177
- }
178
- }
179
- }
180
- },
181
- "/v1/notification/notifications/{id}": {
182
- "get": {
183
- "operationId": "getNotification",
184
- "summary": "getNotification",
185
- "description": "Get the details of a single notification.",
186
- "tags": [
187
- "Notification"
188
- ],
189
- "parameters": [
190
- {
191
- "in": "path",
192
- "name": "id",
193
- "description": "Notification Id",
194
- "required": true,
195
- "schema": {
196
- "type": "number"
197
- }
198
- }
199
- ],
200
- "responses": {
201
- "200": {
202
- "description": "Success",
203
- "content": {
204
- "application/json": {
205
- "schema": {
206
- "$ref": "#/components/schemas/NotificationItem"
207
- }
208
- }
209
- }
210
- }
211
- }
212
- }
213
- },
214
- "/v1/notification/notifications/mark": {
215
- "put": {
216
- "operationId": "markAllAsRead",
217
- "summary": "markAllAsRead",
218
- "description": "Mark all as read",
219
- "tags": [
220
- "Notification"
221
- ],
222
- "responses": {
223
- "204": {
224
- "description": "ok"
225
- }
226
- }
227
- }
228
- },
229
- "/v1/notification/notifications/{id}/mark": {
230
- "put": {
231
- "operationId": "markAsRead",
232
- "summary": "markAsRead",
233
- "description": "Mark as read",
234
- "parameters": [
235
- {
236
- "in": "path",
237
- "name": "id",
238
- "schema": {
239
- "type": "integer"
240
- },
241
- "required": true,
242
- "description": "Numeric ID of the notification to mark as read"
243
- }
244
- ],
245
- "tags": [
246
- "Notification"
247
- ],
248
- "responses": {
249
- "204": {
250
- "description": "Success"
251
- }
252
- }
253
- }
254
- },
255
- "/v1/notification/unreads": {
256
- "get": {
257
- "operationId": "getTotalUnread",
258
- "summary": "getTotalUnread",
259
- "description": "Get total unread",
260
- "tags": [
261
- "Notification"
262
- ],
263
- "responses": {
264
- "200": {
265
- "description": "Success",
266
- "content": {
267
- "text/plain": {
268
- "schema": {
269
- "type": "number",
270
- "example": 999
271
- }
272
- }
273
- }
274
- }
275
- }
276
- }
277
- },
278
- "/v1/notification/templates": {
279
- "get": {
280
- "operationId": "listNotificationTemplates",
281
- "summary": "listNotificationTemplates",
282
- "description": "List notification templates with optional filtering and pagination",
283
- "tags": [
284
- "Template"
285
- ],
286
- "parameters": [
287
- {
288
- "name": "q",
289
- "in": "query",
290
- "required": false,
291
- "description": "Lucene query string for filtering",
292
- "schema": {
293
- "type": "string"
294
- }
295
- },
296
- {
297
- "name": "from",
298
- "in": "query",
299
- "required": false,
300
- "description": "Pagination offset (0-based)",
301
- "schema": {
302
- "type": "integer",
303
- "minimum": 0,
304
- "default": 0
305
- }
306
- },
307
- {
308
- "name": "size",
309
- "in": "query",
310
- "required": false,
311
- "description": "Results per page",
312
- "schema": {
313
- "type": "integer",
314
- "minimum": 1,
315
- "maximum": 1000,
316
- "default": 25
317
- }
318
- },
319
- {
320
- "name": "sort",
321
- "in": "query",
322
- "required": false,
323
- "description": "Sort fields (prefix with - for descending)",
324
- "schema": {
325
- "type": "string"
326
- }
327
- },
328
- {
329
- "name": "fields",
330
- "in": "query",
331
- "required": false,
332
- "description": "Comma-separated fields to include",
333
- "schema": {
334
- "type": "string"
335
- }
336
- },
337
- {
338
- "name": "hydrate",
339
- "in": "query",
340
- "required": false,
341
- "description": "Resolve nested relations",
342
- "schema": {
343
- "type": "boolean",
344
- "default": false
345
- }
346
- }
347
- ],
348
- "responses": {
349
- "200": {
350
- "description": "Success",
351
- "content": {
352
- "application/json": {
353
- "schema": {
354
- "$ref": "#/components/schemas/NotificationTemplateListResponse"
355
- }
356
- }
357
- }
358
- },
359
- "401": {
360
- "description": "Unauthorized",
361
- "content": {
362
- "application/json": {
363
- "schema": {
364
- "$ref": "#/components/schemas/Error"
365
- }
366
- }
367
- }
368
- },
369
- "500": {
370
- "description": "Internal Server Error",
371
- "content": {
372
- "application/json": {
373
- "schema": {
374
- "$ref": "#/components/schemas/Error"
375
- }
376
- }
377
- }
378
- }
379
- }
380
- },
381
- "post": {
382
- "operationId": "createNotificationTemplate",
383
- "summary": "createNotificationTemplate",
384
- "description": "Create a new notification template",
385
- "tags": [
386
- "Template"
387
- ],
388
- "requestBody": {
389
- "required": true,
390
- "content": {
391
- "application/json": {
392
- "schema": {
393
- "$ref": "#/components/schemas/CreateNotificationTemplateInput"
394
- }
395
- }
396
- }
397
- },
398
- "responses": {
399
- "201": {
400
- "description": "Created",
401
- "content": {
402
- "application/json": {
403
- "schema": {
404
- "$ref": "#/components/schemas/NotificationTemplate"
405
- }
406
- }
407
- }
408
- },
409
- "400": {
410
- "description": "Bad Request",
411
- "content": {
412
- "application/json": {
413
- "schema": {
414
- "$ref": "#/components/schemas/Error"
415
- }
416
- }
417
- }
418
- },
419
- "401": {
420
- "description": "Unauthorized",
421
- "content": {
422
- "application/json": {
423
- "schema": {
424
- "$ref": "#/components/schemas/Error"
425
- }
426
- }
427
- }
428
- },
429
- "500": {
430
- "description": "Internal Server Error",
431
- "content": {
432
- "application/json": {
433
- "schema": {
434
- "$ref": "#/components/schemas/Error"
435
- }
436
- }
437
- }
438
- }
439
- }
440
- }
441
- },
442
- "/v1/notification/templates/{id}": {
443
- "get": {
444
- "operationId": "getNotificationTemplate",
445
- "summary": "getNotificationTemplate",
446
- "description": "Get a single notification template by ID",
447
- "tags": [
448
- "Template"
449
- ],
450
- "parameters": [
451
- {
452
- "$ref": "#/components/parameters/TemplateIdPathParam"
453
- }
454
- ],
455
- "responses": {
456
- "200": {
457
- "description": "Success",
458
- "content": {
459
- "application/json": {
460
- "schema": {
461
- "$ref": "#/components/schemas/NotificationTemplate"
462
- }
463
- }
464
- }
465
- },
466
- "401": {
467
- "description": "Unauthorized",
468
- "content": {
469
- "application/json": {
470
- "schema": {
471
- "$ref": "#/components/schemas/Error"
472
- }
473
- }
474
- }
475
- },
476
- "404": {
477
- "description": "Not Found",
478
- "content": {
479
- "application/json": {
480
- "schema": {
481
- "$ref": "#/components/schemas/Error"
482
- }
483
- }
484
- }
485
- },
486
- "500": {
487
- "description": "Internal Server Error",
488
- "content": {
489
- "application/json": {
490
- "schema": {
491
- "$ref": "#/components/schemas/Error"
492
- }
493
- }
494
- }
495
- }
496
- }
497
- },
498
- "put": {
499
- "operationId": "updateNotificationTemplate",
500
- "summary": "updateNotificationTemplate",
501
- "description": "Update a notification template (full replacement)",
502
- "tags": [
503
- "Template"
504
- ],
505
- "parameters": [
506
- {
507
- "$ref": "#/components/parameters/TemplateIdPathParam"
508
- }
509
- ],
510
- "requestBody": {
511
- "required": true,
512
- "content": {
513
- "application/json": {
514
- "schema": {
515
- "$ref": "#/components/schemas/UpdateNotificationTemplateInput"
516
- }
517
- }
518
- }
519
- },
520
- "responses": {
521
- "200": {
522
- "description": "Success",
523
- "content": {
524
- "application/json": {
525
- "schema": {
526
- "$ref": "#/components/schemas/NotificationTemplate"
527
- }
528
- }
529
- }
530
- },
531
- "400": {
532
- "description": "Bad Request",
533
- "content": {
534
- "application/json": {
535
- "schema": {
536
- "$ref": "#/components/schemas/Error"
537
- }
538
- }
539
- }
540
- },
541
- "401": {
542
- "description": "Unauthorized",
543
- "content": {
544
- "application/json": {
545
- "schema": {
546
- "$ref": "#/components/schemas/Error"
547
- }
548
- }
549
- }
550
- },
551
- "404": {
552
- "description": "Not Found",
553
- "content": {
554
- "application/json": {
555
- "schema": {
556
- "$ref": "#/components/schemas/Error"
557
- }
558
- }
559
- }
560
- },
561
- "500": {
562
- "description": "Internal Server Error",
563
- "content": {
564
- "application/json": {
565
- "schema": {
566
- "$ref": "#/components/schemas/Error"
567
- }
568
- }
569
- }
570
- }
571
- }
572
- },
573
- "patch": {
574
- "operationId": "patchNotificationTemplate",
575
- "summary": "patchNotificationTemplate",
576
- "description": "Partially update a notification template",
577
- "tags": [
578
- "Template"
579
- ],
580
- "parameters": [
581
- {
582
- "$ref": "#/components/parameters/TemplateIdPathParam"
583
- }
584
- ],
585
- "requestBody": {
586
- "required": true,
587
- "content": {
588
- "application/json": {
589
- "schema": {
590
- "$ref": "#/components/schemas/UpdateNotificationTemplateInput"
591
- }
592
- }
593
- }
594
- },
595
- "responses": {
596
- "200": {
597
- "description": "Success",
598
- "content": {
599
- "application/json": {
600
- "schema": {
601
- "$ref": "#/components/schemas/NotificationTemplate"
602
- }
603
- }
604
- }
605
- },
606
- "400": {
607
- "description": "Bad Request",
608
- "content": {
609
- "application/json": {
610
- "schema": {
611
- "$ref": "#/components/schemas/Error"
612
- }
613
- }
614
- }
615
- },
616
- "401": {
617
- "description": "Unauthorized",
618
- "content": {
619
- "application/json": {
620
- "schema": {
621
- "$ref": "#/components/schemas/Error"
622
- }
623
- }
624
- }
625
- },
626
- "404": {
627
- "description": "Not Found",
628
- "content": {
629
- "application/json": {
630
- "schema": {
631
- "$ref": "#/components/schemas/Error"
632
- }
633
- }
634
- }
635
- },
636
- "500": {
637
- "description": "Internal Server Error",
638
- "content": {
639
- "application/json": {
640
- "schema": {
641
- "$ref": "#/components/schemas/Error"
642
- }
643
- }
644
- }
645
- }
646
- }
647
- },
648
- "delete": {
649
- "operationId": "deleteNotificationTemplate",
650
- "summary": "deleteNotificationTemplate",
651
- "description": "Delete a notification template permanently",
652
- "tags": [
653
- "Template"
654
- ],
655
- "parameters": [
656
- {
657
- "$ref": "#/components/parameters/TemplateIdPathParam"
658
- }
659
- ],
660
- "responses": {
661
- "200": {
662
- "description": "Success",
663
- "content": {
664
- "application/json": {
665
- "schema": {
666
- "$ref": "#/components/schemas/NotificationTemplate"
667
- }
668
- }
669
- }
670
- },
671
- "401": {
672
- "description": "Unauthorized",
673
- "content": {
674
- "application/json": {
675
- "schema": {
676
- "$ref": "#/components/schemas/Error"
677
- }
678
- }
679
- }
680
- },
681
- "404": {
682
- "description": "Not Found",
683
- "content": {
684
- "application/json": {
685
- "schema": {
686
- "$ref": "#/components/schemas/Error"
687
- }
688
- }
689
- }
690
- },
691
- "500": {
692
- "description": "Internal Server Error",
693
- "content": {
694
- "application/json": {
695
- "schema": {
696
- "$ref": "#/components/schemas/Error"
697
- }
698
- }
699
- }
700
- }
701
- }
702
- }
703
- },
704
- "/v1/notification/templates/send-preview": {
705
- "post": {
706
- "operationId": "sendPreview",
707
- "summary": "sendPreview",
708
- "description": "Send a preview notification (both email and in-app) to the requesting user.\nUsed to test notification templates before saving.\n",
709
- "tags": [
710
- "Template"
711
- ],
712
- "requestBody": {
713
- "required": true,
714
- "content": {
715
- "application/json": {
716
- "schema": {
717
- "$ref": "#/components/schemas/SendPreviewInput"
718
- }
719
- }
720
- }
721
- },
722
- "responses": {
723
- "200": {
724
- "description": "Preview notification sent successfully",
725
- "content": {
726
- "application/json": {
727
- "schema": {
728
- "$ref": "#/components/schemas/SendPreviewResponse"
729
- }
730
- }
731
- }
732
- },
733
- "400": {
734
- "description": "Bad Request",
735
- "content": {
736
- "application/json": {
737
- "schema": {
738
- "$ref": "#/components/schemas/Error"
739
- }
740
- }
741
- }
742
- },
743
- "401": {
744
- "description": "Unauthorized",
745
- "content": {
746
- "application/json": {
747
- "schema": {
748
- "$ref": "#/components/schemas/Error"
749
- }
750
- }
751
- }
752
- },
753
- "500": {
754
- "description": "Internal Server Error",
755
- "content": {
756
- "application/json": {
757
- "schema": {
758
- "$ref": "#/components/schemas/Error"
759
- }
760
- }
761
- }
762
- }
763
- }
764
- }
765
- }
766
- },
767
- "components": {
768
- "securitySchemes": {
769
- "EpilotAuth": {
770
- "type": "http",
771
- "scheme": "bearer",
772
- "description": "Authorization header with epilot OAuth2 bearer token",
773
- "bearerFormat": "JWT"
774
- },
775
- "EpilotOrg": {
776
- "description": "Overrides the target organization to allow shared tenant access",
777
- "name": "x-epilot-org-id",
778
- "in": "header",
779
- "type": "apiKey"
780
- }
781
- },
782
- "parameters": {
783
- "TemplateIdPathParam": {
784
- "name": "id",
785
- "in": "path",
786
- "required": true,
787
- "description": "Template ID (UUID)",
788
- "schema": {
789
- "type": "string",
790
- "format": "uuid"
791
- }
792
- }
793
- },
794
- "schemas": {
795
- "Error": {
796
- "type": "object",
797
- "properties": {
798
- "message": {
799
- "type": "string",
800
- "description": "Error message"
801
- },
802
- "code": {
803
- "type": "string",
804
- "description": "Error code"
805
- }
806
- },
807
- "required": [
808
- "message"
809
- ]
810
- },
811
- "EntityOperation": {
812
- "type": "object",
813
- "properties": {
814
- "entity": {
815
- "$ref": "#/components/schemas/EntityId"
816
- },
817
- "operation": {
818
- "type": "string",
819
- "example": "updateEntity"
820
- },
821
- "params": {
822
- "type": "object",
823
- "properties": {
824
- "id": {
825
- "$ref": "#/components/schemas/EntityId"
826
- },
827
- "slug": {
828
- "$ref": "#/components/schemas/EntitySlug"
829
- }
830
- },
831
- "example": {
832
- "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
833
- "slug": "contact"
834
- }
835
- },
836
- "payload": {
837
- "allOf": [
838
- {
839
- "$ref": "#/components/schemas/Entity"
840
- },
841
- {
842
- "example": {
843
- "_schema": "contact",
844
- "_org": "123",
845
- "status": "Inactive"
846
- }
847
- }
848
- ]
849
- }
850
- },
851
- "required": [
852
- "entity",
853
- "name"
854
- ]
855
- },
856
- "NotificationItem": {
857
- "allOf": [
858
- {
859
- "type": "object",
860
- "properties": {
861
- "id": {
862
- "$ref": "#/components/schemas/Id"
863
- },
864
- "notification_id": {
865
- "$ref": "#/components/schemas/NotificationId"
866
- },
867
- "timestamp": {
868
- "type": "string",
869
- "format": "date-time"
870
- },
871
- "read_state": {
872
- "type": "boolean",
873
- "example": false
874
- }
875
- }
876
- },
877
- {
878
- "$ref": "#/components/schemas/NotificationBase"
879
- },
880
- {
881
- "type": "object",
882
- "properties": {
883
- "caller": {
884
- "$ref": "#/components/schemas/NotificationCallerContext"
885
- }
886
- }
887
- },
888
- {
889
- "type": "object",
890
- "properties": {
891
- "operations": {
892
- "type": "array",
893
- "items": {
894
- "$ref": "#/components/schemas/EntityOperation"
895
- }
896
- }
897
- }
898
- }
899
- ]
900
- },
901
- "Notification": {
902
- "allOf": [
903
- {
904
- "$ref": "#/components/schemas/NotificationBase"
905
- },
906
- {
907
- "type": "object",
908
- "properties": {
909
- "read_state": {
910
- "type": "boolean",
911
- "example": false
912
- },
913
- "visibility_user_ids": {
914
- "description": "The person who is the corresponding event recipient.",
915
- "type": "array",
916
- "items": {
917
- "type": "string"
918
- },
919
- "example": [
920
- "1",
921
- "2",
922
- "3",
923
- "4",
924
- "5"
925
- ]
926
- }
927
- }
928
- }
929
- ]
930
- },
931
- "NotificationBase": {
932
- "type": "object",
933
- "properties": {
934
- "notification_id": {
935
- "type": "number"
936
- },
937
- "timestamp": {
938
- "type": "string",
939
- "format": "date-time"
940
- },
941
- "type": {
942
- "description": "Type of notification",
943
- "type": "string",
944
- "example": "workflow"
945
- },
946
- "redirect_url": {
947
- "description": "Redirect url",
948
- "type": "string",
949
- "example": "https://epilot.cloud"
950
- },
951
- "organization_id": {
952
- "description": "Organization Id",
953
- "type": "string",
954
- "example": "206801"
955
- },
956
- "title": {
957
- "type": "object",
958
- "properties": {
959
- "en": {
960
- "type": "string",
961
- "description": "Title for notification. Supports handlebars syntax.",
962
- "example": "My custom notification"
963
- },
964
- "de": {
965
- "type": "string",
966
- "description": "Title for notification. Supports handlebars syntax.",
967
- "example": "Meine benutzerdefinierte Aktivität"
968
- }
969
- }
970
- },
971
- "message": {
972
- "type": "object",
973
- "properties": {
974
- "en": {
975
- "type": "string",
976
- "description": "Message for notification. Supports handlebars syntax.",
977
- "example": "{{caller}} did something with {{contact.entity.id}} {{branch.name}}."
978
- },
979
- "de": {
980
- "type": "string",
981
- "description": "Message for notification. Supports handlebars syntax.",
982
- "example": "{{caller}} habe etwas damit gemacht {{contact.entity.id}} {{branch.name}}."
983
- }
984
- }
985
- },
986
- "payload": {
987
- "type": "object",
988
- "properties": {},
989
- "additionalProperties": true,
990
- "example": {
991
- "entity": {
992
- "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
993
- "schema": "contact"
994
- }
995
- }
996
- },
997
- "caller": {
998
- "$ref": "#/components/schemas/NotificationCallerContext"
999
- },
1000
- "operations": {
1001
- "type": "array",
1002
- "items": {
1003
- "$ref": "#/components/schemas/EntityOperation"
1004
- }
1005
- },
1006
- "force_notify_users": {
1007
- "type": "object",
1008
- "properties": {},
1009
- "additionalProperties": true,
1010
- "example": {
1011
- "12345": {
1012
- "email": false,
1013
- "in_app": false
1014
- }
1015
- }
1016
- }
1017
- },
1018
- "required": [
1019
- "type",
1020
- "title",
1021
- "message"
1022
- ]
1023
- },
1024
- "EntityId": {
1025
- "type": "string",
1026
- "format": "uuid"
1027
- },
1028
- "Entity": {
1029
- "type": "object",
1030
- "properties": {},
1031
- "additionalProperties": true
1032
- },
1033
- "Id": {
1034
- "type": "number",
1035
- "example": 123456789
1036
- },
1037
- "NotificationId": {
1038
- "type": "number",
1039
- "example": 123456789
1040
- },
1041
- "NotificationCallerContext": {
1042
- "type": "object",
1043
- "additionalProperties": true,
1044
- "properties": {
1045
- "EpilotAuth": {
1046
- "type": "object",
1047
- "properties": {
1048
- "token": {
1049
- "type": "object",
1050
- "properties": {
1051
- "sub": {
1052
- "type": "string",
1053
- "example": "476e9b48-42f4-4234-a2b0-4668b34626ce"
1054
- },
1055
- "email": {
1056
- "type": "string",
1057
- "example": "example@epilot.cloud"
1058
- },
1059
- "cognito:username": {
1060
- "type": "string",
1061
- "example": "example@epilot.cloud"
1062
- },
1063
- "custom:ivy_user_id": {
1064
- "type": "string",
1065
- "example": "10006129"
1066
- }
1067
- },
1068
- "example": {
1069
- "sub": "476e9b48-42f4-4234-a2b0-4668b34626ce",
1070
- "cognito:groups": [
1071
- "Administrator"
1072
- ],
1073
- "cognito:preferred_role": "arn:aws:iam::912468240823:role/base-administrator-role",
1074
- "iss": "https://cognito-idp.eu-central-1.amazonaws.com/eu-central-1_6lZSgmU6D",
1075
- "custom:ivy_org_id": "739224",
1076
- "cognito:username": "n.ahmad@epilot.cloud",
1077
- "custom:ivy_user_id": "10006129",
1078
- "cognito:roles": [
1079
- "arn:aws:iam::912468240823:role/base-administrator-role"
1080
- ],
1081
- "aud": "6e0jbdnger7nmoktaaflarue1l",
1082
- "event_id": "cd5f5583-d90c-4db5-8e99-5f5dd29a4d75",
1083
- "token_use": "id",
1084
- "auth_time": 1614333023,
1085
- "exp": 1614336623,
1086
- "iat": 1614333023,
1087
- "email": "n.ahmad@epilot.cloud"
1088
- }
1089
- }
1090
- }
1091
- }
1092
- }
1093
- },
1094
- "EntitySlug": {
1095
- "description": "URL-friendly identifier for the entity schema",
1096
- "type": "string",
1097
- "example": "contact"
1098
- },
1099
- "EntityOwner": {
1100
- "type": "object",
1101
- "required": [
1102
- "org_id",
1103
- "user_id"
1104
- ],
1105
- "properties": {
1106
- "org_id": {
1107
- "type": "string",
1108
- "description": "Organization ID"
1109
- },
1110
- "user_id": {
1111
- "type": "string",
1112
- "description": "User ID"
1113
- }
1114
- }
1115
- },
1116
- "EntityAcl": {
1117
- "type": "object",
1118
- "description": "Access control list",
1119
- "properties": {
1120
- "view": {
1121
- "type": "array",
1122
- "items": {
1123
- "type": "string"
1124
- }
1125
- },
1126
- "edit": {
1127
- "type": "array",
1128
- "items": {
1129
- "type": "string"
1130
- }
1131
- },
1132
- "delete": {
1133
- "type": "array",
1134
- "items": {
1135
- "type": "string"
1136
- }
1137
- }
1138
- }
1139
- },
1140
- "NotificationTemplate": {
1141
- "type": "object",
1142
- "required": [
1143
- "_id",
1144
- "_org",
1145
- "_schema",
1146
- "_title",
1147
- "_created_at",
1148
- "_updated_at"
1149
- ],
1150
- "properties": {
1151
- "_id": {
1152
- "type": "string",
1153
- "format": "uuid",
1154
- "description": "Unique identifier"
1155
- },
1156
- "_schema": {
1157
- "type": "string",
1158
- "description": "Entity schema type"
1159
- },
1160
- "_title": {
1161
- "type": "string",
1162
- "nullable": true,
1163
- "description": "Display title"
1164
- },
1165
- "_org": {
1166
- "type": "string",
1167
- "description": "Organization ID"
1168
- },
1169
- "_tags": {
1170
- "type": "array",
1171
- "items": {
1172
- "type": "string"
1173
- },
1174
- "nullable": true,
1175
- "description": "Tags for categorization"
1176
- },
1177
- "_created_at": {
1178
- "type": "string",
1179
- "format": "date-time",
1180
- "nullable": true,
1181
- "description": "ISO timestamp of creation"
1182
- },
1183
- "_updated_at": {
1184
- "type": "string",
1185
- "format": "date-time",
1186
- "nullable": true,
1187
- "description": "ISO timestamp of last update"
1188
- },
1189
- "_manifest": {
1190
- "type": "array",
1191
- "description": "Manifest ID used to create/update the entity",
1192
- "items": {
1193
- "type": "string",
1194
- "format": "uuid",
1195
- "example": "123e4567-e89b-12d3-a456-426614174000"
1196
- }
1197
- },
1198
- "_owners": {
1199
- "type": "array",
1200
- "items": {
1201
- "$ref": "#/components/schemas/EntityOwner"
1202
- },
1203
- "description": "Entity owners",
1204
- "readOnly": true
1205
- },
1206
- "_acl": {
1207
- "allOf": [
1208
- {
1209
- "$ref": "#/components/schemas/EntityAcl"
1210
- }
1211
- ],
1212
- "description": "Access control list",
1213
- "readOnly": true
1214
- },
1215
- "name": {
1216
- "type": "string",
1217
- "description": "Internal template name"
1218
- },
1219
- "type": {
1220
- "type": "string",
1221
- "description": "Notification type key"
1222
- },
1223
- "notification_title": {
1224
- "type": "string",
1225
- "description": "Notification title (Lexical editor JSON, supports variables)"
1226
- },
1227
- "message": {
1228
- "type": "string",
1229
- "description": "Notification body (Lexical editor JSON, supports variables)"
1230
- },
1231
- "action_label": {
1232
- "type": "string",
1233
- "description": "CTA button text (supports variables)"
1234
- },
1235
- "action_url": {
1236
- "type": "string",
1237
- "description": "CTA button URL (supports variables)"
1238
- },
1239
- "style": {
1240
- "type": "string",
1241
- "description": "JSON string with style config"
1242
- },
1243
- "system_template": {
1244
- "type": "boolean",
1245
- "description": "Whether this is a system template",
1246
- "readOnly": true
1247
- },
1248
- "created_by": {
1249
- "type": "string",
1250
- "description": "User ID who created the template",
1251
- "readOnly": true
1252
- },
1253
- "updated_by": {
1254
- "type": "string",
1255
- "description": "User ID who last updated the template",
1256
- "readOnly": true
1257
- }
1258
- }
1259
- },
1260
- "CreateNotificationTemplateInput": {
1261
- "type": "object",
1262
- "required": [
1263
- "name",
1264
- "type"
1265
- ],
1266
- "properties": {
1267
- "name": {
1268
- "type": "string",
1269
- "description": "Internal template name (required)"
1270
- },
1271
- "type": {
1272
- "type": "string",
1273
- "description": "Notification type key (required)"
1274
- },
1275
- "notification_title": {
1276
- "type": "string",
1277
- "description": "Notification title (Lexical editor JSON, supports variables)"
1278
- },
1279
- "message": {
1280
- "type": "string",
1281
- "description": "Notification body (Lexical editor JSON, supports variables)"
1282
- },
1283
- "action_label": {
1284
- "type": "string",
1285
- "description": "CTA button text (supports variables)"
1286
- },
1287
- "action_url": {
1288
- "type": "string",
1289
- "description": "CTA button URL (supports variables)"
1290
- },
1291
- "style": {
1292
- "type": "string",
1293
- "description": "JSON string with style config"
1294
- },
1295
- "_title": {
1296
- "type": "string",
1297
- "description": "Display title"
1298
- },
1299
- "_tags": {
1300
- "type": "array",
1301
- "items": {
1302
- "type": "string"
1303
- },
1304
- "description": "Tags for categorization"
1305
- },
1306
- "_manifest": {
1307
- "type": "array",
1308
- "description": "Manifest ID used to create/update the entity",
1309
- "items": {
1310
- "type": "string",
1311
- "format": "uuid",
1312
- "example": "123e4567-e89b-12d3-a456-426614174000"
1313
- }
1314
- }
1315
- }
1316
- },
1317
- "UpdateNotificationTemplateInput": {
1318
- "type": "object",
1319
- "properties": {
1320
- "name": {
1321
- "type": "string",
1322
- "description": "Internal template name"
1323
- },
1324
- "notification_title": {
1325
- "type": "string",
1326
- "description": "Notification title (Lexical editor JSON, supports variables)"
1327
- },
1328
- "message": {
1329
- "type": "string",
1330
- "description": "Notification body (Lexical editor JSON, supports variables)"
1331
- },
1332
- "action_label": {
1333
- "type": "string",
1334
- "description": "CTA button text (supports variables)"
1335
- },
1336
- "action_url": {
1337
- "type": "string",
1338
- "description": "CTA button URL (supports variables)"
1339
- },
1340
- "style": {
1341
- "type": "string",
1342
- "description": "JSON string with style config"
1343
- },
1344
- "_title": {
1345
- "type": "string",
1346
- "description": "Display title"
1347
- },
1348
- "_tags": {
1349
- "type": "array",
1350
- "items": {
1351
- "type": "string"
1352
- },
1353
- "description": "Tags for categorization"
1354
- },
1355
- "_manifest": {
1356
- "type": "array",
1357
- "description": "Manifest ID used to create/update the entity",
1358
- "items": {
1359
- "type": "string",
1360
- "format": "uuid",
1361
- "example": "123e4567-e89b-12d3-a456-426614174000"
1362
- }
1363
- }
1364
- }
1365
- },
1366
- "NotificationTemplateListResponse": {
1367
- "type": "object",
1368
- "properties": {
1369
- "results": {
1370
- "type": "array",
1371
- "items": {
1372
- "$ref": "#/components/schemas/NotificationTemplate"
1373
- }
1374
- },
1375
- "hits": {
1376
- "type": "integer",
1377
- "description": "Total number of matching results"
1378
- }
1379
- }
1380
- },
1381
- "SendPreviewInput": {
1382
- "type": "object",
1383
- "required": [
1384
- "template"
1385
- ],
1386
- "properties": {
1387
- "template": {
1388
- "$ref": "#/components/schemas/UpdateNotificationTemplateInput"
1389
- },
1390
- "context_ids": {
1391
- "type": "object",
1392
- "description": "Optional context IDs for variable replacement",
1393
- "additionalProperties": {
1394
- "type": "string"
1395
- }
1396
- }
1397
- }
1398
- },
1399
- "SendPreviewResponse": {
1400
- "type": "array",
1401
- "description": "Array of results for each notification channel (email, in-app)",
1402
- "items": {
1403
- "type": "object",
1404
- "required": [
1405
- "success"
1406
- ],
1407
- "properties": {
1408
- "success": {
1409
- "type": "boolean",
1410
- "description": "Whether this notification was sent successfully"
1411
- },
1412
- "data": {
1413
- "description": "Result data"
1414
- }
1415
- }
1416
- }
1417
- }
1418
- }
1419
- },
1420
- "servers": [
1421
- {
1422
- "url": "https://notification.sls.epilot.io"
1423
- }
1424
- ]
1425
- }