@epilot/sdk 2.0.0-beta.2 → 2.0.0-beta.4

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 (196) hide show
  1. package/README.md +1 -0
  2. package/definitions/access-token-runtime.json +1 -0
  3. package/definitions/access-token.json +663 -0
  4. package/definitions/address-runtime.json +1 -0
  5. package/definitions/address-suggestions-runtime.json +1 -0
  6. package/definitions/address-suggestions.json +582 -0
  7. package/definitions/address.json +578 -0
  8. package/definitions/ai-agents-runtime.json +1 -0
  9. package/definitions/ai-agents.json +1711 -0
  10. package/definitions/app-runtime.json +1 -0
  11. package/definitions/app.json +4443 -0
  12. package/definitions/audit-logs-runtime.json +1 -0
  13. package/definitions/audit-logs.json +305 -0
  14. package/definitions/automation-runtime.json +1 -0
  15. package/definitions/automation.json +4850 -0
  16. package/definitions/billing-runtime.json +1 -0
  17. package/definitions/billing.json +837 -0
  18. package/definitions/blueprint-manifest-runtime.json +1 -0
  19. package/definitions/blueprint-manifest.json +3376 -0
  20. package/definitions/consent-runtime.json +1 -0
  21. package/definitions/consent.json +344 -0
  22. package/definitions/customer-portal-runtime.json +1 -0
  23. package/definitions/customer-portal.json +15000 -0
  24. package/definitions/dashboard-runtime.json +1 -0
  25. package/definitions/dashboard.json +484 -0
  26. package/definitions/data-management-runtime.json +1 -0
  27. package/definitions/data-management.json +962 -0
  28. package/definitions/deduplication-runtime.json +1 -0
  29. package/definitions/deduplication.json +183 -0
  30. package/definitions/design-runtime.json +1 -0
  31. package/definitions/design.json +1423 -0
  32. package/definitions/document-runtime.json +1 -0
  33. package/definitions/document.json +758 -0
  34. package/definitions/email-settings-runtime.json +1 -0
  35. package/definitions/email-settings.json +2627 -0
  36. package/definitions/email-template-runtime.json +1 -0
  37. package/definitions/email-template.json +1419 -0
  38. package/definitions/entity-mapping-runtime.json +1 -0
  39. package/definitions/entity-mapping.json +1642 -0
  40. package/definitions/entity-runtime.json +1 -0
  41. package/definitions/entity.json +10074 -0
  42. package/definitions/environments-runtime.json +1 -0
  43. package/definitions/environments.json +363 -0
  44. package/definitions/erp-integration-runtime.json +1 -0
  45. package/definitions/erp-integration.json +5845 -0
  46. package/definitions/event-catalog-runtime.json +1 -0
  47. package/definitions/event-catalog.json +1051 -0
  48. package/definitions/file-runtime.json +1 -0
  49. package/definitions/file.json +2842 -0
  50. package/definitions/iban-runtime.json +1 -0
  51. package/definitions/iban.json +132 -0
  52. package/definitions/journey-runtime.json +1 -0
  53. package/definitions/journey.json +2341 -0
  54. package/definitions/kanban-runtime.json +1 -0
  55. package/definitions/kanban.json +929 -0
  56. package/definitions/message-runtime.json +1 -0
  57. package/definitions/message.json +2660 -0
  58. package/definitions/metering-runtime.json +1 -0
  59. package/definitions/metering.json +2321 -0
  60. package/definitions/notes-runtime.json +1 -0
  61. package/definitions/notes.json +1531 -0
  62. package/definitions/notification-runtime.json +1 -0
  63. package/definitions/notification.json +1425 -0
  64. package/definitions/organization-runtime.json +1 -0
  65. package/definitions/organization.json +629 -0
  66. package/definitions/partner-directory-runtime.json +1 -0
  67. package/definitions/partner-directory.json +1718 -0
  68. package/definitions/permissions-runtime.json +1 -0
  69. package/definitions/permissions.json +1480 -0
  70. package/definitions/pricing-runtime.json +1 -0
  71. package/definitions/pricing-tier-runtime.json +1 -0
  72. package/definitions/pricing-tier.json +105 -0
  73. package/definitions/pricing.json +9884 -0
  74. package/definitions/purpose-runtime.json +1 -0
  75. package/definitions/purpose.json +524 -0
  76. package/definitions/sandbox-runtime.json +1 -0
  77. package/definitions/sandbox.json +453 -0
  78. package/definitions/submission-runtime.json +1 -0
  79. package/definitions/submission.json +313 -0
  80. package/definitions/targeting-runtime.json +1 -0
  81. package/definitions/targeting.json +1474 -0
  82. package/definitions/template-variables-runtime.json +1 -0
  83. package/definitions/template-variables.json +1408 -0
  84. package/definitions/user-runtime.json +1 -0
  85. package/definitions/user.json +2408 -0
  86. package/definitions/validation-rules-runtime.json +1 -0
  87. package/definitions/validation-rules.json +1491 -0
  88. package/definitions/webhooks-runtime.json +1 -0
  89. package/definitions/webhooks.json +1525 -0
  90. package/definitions/workflow-definition-runtime.json +1 -0
  91. package/definitions/workflow-definition.json +3417 -0
  92. package/definitions/workflow-runtime.json +1 -0
  93. package/definitions/workflow.json +4106 -0
  94. package/dist/apis/access-token.cjs +13 -84
  95. package/dist/apis/access-token.js +11 -82
  96. package/dist/apis/address-suggestions.cjs +13 -127
  97. package/dist/apis/address-suggestions.js +11 -125
  98. package/dist/apis/address.cjs +13 -79
  99. package/dist/apis/address.js +11 -77
  100. package/dist/apis/ai-agents.cjs +13 -210
  101. package/dist/apis/ai-agents.js +11 -208
  102. package/dist/apis/app.cjs +13 -568
  103. package/dist/apis/app.js +11 -566
  104. package/dist/apis/audit-logs.cjs +13 -50
  105. package/dist/apis/audit-logs.js +11 -48
  106. package/dist/apis/automation.cjs +13 -277
  107. package/dist/apis/automation.js +11 -275
  108. package/dist/apis/billing.cjs +13 -170
  109. package/dist/apis/billing.js +11 -168
  110. package/dist/apis/blueprint-manifest.cjs +13 -499
  111. package/dist/apis/blueprint-manifest.js +11 -497
  112. package/dist/apis/consent.cjs +13 -79
  113. package/dist/apis/consent.js +11 -77
  114. package/dist/apis/customer-portal.cjs +13 -2247
  115. package/dist/apis/customer-portal.js +11 -2245
  116. package/dist/apis/dashboard.cjs +41 -0
  117. package/dist/apis/dashboard.d.cts +18 -0
  118. package/dist/apis/dashboard.d.ts +18 -0
  119. package/dist/apis/dashboard.js +41 -0
  120. package/dist/apis/data-management.cjs +13 -235
  121. package/dist/apis/data-management.js +11 -233
  122. package/dist/apis/deduplication.cjs +13 -37
  123. package/dist/apis/deduplication.js +11 -35
  124. package/dist/apis/design.cjs +13 -214
  125. package/dist/apis/design.js +11 -212
  126. package/dist/apis/document.cjs +13 -73
  127. package/dist/apis/document.js +11 -71
  128. package/dist/apis/email-settings.cjs +13 -528
  129. package/dist/apis/email-settings.js +11 -526
  130. package/dist/apis/email-template.cjs +13 -117
  131. package/dist/apis/email-template.js +11 -115
  132. package/dist/apis/entity-mapping.cjs +13 -210
  133. package/dist/apis/entity-mapping.js +11 -208
  134. package/dist/apis/entity.cjs +13 -1595
  135. package/dist/apis/entity.js +11 -1593
  136. package/dist/apis/environments.cjs +13 -66
  137. package/dist/apis/environments.js +11 -64
  138. package/dist/apis/erp-integration.cjs +13 -581
  139. package/dist/apis/erp-integration.js +11 -579
  140. package/dist/apis/event-catalog.cjs +13 -125
  141. package/dist/apis/event-catalog.js +11 -123
  142. package/dist/apis/file.cjs +13 -568
  143. package/dist/apis/file.js +11 -566
  144. package/dist/apis/iban.cjs +13 -38
  145. package/dist/apis/iban.js +11 -36
  146. package/dist/apis/journey.cjs +13 -265
  147. package/dist/apis/journey.js +11 -263
  148. package/dist/apis/kanban.cjs +13 -159
  149. package/dist/apis/kanban.js +11 -157
  150. package/dist/apis/message.cjs +13 -668
  151. package/dist/apis/message.js +11 -666
  152. package/dist/apis/metering.cjs +13 -394
  153. package/dist/apis/metering.js +11 -392
  154. package/dist/apis/notes.cjs +13 -214
  155. package/dist/apis/notes.js +11 -212
  156. package/dist/apis/notification.cjs +13 -232
  157. package/dist/apis/notification.js +11 -230
  158. package/dist/apis/organization.cjs +13 -113
  159. package/dist/apis/organization.js +11 -111
  160. package/dist/apis/partner-directory.cjs +13 -277
  161. package/dist/apis/partner-directory.js +11 -275
  162. package/dist/apis/permissions.cjs +13 -173
  163. package/dist/apis/permissions.js +11 -171
  164. package/dist/apis/pricing-tier.cjs +14 -32
  165. package/dist/apis/pricing-tier.js +11 -29
  166. package/dist/apis/pricing.cjs +13 -434
  167. package/dist/apis/pricing.js +11 -432
  168. package/dist/apis/purpose.cjs +13 -175
  169. package/dist/apis/purpose.js +11 -173
  170. package/dist/apis/sandbox.cjs +13 -95
  171. package/dist/apis/sandbox.js +11 -93
  172. package/dist/apis/submission.cjs +13 -50
  173. package/dist/apis/submission.js +11 -48
  174. package/dist/apis/targeting.cjs +13 -270
  175. package/dist/apis/targeting.js +11 -268
  176. package/dist/apis/template-variables.cjs +13 -154
  177. package/dist/apis/template-variables.js +11 -152
  178. package/dist/apis/user.cjs +13 -483
  179. package/dist/apis/user.js +11 -481
  180. package/dist/apis/validation-rules.cjs +13 -115
  181. package/dist/apis/validation-rules.js +11 -113
  182. package/dist/apis/webhooks.cjs +13 -247
  183. package/dist/apis/webhooks.js +11 -245
  184. package/dist/apis/workflow-definition.cjs +13 -337
  185. package/dist/apis/workflow-definition.js +11 -335
  186. package/dist/apis/workflow.cjs +13 -397
  187. package/dist/apis/workflow.js +11 -395
  188. package/dist/{chunk-D7ICL3AM.cjs → chunk-5LXNSDG2.cjs} +51 -2
  189. package/dist/{chunk-DGCGLG7G.js → chunk-QMQNMCOC.js} +49 -0
  190. package/dist/dashboard.d-AE3RQ6zo.d.cts +440 -0
  191. package/dist/dashboard.d-AE3RQ6zo.d.ts +440 -0
  192. package/dist/index.cjs +60 -53
  193. package/dist/index.d.cts +70 -68
  194. package/dist/index.d.ts +70 -68
  195. package/dist/index.js +57 -50
  196. package/package.json +55 -3
