@epilot/sdk 2.0.0-beta.3 → 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 (189) hide show
  1. package/definitions/access-token-runtime.json +1 -0
  2. package/definitions/access-token.json +663 -0
  3. package/definitions/address-runtime.json +1 -0
  4. package/definitions/address-suggestions-runtime.json +1 -0
  5. package/definitions/address-suggestions.json +582 -0
  6. package/definitions/address.json +578 -0
  7. package/definitions/ai-agents-runtime.json +1 -0
  8. package/definitions/ai-agents.json +1711 -0
  9. package/definitions/app-runtime.json +1 -0
  10. package/definitions/app.json +4443 -0
  11. package/definitions/audit-logs-runtime.json +1 -0
  12. package/definitions/audit-logs.json +305 -0
  13. package/definitions/automation-runtime.json +1 -0
  14. package/definitions/automation.json +4850 -0
  15. package/definitions/billing-runtime.json +1 -0
  16. package/definitions/billing.json +837 -0
  17. package/definitions/blueprint-manifest-runtime.json +1 -0
  18. package/definitions/blueprint-manifest.json +3376 -0
  19. package/definitions/consent-runtime.json +1 -0
  20. package/definitions/consent.json +344 -0
  21. package/definitions/customer-portal-runtime.json +1 -0
  22. package/definitions/customer-portal.json +15000 -0
  23. package/definitions/dashboard-runtime.json +1 -0
  24. package/definitions/dashboard.json +484 -0
  25. package/definitions/data-management-runtime.json +1 -0
  26. package/definitions/data-management.json +962 -0
  27. package/definitions/deduplication-runtime.json +1 -0
  28. package/definitions/deduplication.json +183 -0
  29. package/definitions/design-runtime.json +1 -0
  30. package/definitions/design.json +1423 -0
  31. package/definitions/document-runtime.json +1 -0
  32. package/definitions/document.json +758 -0
  33. package/definitions/email-settings-runtime.json +1 -0
  34. package/definitions/email-settings.json +2627 -0
  35. package/definitions/email-template-runtime.json +1 -0
  36. package/definitions/email-template.json +1419 -0
  37. package/definitions/entity-mapping-runtime.json +1 -0
  38. package/definitions/entity-mapping.json +1642 -0
  39. package/definitions/entity-runtime.json +1 -0
  40. package/definitions/entity.json +10074 -0
  41. package/definitions/environments-runtime.json +1 -0
  42. package/definitions/environments.json +363 -0
  43. package/definitions/erp-integration-runtime.json +1 -0
  44. package/definitions/erp-integration.json +5845 -0
  45. package/definitions/event-catalog-runtime.json +1 -0
  46. package/definitions/event-catalog.json +1051 -0
  47. package/definitions/file-runtime.json +1 -0
  48. package/definitions/file.json +2842 -0
  49. package/definitions/iban-runtime.json +1 -0
  50. package/definitions/iban.json +132 -0
  51. package/definitions/journey-runtime.json +1 -0
  52. package/definitions/journey.json +2341 -0
  53. package/definitions/kanban-runtime.json +1 -0
  54. package/definitions/kanban.json +929 -0
  55. package/definitions/message-runtime.json +1 -0
  56. package/definitions/message.json +2660 -0
  57. package/definitions/metering-runtime.json +1 -0
  58. package/definitions/metering.json +2321 -0
  59. package/definitions/notes-runtime.json +1 -0
  60. package/definitions/notes.json +1531 -0
  61. package/definitions/notification-runtime.json +1 -0
  62. package/definitions/notification.json +1425 -0
  63. package/definitions/organization-runtime.json +1 -0
  64. package/definitions/organization.json +629 -0
  65. package/definitions/partner-directory-runtime.json +1 -0
  66. package/definitions/partner-directory.json +1718 -0
  67. package/definitions/permissions-runtime.json +1 -0
  68. package/definitions/permissions.json +1480 -0
  69. package/definitions/pricing-runtime.json +1 -0
  70. package/definitions/pricing-tier-runtime.json +1 -0
  71. package/definitions/pricing-tier.json +105 -0
  72. package/definitions/pricing.json +9884 -0
  73. package/definitions/purpose-runtime.json +1 -0
  74. package/definitions/purpose.json +524 -0
  75. package/definitions/sandbox-runtime.json +1 -0
  76. package/definitions/sandbox.json +453 -0
  77. package/definitions/submission-runtime.json +1 -0
  78. package/definitions/submission.json +313 -0
  79. package/definitions/targeting-runtime.json +1 -0
  80. package/definitions/targeting.json +1474 -0
  81. package/definitions/template-variables-runtime.json +1 -0
  82. package/definitions/template-variables.json +1408 -0
  83. package/definitions/user-runtime.json +1 -0
  84. package/definitions/user.json +2408 -0
  85. package/definitions/validation-rules-runtime.json +1 -0
  86. package/definitions/validation-rules.json +1491 -0
  87. package/definitions/webhooks-runtime.json +1 -0
  88. package/definitions/webhooks.json +1525 -0
  89. package/definitions/workflow-definition-runtime.json +1 -0
  90. package/definitions/workflow-definition.json +3417 -0
  91. package/definitions/workflow-runtime.json +1 -0
  92. package/definitions/workflow.json +4106 -0
  93. package/dist/apis/access-token.cjs +13 -84
  94. package/dist/apis/access-token.js +11 -82
  95. package/dist/apis/address-suggestions.cjs +13 -127
  96. package/dist/apis/address-suggestions.js +11 -125
  97. package/dist/apis/address.cjs +13 -79
  98. package/dist/apis/address.js +11 -77
  99. package/dist/apis/ai-agents.cjs +13 -210
  100. package/dist/apis/ai-agents.js +11 -208
  101. package/dist/apis/app.cjs +13 -568
  102. package/dist/apis/app.js +11 -566
  103. package/dist/apis/audit-logs.cjs +13 -50
  104. package/dist/apis/audit-logs.js +11 -48
  105. package/dist/apis/automation.cjs +13 -277
  106. package/dist/apis/automation.js +11 -275
  107. package/dist/apis/billing.cjs +13 -170
  108. package/dist/apis/billing.js +11 -168
  109. package/dist/apis/blueprint-manifest.cjs +13 -499
  110. package/dist/apis/blueprint-manifest.js +11 -497
  111. package/dist/apis/consent.cjs +13 -79
  112. package/dist/apis/consent.js +11 -77
  113. package/dist/apis/customer-portal.cjs +13 -2247
  114. package/dist/apis/customer-portal.js +11 -2245
  115. package/dist/apis/dashboard.cjs +13 -79
  116. package/dist/apis/dashboard.js +11 -77
  117. package/dist/apis/data-management.cjs +13 -235
  118. package/dist/apis/data-management.js +11 -233
  119. package/dist/apis/deduplication.cjs +13 -37
  120. package/dist/apis/deduplication.js +11 -35
  121. package/dist/apis/design.cjs +13 -214
  122. package/dist/apis/design.js +11 -212
  123. package/dist/apis/document.cjs +13 -73
  124. package/dist/apis/document.js +11 -71
  125. package/dist/apis/email-settings.cjs +13 -528
  126. package/dist/apis/email-settings.js +11 -526
  127. package/dist/apis/email-template.cjs +13 -117
  128. package/dist/apis/email-template.js +11 -115
  129. package/dist/apis/entity-mapping.cjs +13 -210
  130. package/dist/apis/entity-mapping.js +11 -208
  131. package/dist/apis/entity.cjs +13 -1595
  132. package/dist/apis/entity.js +11 -1593
  133. package/dist/apis/environments.cjs +13 -66
  134. package/dist/apis/environments.js +11 -64
  135. package/dist/apis/erp-integration.cjs +13 -581
  136. package/dist/apis/erp-integration.js +11 -579
  137. package/dist/apis/event-catalog.cjs +13 -125
  138. package/dist/apis/event-catalog.js +11 -123
  139. package/dist/apis/file.cjs +13 -568
  140. package/dist/apis/file.js +11 -566
  141. package/dist/apis/iban.cjs +13 -38
  142. package/dist/apis/iban.js +11 -36
  143. package/dist/apis/journey.cjs +13 -265
  144. package/dist/apis/journey.js +11 -263
  145. package/dist/apis/kanban.cjs +13 -159
  146. package/dist/apis/kanban.js +11 -157
  147. package/dist/apis/message.cjs +13 -668
  148. package/dist/apis/message.js +11 -666
  149. package/dist/apis/metering.cjs +13 -394
  150. package/dist/apis/metering.js +11 -392
  151. package/dist/apis/notes.cjs +13 -214
  152. package/dist/apis/notes.js +11 -212
  153. package/dist/apis/notification.cjs +13 -232
  154. package/dist/apis/notification.js +11 -230
  155. package/dist/apis/organization.cjs +13 -113
  156. package/dist/apis/organization.js +11 -111
  157. package/dist/apis/partner-directory.cjs +13 -277
  158. package/dist/apis/partner-directory.js +11 -275
  159. package/dist/apis/permissions.cjs +13 -173
  160. package/dist/apis/permissions.js +11 -171
  161. package/dist/apis/pricing-tier.cjs +14 -32
  162. package/dist/apis/pricing-tier.js +11 -29
  163. package/dist/apis/pricing.cjs +13 -434
  164. package/dist/apis/pricing.js +11 -432
  165. package/dist/apis/purpose.cjs +13 -175
  166. package/dist/apis/purpose.js +11 -173
  167. package/dist/apis/sandbox.cjs +13 -95
  168. package/dist/apis/sandbox.js +11 -93
  169. package/dist/apis/submission.cjs +13 -50
  170. package/dist/apis/submission.js +11 -48
  171. package/dist/apis/targeting.cjs +13 -270
  172. package/dist/apis/targeting.js +11 -268
  173. package/dist/apis/template-variables.cjs +13 -154
  174. package/dist/apis/template-variables.js +11 -152
  175. package/dist/apis/user.cjs +13 -483
  176. package/dist/apis/user.js +11 -481
  177. package/dist/apis/validation-rules.cjs +13 -115
  178. package/dist/apis/validation-rules.js +11 -113
  179. package/dist/apis/webhooks.cjs +13 -247
  180. package/dist/apis/webhooks.js +11 -245
  181. package/dist/apis/workflow-definition.cjs +13 -337
  182. package/dist/apis/workflow-definition.js +11 -335
  183. package/dist/apis/workflow.cjs +13 -397
  184. package/dist/apis/workflow.js +11 -395
  185. package/dist/{chunk-D7ICL3AM.cjs → chunk-5LXNSDG2.cjs} +51 -2
  186. package/dist/{chunk-DGCGLG7G.js → chunk-QMQNMCOC.js} +49 -0
  187. package/dist/index.cjs +56 -54
  188. package/dist/index.js +53 -51
  189. package/package.json +50 -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
+ }