@@ -0,0 +1,1525 @@
1
+ {
2
+ "openapi": "3.0.0",
3
+ "info": {
4
+ "title": "Webhooks",
5
+ "version": "1.0.0",
6
+ "description": "Service for configuring webhooks on different events\n"
7
+ },
8
+ "tags": [
9
+ {
10
+ "name": "webhooks",
11
+ "description": "Configure and trigger webhooks"
12
+ },
13
+ {
14
+ "name": "example",
15
+ "description": "Generate example payloads for webhooks"
16
+ }
17
+ ],
18
+ "paths": {
19
+ "/v1/webhooks/.well-known/public-key": {
20
+ "get": {
21
+ "operationId": "getPublicKey",
22
+ "summary": "getPublicKey",
23
+ "parameters": [
24
+ {
25
+ "in": "query",
26
+ "name": "orgId",
27
+ "schema": {
28
+ "type": "string"
29
+ },
30
+ "required": true,
31
+ "description": "Organization ID to retrieve the public key for."
32
+ }
33
+ ],
34
+ "description": "Returns the platform-level Ed25519 public key used to verify\nasymmetric (v1a) webhook signatures. This endpoint is unauthenticated since the public key is not a secret, but the orgId parameter is required to ensure clients retrieve the correct key for their organization in case of key rotation.\n",
35
+ "tags": [
36
+ "webhooks"
37
+ ],
38
+ "security": [],
39
+ "responses": {
40
+ "200": {
41
+ "description": "Success - public key returned",
42
+ "content": {
43
+ "application/json": {
44
+ "schema": {
45
+ "$ref": "#/components/schemas/PublicKeyResponse"
46
+ }
47
+ }
48
+ }
49
+ },
50
+ "500": {
51
+ "description": "Internal server error",
52
+ "content": {
53
+ "application/json": {
54
+ "schema": {
55
+ "$ref": "#/components/schemas/ErrorResp"
56
+ }
57
+ }
58
+ }
59
+ }
60
+ }
61
+ }
62
+ },
63
+ "/v1/webhooks/configured-events": {
64
+ "get": {
65
+ "operationId": "getConfiguredEvents",
66
+ "summary": "getConfiguredEvents",
67
+ "description": "Retrieve events that can trigger webhooks",
68
+ "tags": [
69
+ "webhooks"
70
+ ],
71
+ "responses": {
72
+ "200": {
73
+ "description": "Success - configured events loaded with success. Empty array if no events have been configured.",
74
+ "content": {
75
+ "application/json": {
76
+ "schema": {
77
+ "$ref": "#/components/schemas/EventConfigResp"
78
+ }
79
+ }
80
+ }
81
+ }
82
+ }
83
+ }
84
+ },
85
+ "/v1/webhooks/configs": {
86
+ "get": {
87
+ "operationId": "getConfigs",
88
+ "summary": "getConfigs",
89
+ "description": "Search Webhook Client Configs",
90
+ "tags": [
91
+ "webhooks"
92
+ ],
93
+ "parameters": [
94
+ {
95
+ "in": "query",
96
+ "name": "eventName",
97
+ "schema": {
98
+ "type": "string"
99
+ },
100
+ "required": false,
101
+ "description": "Filter configurations by event Name",
102
+ "example": "customer_request_created"
103
+ }
104
+ ],
105
+ "responses": {
106
+ "200": {
107
+ "description": "Success - configs loaded with success. Empty array if org has configs.",
108
+ "content": {
109
+ "application/json": {
110
+ "schema": {
111
+ "type": "array",
112
+ "items": {
113
+ "$ref": "#/components/schemas/WebhookConfig"
114
+ }
115
+ }
116
+ }
117
+ }
118
+ },
119
+ "500": {
120
+ "description": "Other errors",
121
+ "content": {
122
+ "application/json": {
123
+ "schema": {
124
+ "$ref": "#/components/schemas/ErrorResp"
125
+ }
126
+ }
127
+ }
128
+ }
129
+ }
130
+ },
131
+ "post": {
132
+ "operationId": "createConfig",
133
+ "summary": "createConfig",
134
+ "description": "Create Webhook Client Config",
135
+ "tags": [
136
+ "webhooks"
137
+ ],
138
+ "requestBody": {
139
+ "description": "Webhook config payload",
140
+ "required": true,
141
+ "content": {
142
+ "application/json": {
143
+ "schema": {
144
+ "$ref": "#/components/schemas/WebhookConfig"
145
+ }
146
+ }
147
+ }
148
+ },
149
+ "responses": {
150
+ "201": {
151
+ "description": "Success - if the config is created successfully",
152
+ "content": {
153
+ "application/json": {
154
+ "schema": {
155
+ "$ref": "#/components/schemas/WebhookConfig"
156
+ }
157
+ }
158
+ }
159
+ },
160
+ "400": {
161
+ "description": "Validation Errors",
162
+ "content": {
163
+ "application/json": {
164
+ "schema": {
165
+ "$ref": "#/components/schemas/ErrorResp"
166
+ }
167
+ }
168
+ }
169
+ },
170
+ "401": {
171
+ "description": "Authentication Errors",
172
+ "content": {
173
+ "application/json": {
174
+ "schema": {
175
+ "$ref": "#/components/schemas/ErrorResp"
176
+ }
177
+ }
178
+ }
179
+ },
180
+ "500": {
181
+ "description": "Other errors",
182
+ "content": {
183
+ "application/json": {
184
+ "schema": {
185
+ "$ref": "#/components/schemas/ErrorResp"
186
+ }
187
+ }
188
+ }
189
+ }
190
+ }
191
+ }
192
+ },
193
+ "/v1/webhooks/configs/{configId}": {
194
+ "get": {
195
+ "operationId": "getConfig",
196
+ "summary": "getConfig",
197
+ "description": "Get webhook config by id",
198
+ "tags": [
199
+ "webhooks"
200
+ ],
201
+ "parameters": [
202
+ {
203
+ "in": "path",
204
+ "name": "configId",
205
+ "schema": {
206
+ "type": "string"
207
+ },
208
+ "required": true,
209
+ "description": "Short uuid to identify the webhook configuration.",
210
+ "example": "7hj28aasgag2gha2"
211
+ }
212
+ ],
213
+ "responses": {
214
+ "200": {
215
+ "description": "Success - if the config is updated successfully",
216
+ "content": {
217
+ "application/json": {
218
+ "schema": {
219
+ "$ref": "#/components/schemas/WebhookConfig"
220
+ }
221
+ }
222
+ }
223
+ },
224
+ "404": {
225
+ "description": "No configuration found for this id",
226
+ "content": {
227
+ "application/json": {
228
+ "schema": {
229
+ "$ref": "#/components/schemas/ErrorResp"
230
+ }
231
+ }
232
+ }
233
+ },
234
+ "500": {
235
+ "description": "Other errors",
236
+ "content": {
237
+ "application/json": {
238
+ "schema": {
239
+ "$ref": "#/components/schemas/ErrorResp"
240
+ }
241
+ }
242
+ }
243
+ }
244
+ }
245
+ },
246
+ "put": {
247
+ "operationId": "updateConfig",
248
+ "summary": "updateConfig",
249
+ "description": "Update Webhook Client Config",
250
+ "tags": [
251
+ "webhooks"
252
+ ],
253
+ "parameters": [
254
+ {
255
+ "in": "path",
256
+ "name": "configId",
257
+ "schema": {
258
+ "type": "string"
259
+ },
260
+ "required": true,
261
+ "description": "Short uuid (length 6) to identify the webhook configuration.",
262
+ "example": "7hj28a"
263
+ }
264
+ ],
265
+ "requestBody": {
266
+ "description": "Webhook config payload",
267
+ "required": true,
268
+ "content": {
269
+ "application/json": {
270
+ "schema": {
271
+ "$ref": "#/components/schemas/WebhookConfig"
272
+ }
273
+ }
274
+ }
275
+ },
276
+ "responses": {
277
+ "200": {
278
+ "description": "Success - if the config is updated successfully",
279
+ "content": {
280
+ "application/json": {
281
+ "schema": {
282
+ "$ref": "#/components/schemas/WebhookConfig"
283
+ }
284
+ }
285
+ }
286
+ },
287
+ "400": {
288
+ "description": "Validation Errors",
289
+ "content": {
290
+ "application/json": {
291
+ "schema": {
292
+ "$ref": "#/components/schemas/ErrorResp"
293
+ }
294
+ }
295
+ }
296
+ },
297
+ "401": {
298
+ "description": "Authentication Errors",
299
+ "content": {
300
+ "application/json": {
301
+ "schema": {
302
+ "$ref": "#/components/schemas/ErrorResp"
303
+ }
304
+ }
305
+ }
306
+ },
307
+ "500": {
308
+ "description": "Other errors",
309
+ "content": {
310
+ "application/json": {
311
+ "schema": {
312
+ "$ref": "#/components/schemas/ErrorResp"
313
+ }
314
+ }
315
+ }
316
+ }
317
+ }
318
+ },
319
+ "delete": {
320
+ "operationId": "deleteConfig",
321
+ "summary": "deleteConfig",
322
+ "description": "Delete Webhook Client Config",
323
+ "tags": [
324
+ "webhooks"
325
+ ],
326
+ "parameters": [
327
+ {
328
+ "in": "path",
329
+ "name": "configId",
330
+ "schema": {
331
+ "type": "string"
332
+ },
333
+ "required": true,
334
+ "description": "Id of the config to de deleted.",
335
+ "example": "CustomerRequest"
336
+ }
337
+ ],
338
+ "responses": {
339
+ "204": {
340
+ "description": "Success - if the config is deleted successfully"
341
+ },
342
+ "401": {
343
+ "description": "Failed to authenticate",
344
+ "content": {
345
+ "application/json": {
346
+ "schema": {
347
+ "$ref": "#/components/schemas/ErrorResp"
348
+ }
349
+ }
350
+ }
351
+ },
352
+ "404": {
353
+ "description": "No config found"
354
+ }
355
+ }
356
+ }
357
+ },
358
+ "/v1/webhooks/configs/{configId}/trigger": {
359
+ "post": {
360
+ "operationId": "triggerWebhook",
361
+ "summary": "triggers a webhook event either async or sync",
362
+ "description": "Trigger a webhook",
363
+ "tags": [
364
+ "webhooks",
365
+ "trigger"
366
+ ],
367
+ "parameters": [
368
+ {
369
+ "in": "query",
370
+ "name": "sync",
371
+ "description": "If set to true, the webhook will be triggered synchronously. Otherwise, it will be triggered asynchronously.",
372
+ "schema": {
373
+ "type": "boolean"
374
+ }
375
+ },
376
+ {
377
+ "in": "path",
378
+ "name": "configId",
379
+ "schema": {
380
+ "type": "string"
381
+ },
382
+ "required": true,
383
+ "description": "Short uuid to identify the webhook configuration.",
384
+ "example": "7hj28aasgag2gha2"
385
+ }
386
+ ],
387
+ "requestBody": {
388
+ "description": "Webhook payload",
389
+ "required": true,
390
+ "content": {
391
+ "application/json": {
392
+ "schema": {
393
+ "$ref": "#/components/schemas/ExecutionPayload"
394
+ }
395
+ }
396
+ }
397
+ },
398
+ "responses": {
399
+ "200": {
400
+ "description": "Success - if the webhook is triggered successfully",
401
+ "content": {
402
+ "application/json": {
403
+ "schema": {
404
+ "$ref": "#/components/schemas/TriggerWebhookResp"
405
+ }
406
+ }
407
+ }
408
+ },
409
+ "400": {
410
+ "description": "Validation Errors",
411
+ "content": {
412
+ "application/json": {
413
+ "schema": {
414
+ "$ref": "#/components/schemas/ErrorResp"
415
+ }
416
+ }
417
+ }
418
+ },
419
+ "500": {
420
+ "description": "Other errors",
421
+ "content": {
422
+ "application/json": {
423
+ "schema": {
424
+ "$ref": "#/components/schemas/ErrorResp"
425
+ }
426
+ }
427
+ }
428
+ }
429
+ }
430
+ }
431
+ },
432
+ "/v1/webhooks/configs/{configId}/events": {
433
+ "get": {
434
+ "deprecated": true,
435
+ "operationId": "getWehookEvents",
436
+ "summary": "getWehookEvents",
437
+ "description": "This endpoint is deprecated and will be removed on 2025-12-31. Use /v2/webhooks/configs/{configId}/events instead.",
438
+ "tags": [
439
+ "webhooks",
440
+ "events"
441
+ ],
442
+ "parameters": [
443
+ {
444
+ "in": "path",
445
+ "name": "configId",
446
+ "schema": {
447
+ "type": "string"
448
+ },
449
+ "required": true,
450
+ "description": "Short uuid to identify the webhook configuration.",
451
+ "example": "7hj28aasgag2gha2"
452
+ },
453
+ {
454
+ "in": "query",
455
+ "name": "status",
456
+ "schema": {
457
+ "type": "string",
458
+ "enum": [
459
+ "succeeded",
460
+ "failed",
461
+ "in_progress"
462
+ ]
463
+ },
464
+ "description": "Get all events for a given webhook config id",
465
+ "example": "succeeded"
466
+ },
467
+ {
468
+ "in": "query",
469
+ "name": "cursor",
470
+ "schema": {
471
+ "type": "string"
472
+ },
473
+ "required": false,
474
+ "description": "Base64 encoded cursor to be used for pagination"
475
+ }
476
+ ],
477
+ "responses": {
478
+ "200": {
479
+ "description": "Success - list events",
480
+ "content": {
481
+ "application/json": {
482
+ "schema": {
483
+ "type": "object",
484
+ "properties": {
485
+ "data": {
486
+ "type": "array",
487
+ "items": {
488
+ "$ref": "#/components/schemas/WebhookEvent"
489
+ }
490
+ },
491
+ "cursor": {
492
+ "type": "string",
493
+ "description": "Cursor to be used for pagination"
494
+ }
495
+ }
496
+ }
497
+ }
498
+ }
499
+ },
500
+ "404": {
501
+ "description": "No events found",
502
+ "content": {
503
+ "application/json": {
504
+ "schema": {
505
+ "$ref": "#/components/schemas/ErrorResp"
506
+ }
507
+ }
508
+ }
509
+ },
510
+ "500": {
511
+ "description": "Other errors",
512
+ "content": {
513
+ "application/json": {
514
+ "schema": {
515
+ "$ref": "#/components/schemas/ErrorResp"
516
+ }
517
+ }
518
+ }
519
+ }
520
+ }
521
+ }
522
+ },
523
+ "/v1/webhooks/configs/{configId}/events/replay-batch": {
524
+ "post": {
525
+ "operationId": "batchReplayEvents",
526
+ "summary": "batchReplayEvents",
527
+ "description": "Replay a batch of webhook events",
528
+ "tags": [
529
+ "webhooks",
530
+ "events"
531
+ ],
532
+ "parameters": [
533
+ {
534
+ "in": "path",
535
+ "name": "configId",
536
+ "schema": {
537
+ "type": "string"
538
+ },
539
+ "required": true,
540
+ "description": "Short uuid to identify the webhook configuration.",
541
+ "example": "7hj28aasgag2gha2"
542
+ }
543
+ ],
544
+ "requestBody": {
545
+ "description": "Batch replay request payload",
546
+ "required": true,
547
+ "content": {
548
+ "application/json": {
549
+ "schema": {
550
+ "$ref": "#/components/schemas/BatchReplayRequest"
551
+ }
552
+ }
553
+ }
554
+ },
555
+ "responses": {
556
+ "202": {
557
+ "description": "Success - enqueued events for replay",
558
+ "content": {
559
+ "application/json": {
560
+ "schema": {
561
+ "type": "object",
562
+ "properties": {
563
+ "replayed_event_ids": {
564
+ "type": "array",
565
+ "items": {
566
+ "type": "string"
567
+ },
568
+ "description": "List of event ids that were enqueued for replay"
569
+ }
570
+ }
571
+ }
572
+ }
573
+ }
574
+ },
575
+ "400": {
576
+ "description": "Validation Errors",
577
+ "content": {
578
+ "application/json": {
579
+ "schema": {
580
+ "$ref": "#/components/schemas/ErrorResp"
581
+ }
582
+ }
583
+ }
584
+ },
585
+ "404": {
586
+ "description": "No webhook config found",
587
+ "content": {
588
+ "application/json": {
589
+ "schema": {
590
+ "$ref": "#/components/schemas/ErrorResp"
591
+ }
592
+ }
593
+ }
594
+ },
595
+ "500": {
596
+ "description": "Other errors",
597
+ "content": {
598
+ "application/json": {
599
+ "schema": {
600
+ "$ref": "#/components/schemas/ErrorResp"
601
+ }
602
+ }
603
+ }
604
+ }
605
+ }
606
+ }
607
+ },
608
+ "/v1/webhooks/configs/{configId}/events/{eventId}": {
609
+ "get": {
610
+ "operationId": "getEventById",
611
+ "summary": "getEventById",
612
+ "description": "Get a webhook event by its id",
613
+ "tags": [
614
+ "webhooks",
615
+ "event"
616
+ ],
617
+ "parameters": [
618
+ {
619
+ "in": "path",
620
+ "name": "configId",
621
+ "schema": {
622
+ "type": "string"
623
+ },
624
+ "required": true,
625
+ "description": "Short uuid to identify the webhook configuration.",
626
+ "example": "7hj28aasgag2gha2"
627
+ },
628
+ {
629
+ "in": "path",
630
+ "name": "eventId",
631
+ "schema": {
632
+ "type": "string"
633
+ },
634
+ "required": true,
635
+ "description": "Event id"
636
+ }
637
+ ],
638
+ "responses": {
639
+ "200": {
640
+ "description": "Success - event",
641
+ "content": {
642
+ "application/json": {
643
+ "schema": {
644
+ "$ref": "#/components/schemas/WebhookEvent"
645
+ }
646
+ }
647
+ }
648
+ },
649
+ "404": {
650
+ "description": "No events found",
651
+ "content": {
652
+ "application/json": {
653
+ "schema": {
654
+ "$ref": "#/components/schemas/ErrorResp"
655
+ }
656
+ }
657
+ }
658
+ },
659
+ "500": {
660
+ "description": "Other errors",
661
+ "content": {
662
+ "application/json": {
663
+ "schema": {
664
+ "$ref": "#/components/schemas/ErrorResp"
665
+ }
666
+ }
667
+ }
668
+ }
669
+ }
670
+ }
671
+ },
672
+ "/v1/webhooks/configs/{configId}/events/{eventId}/replay": {
673
+ "post": {
674
+ "operationId": "replayEvent",
675
+ "summary": "replayEvent",
676
+ "description": "Replay a webhook event",
677
+ "tags": [
678
+ "webhooks",
679
+ "event"
680
+ ],
681
+ "parameters": [
682
+ {
683
+ "in": "path",
684
+ "name": "configId",
685
+ "schema": {
686
+ "type": "string"
687
+ },
688
+ "required": true,
689
+ "description": "Short uuid to identify the webhook configuration.",
690
+ "example": "7hj28aasgag2gha2"
691
+ },
692
+ {
693
+ "in": "path",
694
+ "name": "eventId",
695
+ "schema": {
696
+ "type": "string"
697
+ },
698
+ "required": true,
699
+ "description": "Event id"
700
+ }
701
+ ],
702
+ "responses": {
703
+ "204": {
704
+ "description": "Success - replay event"
705
+ },
706
+ "404": {
707
+ "description": "No events found",
708
+ "content": {
709
+ "application/json": {
710
+ "schema": {
711
+ "$ref": "#/components/schemas/ErrorResp"
712
+ }
713
+ }
714
+ }
715
+ },
716
+ "500": {
717
+ "description": "Other errors",
718
+ "content": {
719
+ "application/json": {
720
+ "schema": {
721
+ "$ref": "#/components/schemas/ErrorResp"
722
+ }
723
+ }
724
+ }
725
+ }
726
+ }
727
+ }
728
+ },
729
+ "/v1/webhooks/configs/{configId}/example": {
730
+ "post": {
731
+ "operationId": "getWebhookExample",
732
+ "summary": "getWebhookExample",
733
+ "description": "Generate an example payload for a webhook configuration based on trigger type",
734
+ "tags": [
735
+ "webhooks",
736
+ "example"
737
+ ],
738
+ "parameters": [
739
+ {
740
+ "in": "path",
741
+ "name": "configId",
742
+ "schema": {
743
+ "type": "string"
744
+ },
745
+ "required": true,
746
+ "description": "Short uuid to identify the webhook configuration.",
747
+ "example": "7hj28aasgag2gha2"
748
+ }
749
+ ],
750
+ "requestBody": {
751
+ "description": "Example generation parameters",
752
+ "required": true,
753
+ "content": {
754
+ "application/json": {
755
+ "schema": {
756
+ "$ref": "#/components/schemas/ExampleRequest"
757
+ }
758
+ }
759
+ }
760
+ },
761
+ "responses": {
762
+ "200": {
763
+ "description": "Success - example payload generated",
764
+ "content": {
765
+ "application/json": {
766
+ "schema": {
767
+ "$ref": "#/components/schemas/ExampleResponse"
768
+ }
769
+ }
770
+ }
771
+ },
772
+ "400": {
773
+ "description": "Validation Errors",
774
+ "content": {
775
+ "application/json": {
776
+ "schema": {
777
+ "$ref": "#/components/schemas/ErrorResp"
778
+ }
779
+ }
780
+ }
781
+ },
782
+ "404": {
783
+ "description": "No configuration found for this configId",
784
+ "content": {
785
+ "application/json": {
786
+ "schema": {
787
+ "$ref": "#/components/schemas/ErrorResp"
788
+ }
789
+ }
790
+ }
791
+ },
792
+ "500": {
793
+ "description": "Other errors",
794
+ "content": {
795
+ "application/json": {
796
+ "schema": {
797
+ "$ref": "#/components/schemas/ErrorResp"
798
+ }
799
+ }
800
+ }
801
+ }
802
+ }
803
+ }
804
+ },
805
+ "/v2/webhooks/configs/{configId}/events": {
806
+ "post": {
807
+ "operationId": "getWebhookEventsV2",
808
+ "summary": "getWebhookEventsV2",
809
+ "description": "List webhook events and filter them by status, timestamp, etc.",
810
+ "tags": [
811
+ "Events"
812
+ ],
813
+ "parameters": [
814
+ {
815
+ "in": "path",
816
+ "name": "configId",
817
+ "schema": {
818
+ "type": "string"
819
+ },
820
+ "required": true,
821
+ "description": "Short uuid to identify the webhook configuration.",
822
+ "example": "7hj28aasgag2gha2"
823
+ }
824
+ ],
825
+ "requestBody": {
826
+ "content": {
827
+ "application/json": {
828
+ "schema": {
829
+ "$ref": "#/components/schemas/SearchOptions"
830
+ }
831
+ }
832
+ }
833
+ },
834
+ "responses": {
835
+ "200": {
836
+ "description": "Success - events where loaded successfully. Empty array if org has no events.",
837
+ "content": {
838
+ "application/json": {
839
+ "schema": {
840
+ "$ref": "#/components/schemas/EventListResponse"
841
+ }
842
+ }
843
+ }
844
+ }
845
+ }
846
+ }
847
+ }
848
+ },
849
+ "components": {
850
+ "schemas": {
851
+ "PublicKeyResponse": {
852
+ "type": "object",
853
+ "properties": {
854
+ "public_key": {
855
+ "type": "string",
856
+ "description": "PEM-encoded Ed25519 public key for verifying webhook signatures",
857
+ "example": "-----BEGIN PUBLIC KEY-----\nMCowBQYDK2VwAyEA...\n-----END PUBLIC KEY-----\n"
858
+ },
859
+ "algorithm": {
860
+ "type": "string",
861
+ "description": "The signing algorithm used",
862
+ "example": "ed25519"
863
+ },
864
+ "issuer": {
865
+ "type": "string",
866
+ "description": "The issuer of the signing key",
867
+ "example": "epilot"
868
+ }
869
+ },
870
+ "required": [
871
+ "public_key",
872
+ "algorithm"
873
+ ]
874
+ },
875
+ "SearchOptions": {
876
+ "type": "object",
877
+ "properties": {
878
+ "limit": {
879
+ "type": "integer",
880
+ "description": "Maximum number of results to return",
881
+ "example": 25,
882
+ "default": 25,
883
+ "minimum": 1,
884
+ "maximum": 25
885
+ },
886
+ "cursor": {
887
+ "type": "object",
888
+ "description": "Cursor for pagination. Use the next_cursor from the previous response to get the next page.",
889
+ "properties": {
890
+ "created_at": {
891
+ "type": "string",
892
+ "format": "date-time",
893
+ "description": "Timestamp from the last event in the previous page",
894
+ "example": "2025-10-31T12:34:56Z"
895
+ },
896
+ "event_id": {
897
+ "type": "string",
898
+ "description": "Event ID from the last event in the previous page",
899
+ "example": "evt_1234567890abcdef"
900
+ }
901
+ }
902
+ },
903
+ "timestamp": {
904
+ "type": "object",
905
+ "description": "Filter events by timestamp range",
906
+ "properties": {
907
+ "from": {
908
+ "type": "string",
909
+ "format": "date-time",
910
+ "description": "Start timestamp in ISO 8601 format",
911
+ "example": "2025-10-01T00:00:00Z"
912
+ },
913
+ "to": {
914
+ "type": "string",
915
+ "format": "date-time",
916
+ "description": "End timestamp in ISO 8601 format",
917
+ "example": "2025-10-31T23:59:59Z"
918
+ }
919
+ }
920
+ },
921
+ "event_id": {
922
+ "type": "string",
923
+ "description": "Filter by specific event ID",
924
+ "example": "evt_1234567890abcdef"
925
+ },
926
+ "status": {
927
+ "type": "string",
928
+ "description": "Filter by event outcome",
929
+ "enum": [
930
+ "succeeded",
931
+ "failed"
932
+ ],
933
+ "example": "succeeded"
934
+ }
935
+ }
936
+ },
937
+ "EventListResponse": {
938
+ "type": "object",
939
+ "properties": {
940
+ "data": {
941
+ "type": "array",
942
+ "items": {
943
+ "$ref": "#/components/schemas/WebhookEvent"
944
+ },
945
+ "description": "List of webhook events"
946
+ },
947
+ "next_cursor": {
948
+ "type": "object",
949
+ "nullable": true,
950
+ "description": "Cursor to fetch the next page. Null if no more results.",
951
+ "properties": {
952
+ "created_at": {
953
+ "type": "string",
954
+ "format": "date-time",
955
+ "example": "2025-10-31T12:34:56Z"
956
+ },
957
+ "event_id": {
958
+ "type": "string",
959
+ "example": "evt_1234567890abcdef"
960
+ }
961
+ }
962
+ },
963
+ "has_more": {
964
+ "type": "boolean",
965
+ "description": "Indicates if more results are available",
966
+ "example": true
967
+ }
968
+ }
969
+ },
970
+ "HttpMethod": {
971
+ "type": "string",
972
+ "enum": [
973
+ "GET",
974
+ "POST",
975
+ "PUT",
976
+ "PATCH",
977
+ "DELETE",
978
+ "OPTIONS",
979
+ "HEAD"
980
+ ]
981
+ },
982
+ "AuthType": {
983
+ "type": "string",
984
+ "enum": [
985
+ "BASIC",
986
+ "OAUTH_CLIENT_CREDENTIALS",
987
+ "API_KEY",
988
+ "NONE"
989
+ ]
990
+ },
991
+ "Filter": {
992
+ "type": "object",
993
+ "properties": {
994
+ "keyToFilter": {
995
+ "type": "string"
996
+ },
997
+ "supportedValues": {
998
+ "type": "array",
999
+ "items": {
1000
+ "type": "string"
1001
+ }
1002
+ }
1003
+ },
1004
+ "required": [
1005
+ "keyToFilter",
1006
+ "supportedValues"
1007
+ ]
1008
+ },
1009
+ "Auth": {
1010
+ "type": "object",
1011
+ "properties": {
1012
+ "authType": {
1013
+ "$ref": "#/components/schemas/AuthType"
1014
+ },
1015
+ "basicAuthConfig": {
1016
+ "$ref": "#/components/schemas/BasicAuthConfig"
1017
+ },
1018
+ "oauthConfig": {
1019
+ "$ref": "#/components/schemas/OAuthConfig"
1020
+ },
1021
+ "apiKeyConfig": {
1022
+ "$ref": "#/components/schemas/ApiKeyConfig"
1023
+ }
1024
+ },
1025
+ "required": [
1026
+ "authType"
1027
+ ]
1028
+ },
1029
+ "BasicAuthConfig": {
1030
+ "type": "object",
1031
+ "description": "To be sent only if authType is BASIC",
1032
+ "properties": {
1033
+ "username": {
1034
+ "type": "string"
1035
+ },
1036
+ "password": {
1037
+ "type": "string"
1038
+ },
1039
+ "passwordIsEnvVar": {
1040
+ "type": "boolean",
1041
+ "description": "When true, indicates the password value is an environment variable reference (e.g. {{ env.my_secret }})"
1042
+ }
1043
+ },
1044
+ "required": [
1045
+ "username"
1046
+ ]
1047
+ },
1048
+ "OAuthConfig": {
1049
+ "type": "object",
1050
+ "description": "To be sent only if authType is OAUTH_CLIENT_CREDENTIALS",
1051
+ "properties": {
1052
+ "clientId": {
1053
+ "type": "string"
1054
+ },
1055
+ "clientSecret": {
1056
+ "type": "string"
1057
+ },
1058
+ "clientSecretIsEnvVar": {
1059
+ "type": "boolean",
1060
+ "description": "When true, indicates the clientSecret value is an environment variable reference (e.g. {{ env.my_secret }})"
1061
+ },
1062
+ "endpoint": {
1063
+ "type": "string",
1064
+ "description": "Https Endpoint for authentication"
1065
+ },
1066
+ "httpMethod": {
1067
+ "$ref": "#/components/schemas/HttpMethod"
1068
+ },
1069
+ "customParameterList": {
1070
+ "type": "array",
1071
+ "items": {
1072
+ "$ref": "#/components/schemas/CustomOAuthParameter"
1073
+ }
1074
+ }
1075
+ },
1076
+ "required": [
1077
+ "clientId",
1078
+ "endpoint",
1079
+ "httpMethod"
1080
+ ]
1081
+ },
1082
+ "ApiKeyConfig": {
1083
+ "type": "object",
1084
+ "description": "To be sent only if authType is API_KEY",
1085
+ "properties": {
1086
+ "keyName": {
1087
+ "type": "string"
1088
+ },
1089
+ "keyValue": {
1090
+ "type": "string"
1091
+ },
1092
+ "keyValueIsEnvVar": {
1093
+ "type": "boolean",
1094
+ "description": "When true, indicates the keyValue is an environment variable reference (e.g. {{ env.my_secret }})"
1095
+ }
1096
+ },
1097
+ "required": [
1098
+ "keyName"
1099
+ ]
1100
+ },
1101
+ "WebhookConfig": {
1102
+ "type": "object",
1103
+ "properties": {
1104
+ "id": {
1105
+ "type": "string",
1106
+ "readOnly": true
1107
+ },
1108
+ "name": {
1109
+ "type": "string"
1110
+ },
1111
+ "eventName": {
1112
+ "type": "string"
1113
+ },
1114
+ "url": {
1115
+ "type": "string"
1116
+ },
1117
+ "creationTime": {
1118
+ "type": "string",
1119
+ "description": "creation timestamp",
1120
+ "example": "2021-04-27T12:01:13.000Z"
1121
+ },
1122
+ "httpMethod": {
1123
+ "$ref": "#/components/schemas/HttpMethod"
1124
+ },
1125
+ "enabled": {
1126
+ "type": "boolean"
1127
+ },
1128
+ "auth": {
1129
+ "$ref": "#/components/schemas/Auth"
1130
+ },
1131
+ "filter": {
1132
+ "$ref": "#/components/schemas/Filter"
1133
+ },
1134
+ "payloadConfiguration": {
1135
+ "$ref": "#/components/schemas/PayloadConfiguration"
1136
+ },
1137
+ "enableStaticIP": {
1138
+ "type": "boolean"
1139
+ },
1140
+ "status": {
1141
+ "type": "string",
1142
+ "enum": [
1143
+ "active",
1144
+ "inactive",
1145
+ "incomplete"
1146
+ ]
1147
+ },
1148
+ "jsonataExpression": {
1149
+ "type": "string",
1150
+ "description": "JSONata expression to transform the payload"
1151
+ },
1152
+ "_manifest": {
1153
+ "type": "array",
1154
+ "description": "Manifest ID used to create/update the webhook resource",
1155
+ "items": {
1156
+ "type": "string",
1157
+ "format": "uuid",
1158
+ "example": "123e4567-e89b-12d3-a456-426614174000"
1159
+ }
1160
+ },
1161
+ "signingSecret": {
1162
+ "type": "string",
1163
+ "readOnly": true,
1164
+ "description": "Per-webhook signing secret following the Standard Webhooks specification.\nOnly returned once during webhook creation. Use this secret to verify\nwebhook signatures using the `webhook-id`, `webhook-timestamp`, and\n`webhook-signature` headers.\n",
1165
+ "example": "whsec_C2FVsBQIhrscChlQIMV+b5sSYspob7oD"
1166
+ }
1167
+ },
1168
+ "required": [
1169
+ "name",
1170
+ "eventName"
1171
+ ],
1172
+ "example": {
1173
+ "eventName": "CustomerRequest_Created",
1174
+ "url": "https://my-partner-service.api.com",
1175
+ "httpMethod": "POST",
1176
+ "enabled": true,
1177
+ "auth": {
1178
+ "authType": "BASIC",
1179
+ "basicAuthConfig": {
1180
+ "username": "secretUsername",
1181
+ "password": "secret7825@!"
1182
+ }
1183
+ },
1184
+ "filter": {
1185
+ "keyToFilter": "customer_request.productId",
1186
+ "supportedValues": [
1187
+ "2324245",
1188
+ "5253642"
1189
+ ]
1190
+ }
1191
+ }
1192
+ },
1193
+ "EventConfigResp": {
1194
+ "type": "array",
1195
+ "items": {
1196
+ "$ref": "#/components/schemas/EventConfigEntry"
1197
+ },
1198
+ "example": [
1199
+ {
1200
+ "eventName": "customer_request_created",
1201
+ "eventLabel": "Customer Request Created"
1202
+ }
1203
+ ]
1204
+ },
1205
+ "EventConfigEntry": {
1206
+ "type": "object",
1207
+ "properties": {
1208
+ "eventName": {
1209
+ "type": "string",
1210
+ "description": "Name for identifying the event. Unique."
1211
+ },
1212
+ "eventLabel": {
1213
+ "type": "string",
1214
+ "description": "Either a user friendly label, or the eventName itself."
1215
+ }
1216
+ }
1217
+ },
1218
+ "ErrorResp": {
1219
+ "type": "object",
1220
+ "properties": {
1221
+ "message": {
1222
+ "type": "string"
1223
+ }
1224
+ }
1225
+ },
1226
+ "TriggerWebhookResp": {
1227
+ "type": "object",
1228
+ "required": [
1229
+ "event_id"
1230
+ ],
1231
+ "properties": {
1232
+ "status_code": {
1233
+ "type": "string"
1234
+ },
1235
+ "message": {
1236
+ "type": "string"
1237
+ },
1238
+ "body": {
1239
+ "type": "object"
1240
+ },
1241
+ "code": {
1242
+ "type": "string"
1243
+ },
1244
+ "status": {
1245
+ "type": "string",
1246
+ "enum": [
1247
+ "succeeded",
1248
+ "failed"
1249
+ ]
1250
+ },
1251
+ "start_date": {
1252
+ "type": "string"
1253
+ },
1254
+ "end_date": {
1255
+ "type": "string"
1256
+ },
1257
+ "event_id": {
1258
+ "type": "string"
1259
+ }
1260
+ }
1261
+ },
1262
+ "PayloadConfiguration": {
1263
+ "type": "object",
1264
+ "description": "Configuration for the webhook payload",
1265
+ "properties": {
1266
+ "hydrate_entity": {
1267
+ "type": "boolean"
1268
+ },
1269
+ "include_relations": {
1270
+ "type": "boolean"
1271
+ },
1272
+ "include_activity": {
1273
+ "type": "boolean"
1274
+ },
1275
+ "include_changed_attributes": {
1276
+ "type": "boolean"
1277
+ },
1278
+ "custom_headers": {
1279
+ "$ref": "#/components/schemas/CustomHeader"
1280
+ }
1281
+ }
1282
+ },
1283
+ "CustomHeader": {
1284
+ "type": "object",
1285
+ "description": "Object representing custom headers as key-value pairs.",
1286
+ "additionalProperties": {
1287
+ "type": "string",
1288
+ "description": "Header value"
1289
+ }
1290
+ },
1291
+ "CustomOAuthParameter": {
1292
+ "type": "object",
1293
+ "description": "Custom key/value pair of either type body, query or header",
1294
+ "properties": {
1295
+ "type": {
1296
+ "type": "string",
1297
+ "enum": [
1298
+ "body",
1299
+ "query",
1300
+ "header"
1301
+ ]
1302
+ },
1303
+ "key": {
1304
+ "type": "string"
1305
+ },
1306
+ "value": {
1307
+ "type": "string"
1308
+ }
1309
+ },
1310
+ "required": [
1311
+ "type",
1312
+ "key",
1313
+ "value"
1314
+ ]
1315
+ },
1316
+ "Metadata": {
1317
+ "type": "object",
1318
+ "description": "Contains the metadata about the configured event",
1319
+ "properties": {
1320
+ "action": {
1321
+ "type": "string",
1322
+ "description": "Action that triggered the event",
1323
+ "example": "Manual triggered by user with id 123456"
1324
+ },
1325
+ "origin": {
1326
+ "type": "string",
1327
+ "description": "Origin of the event"
1328
+ },
1329
+ "creation_timestamp": {
1330
+ "type": "string",
1331
+ "description": "Time of event creation"
1332
+ },
1333
+ "webhook_id": {
1334
+ "type": "string",
1335
+ "description": "The ID of the webhook configuration"
1336
+ },
1337
+ "webhook_name": {
1338
+ "type": "string",
1339
+ "description": "The name of the webhook configuration"
1340
+ },
1341
+ "automation_name": {
1342
+ "type": "string",
1343
+ "description": "The name of the automation that triggered the event"
1344
+ },
1345
+ "organization_id": {
1346
+ "type": "string",
1347
+ "description": "The ID of the given organization"
1348
+ },
1349
+ "user_id": {
1350
+ "type": "string",
1351
+ "description": "The ID of the user for manual triggered events"
1352
+ },
1353
+ "correlation_id": {
1354
+ "type": "string",
1355
+ "description": "ID used to track the event"
1356
+ },
1357
+ "execution_id": {
1358
+ "type": "string",
1359
+ "description": "When triggered by an automation this is its execution id"
1360
+ },
1361
+ "action_id": {
1362
+ "type": "string",
1363
+ "description": "When triggered by an automation this is the id of the action"
1364
+ }
1365
+ },
1366
+ "required": [
1367
+ "organization_id"
1368
+ ]
1369
+ },
1370
+ "ExecutionPayload": {
1371
+ "type": "object",
1372
+ "description": "Payload for triggering a webhook",
1373
+ "additionalProperties": true,
1374
+ "properties": {
1375
+ "metadata": {
1376
+ "$ref": "#/components/schemas/Metadata"
1377
+ }
1378
+ },
1379
+ "required": [
1380
+ "metadata"
1381
+ ]
1382
+ },
1383
+ "WebhookEvent": {
1384
+ "type": "object",
1385
+ "properties": {
1386
+ "event_id": {
1387
+ "type": "string"
1388
+ },
1389
+ "org_id": {
1390
+ "type": "string"
1391
+ },
1392
+ "webhook_config_id": {
1393
+ "type": "string"
1394
+ },
1395
+ "url": {
1396
+ "type": "string"
1397
+ },
1398
+ "created_at": {
1399
+ "type": "string",
1400
+ "example": "2021-04-27T12:01:13.000Z"
1401
+ },
1402
+ "event_name": {
1403
+ "type": "string"
1404
+ },
1405
+ "http_response": {
1406
+ "type": "object",
1407
+ "properties": {
1408
+ "status_code": {
1409
+ "type": "integer"
1410
+ },
1411
+ "message": {
1412
+ "type": "string"
1413
+ },
1414
+ "body": {
1415
+ "type": "object"
1416
+ },
1417
+ "code": {
1418
+ "type": "string"
1419
+ }
1420
+ }
1421
+ },
1422
+ "metadata": {
1423
+ "$ref": "#/components/schemas/Metadata"
1424
+ },
1425
+ "status": {
1426
+ "type": "string",
1427
+ "enum": [
1428
+ "succeeded",
1429
+ "failed",
1430
+ "in_progress"
1431
+ ]
1432
+ },
1433
+ "http_method": {
1434
+ "type": "string",
1435
+ "enum": [
1436
+ "GET",
1437
+ "POST",
1438
+ "PUT"
1439
+ ]
1440
+ },
1441
+ "payload": {
1442
+ "type": "string",
1443
+ "description": "stringified payload of the webhook request"
1444
+ }
1445
+ },
1446
+ "required": [
1447
+ "event_id",
1448
+ "webhook_config_id",
1449
+ "org_id"
1450
+ ]
1451
+ },
1452
+ "ExampleRequest": {
1453
+ "type": "object",
1454
+ "properties": {
1455
+ "automation_id": {
1456
+ "type": "string",
1457
+ "description": "ID of the automation, if applicable",
1458
+ "example": "automation_123"
1459
+ }
1460
+ }
1461
+ },
1462
+ "ExampleResponse": {
1463
+ "type": "object",
1464
+ "properties": {
1465
+ "metadata": {
1466
+ "$ref": "#/components/schemas/Metadata"
1467
+ },
1468
+ "entity": {
1469
+ "type": "object",
1470
+ "description": "Example payload for the webhook event",
1471
+ "additionalProperties": true
1472
+ },
1473
+ "relations": {
1474
+ "type": "array",
1475
+ "description": "Example relations for the webhook event",
1476
+ "items": {
1477
+ "type": "object",
1478
+ "additionalProperties": true
1479
+ }
1480
+ }
1481
+ },
1482
+ "additionalProperties": true
1483
+ },
1484
+ "BatchReplayRequest": {
1485
+ "type": "object",
1486
+ "properties": {
1487
+ "eventIds": {
1488
+ "type": "array",
1489
+ "items": {
1490
+ "type": "string"
1491
+ },
1492
+ "description": "List of event IDs to replay",
1493
+ "minItems": 1,
1494
+ "maxItems": 100,
1495
+ "example": [
1496
+ "2f1b7cf8-ff55-4359-966f-e56f39a52c94",
1497
+ "48c984bf-466b-470b-b743-d07cea168243"
1498
+ ]
1499
+ }
1500
+ },
1501
+ "required": [
1502
+ "eventIds"
1503
+ ]
1504
+ }
1505
+ },
1506
+ "securitySchemes": {
1507
+ "EpilotAuth": {
1508
+ "type": "http",
1509
+ "scheme": "bearer",
1510
+ "description": "Authorization header with epilot OAuth2 bearer token",
1511
+ "bearerFormat": "JWT"
1512
+ }
1513
+ }
1514
+ },
1515
+ "security": [
1516
+ {
1517
+ "EpilotAuth": []
1518
+ }
1519
+ ],
1520
+ "servers": [
1521
+ {
1522
+ "url": "https://webhooks.sls.epilot.io"
1523
+ }
1524
+ ]
1525
+ }