@epilot/sdk 2.20.1 → 2.20.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 (162) hide show
  1. package/definitions/automation-runtime.json +1 -1
  2. package/definitions/automation.json +344 -12
  3. package/definitions/event-catalog-runtime.json +1 -1
  4. package/definitions/event-catalog.json +431 -12
  5. package/definitions/journey-runtime.json +1 -1
  6. package/definitions/journey.json +80 -0
  7. package/dist/apis/access-token.cjs +6 -6
  8. package/dist/apis/access-token.js +1 -1
  9. package/dist/apis/address-suggestions.cjs +6 -6
  10. package/dist/apis/address-suggestions.js +1 -1
  11. package/dist/apis/address.cjs +6 -6
  12. package/dist/apis/address.js +1 -1
  13. package/dist/apis/ai-agents.cjs +6 -6
  14. package/dist/apis/ai-agents.js +1 -1
  15. package/dist/apis/app.cjs +6 -6
  16. package/dist/apis/app.js +1 -1
  17. package/dist/apis/audit-logs.cjs +6 -6
  18. package/dist/apis/audit-logs.js +1 -1
  19. package/dist/apis/automation.cjs +8 -8
  20. package/dist/apis/automation.d.cts +2 -2
  21. package/dist/apis/automation.d.ts +2 -2
  22. package/dist/apis/automation.js +2 -2
  23. package/dist/apis/billing.cjs +6 -6
  24. package/dist/apis/billing.js +1 -1
  25. package/dist/apis/blueprint-manifest.cjs +6 -6
  26. package/dist/apis/blueprint-manifest.js +1 -1
  27. package/dist/apis/calendar.cjs +6 -6
  28. package/dist/apis/calendar.js +1 -1
  29. package/dist/apis/configuration-hub.cjs +6 -6
  30. package/dist/apis/configuration-hub.js +1 -1
  31. package/dist/apis/consent.cjs +6 -6
  32. package/dist/apis/consent.js +1 -1
  33. package/dist/apis/customer-portal.cjs +6 -6
  34. package/dist/apis/customer-portal.js +1 -1
  35. package/dist/apis/dashboard.cjs +6 -6
  36. package/dist/apis/dashboard.js +1 -1
  37. package/dist/apis/data-governance.cjs +6 -6
  38. package/dist/apis/data-governance.js +1 -1
  39. package/dist/apis/deduplication.cjs +6 -6
  40. package/dist/apis/deduplication.js +1 -1
  41. package/dist/apis/design.cjs +6 -6
  42. package/dist/apis/design.js +1 -1
  43. package/dist/apis/document.cjs +6 -6
  44. package/dist/apis/document.js +1 -1
  45. package/dist/apis/email-settings.cjs +6 -6
  46. package/dist/apis/email-settings.js +1 -1
  47. package/dist/apis/email-template.cjs +6 -6
  48. package/dist/apis/email-template.js +1 -1
  49. package/dist/apis/entity-mapping.cjs +6 -6
  50. package/dist/apis/entity-mapping.js +1 -1
  51. package/dist/apis/entity.cjs +6 -6
  52. package/dist/apis/entity.js +1 -1
  53. package/dist/apis/environments.cjs +6 -6
  54. package/dist/apis/environments.js +1 -1
  55. package/dist/apis/event-catalog.cjs +8 -8
  56. package/dist/apis/event-catalog.d.cts +2 -2
  57. package/dist/apis/event-catalog.d.ts +2 -2
  58. package/dist/apis/event-catalog.js +2 -2
  59. package/dist/apis/file.cjs +6 -6
  60. package/dist/apis/file.js +1 -1
  61. package/dist/apis/iban.cjs +6 -6
  62. package/dist/apis/iban.js +1 -1
  63. package/dist/apis/integration-toolkit.cjs +6 -6
  64. package/dist/apis/integration-toolkit.js +1 -1
  65. package/dist/apis/journey.cjs +8 -8
  66. package/dist/apis/journey.d.cts +2 -2
  67. package/dist/apis/journey.d.ts +2 -2
  68. package/dist/apis/journey.js +2 -2
  69. package/dist/apis/kanban.cjs +6 -6
  70. package/dist/apis/kanban.js +1 -1
  71. package/dist/apis/message.cjs +6 -6
  72. package/dist/apis/message.js +1 -1
  73. package/dist/apis/metering.cjs +6 -6
  74. package/dist/apis/metering.js +1 -1
  75. package/dist/apis/notes.cjs +6 -6
  76. package/dist/apis/notes.js +1 -1
  77. package/dist/apis/notification.cjs +6 -6
  78. package/dist/apis/notification.js +1 -1
  79. package/dist/apis/organization.cjs +6 -6
  80. package/dist/apis/organization.js +1 -1
  81. package/dist/apis/partner-directory.cjs +6 -6
  82. package/dist/apis/partner-directory.js +1 -1
  83. package/dist/apis/permissions.cjs +6 -6
  84. package/dist/apis/permissions.js +1 -1
  85. package/dist/apis/pricing-tier.cjs +6 -6
  86. package/dist/apis/pricing-tier.js +1 -1
  87. package/dist/apis/pricing.cjs +6 -6
  88. package/dist/apis/pricing.js +1 -1
  89. package/dist/apis/purpose.cjs +6 -6
  90. package/dist/apis/purpose.js +1 -1
  91. package/dist/apis/query.cjs +6 -6
  92. package/dist/apis/query.js +1 -1
  93. package/dist/apis/sandbox.cjs +6 -6
  94. package/dist/apis/sandbox.js +1 -1
  95. package/dist/apis/sharing.cjs +6 -6
  96. package/dist/apis/sharing.js +1 -1
  97. package/dist/apis/snapshot.cjs +6 -6
  98. package/dist/apis/snapshot.js +1 -1
  99. package/dist/apis/submission.cjs +6 -6
  100. package/dist/apis/submission.js +1 -1
  101. package/dist/apis/target.cjs +6 -6
  102. package/dist/apis/target.js +1 -1
  103. package/dist/apis/targeting.cjs +6 -6
  104. package/dist/apis/targeting.js +1 -1
  105. package/dist/apis/template-variables.cjs +6 -6
  106. package/dist/apis/template-variables.js +1 -1
  107. package/dist/apis/user.cjs +6 -6
  108. package/dist/apis/user.js +1 -1
  109. package/dist/apis/validation-rules.cjs +6 -6
  110. package/dist/apis/validation-rules.js +1 -1
  111. package/dist/apis/webhooks.cjs +6 -6
  112. package/dist/apis/webhooks.js +1 -1
  113. package/dist/apis/workflow-definition.cjs +6 -6
  114. package/dist/apis/workflow-definition.js +1 -1
  115. package/dist/apis/workflow.cjs +6 -6
  116. package/dist/apis/workflow.js +1 -1
  117. package/dist/automation-23XNDPBF.cjs +7 -0
  118. package/dist/automation-OMESM3H3.js +7 -0
  119. package/dist/{automation-runtime-RM5EOZH2.cjs → automation-runtime-KLCXZKEC.cjs} +2 -2
  120. package/dist/{automation-runtime-ORW5BVCD.js → automation-runtime-Y52HM57N.js} +1 -1
  121. package/dist/{automation.d-BnQFR6k8.d.cts → automation.d-D8JxyoFa.d.cts} +317 -21
  122. package/dist/{automation.d-BnQFR6k8.d.ts → automation.d-D8JxyoFa.d.ts} +317 -21
  123. package/dist/chunk-CIKDOXDL.cjs +14 -0
  124. package/dist/chunk-EEKJGTAS.js +14 -0
  125. package/dist/{chunk-LWW6JFX2.js → chunk-HJU7FD4A.js} +6 -6
  126. package/dist/chunk-MPZICOVZ.cjs +14 -0
  127. package/dist/chunk-QW3ROE6H.js +14 -0
  128. package/dist/chunk-WOUASZJW.cjs +14 -0
  129. package/dist/{chunk-L7RZB4SO.cjs → chunk-WYK7GSET.cjs} +6 -6
  130. package/dist/chunk-XJUB5BYM.js +14 -0
  131. package/dist/event-catalog-4FVQZ65M.cjs +7 -0
  132. package/dist/event-catalog-PEOHXUJO.js +7 -0
  133. package/dist/{event-catalog-runtime-RH7542GL.cjs → event-catalog-runtime-AME244T7.cjs} +2 -2
  134. package/dist/{event-catalog-runtime-JUSLF3UR.js → event-catalog-runtime-Q3MKEDG4.js} +1 -1
  135. package/dist/{event-catalog.d-QIhhewVH.d.cts → event-catalog.d-Bd2wmtlZ.d.cts} +335 -179
  136. package/dist/{event-catalog.d-QIhhewVH.d.ts → event-catalog.d-Bd2wmtlZ.d.ts} +335 -179
  137. package/dist/index.cjs +14 -14
  138. package/dist/index.d.cts +3 -3
  139. package/dist/index.d.ts +3 -3
  140. package/dist/index.js +4 -4
  141. package/dist/journey-2HHH7MLM.js +7 -0
  142. package/dist/journey-4CXKZMKV.cjs +7 -0
  143. package/dist/{journey-runtime-WGTU2NGN.js → journey-runtime-33QDS2WK.js} +1 -1
  144. package/dist/{journey-runtime-JICGEAMK.cjs → journey-runtime-PAJVCFMZ.cjs} +2 -2
  145. package/dist/{journey.d-B0Ju_TOw.d.cts → journey.d-bxl2l7qg.d.cts} +43 -1
  146. package/dist/{journey.d-B0Ju_TOw.d.ts → journey.d-bxl2l7qg.d.ts} +43 -1
  147. package/docs/automation.md +237 -45
  148. package/docs/event-catalog.md +483 -64
  149. package/docs/journey.md +56 -0
  150. package/package.json +1 -1
  151. package/dist/automation-3HMHBP6P.cjs +0 -7
  152. package/dist/automation-GIJB3MOI.js +0 -7
  153. package/dist/chunk-ADSWGLIV.cjs +0 -14
  154. package/dist/chunk-FDS727SL.cjs +0 -14
  155. package/dist/chunk-HP7PHGTJ.js +0 -14
  156. package/dist/chunk-LCE7N4ZL.js +0 -14
  157. package/dist/chunk-M4FO2MI4.js +0 -14
  158. package/dist/chunk-T5KE6FXF.cjs +0 -14
  159. package/dist/event-catalog-6ZSSF5JU.cjs +0 -7
  160. package/dist/event-catalog-RS4LJMY2.js +0 -7
  161. package/dist/journey-JS7SZKNJ.js +0 -7
  162. package/dist/journey-N7HRM2JJ.cjs +0 -7
@@ -26,8 +26,12 @@ const { data } = await eventCatalogClient.listEvents(...)
26
26
 
27
27
  **Event Catalog**
28
28
  - [`listEvents`](#listevents)
29
+ - [`createCustomEvent`](#createcustomevent)
29
30
  - [`getEvent`](#getevent)
30
31
  - [`patchEvent`](#patchevent)
32
+ - [`deprecateCustomEvent`](#deprecatecustomevent)
33
+ - [`previewCustomEvent`](#previewcustomevent)
34
+ - [`publishCustomEventDefinition`](#publishcustomeventdefinition)
31
35
  - [`getEventJSONSchema`](#geteventjsonschema)
32
36
  - [`getEventExample`](#geteventexample)
33
37
  - [`listEventVersions`](#listeventversions)
@@ -39,10 +43,18 @@ const { data } = await eventCatalogClient.listEvents(...)
39
43
  **Schemas**
40
44
  - [`EventConfigBase`](#eventconfigbase)
41
45
  - [`EventConfig`](#eventconfig)
46
+ - [`CreateCustomEventPayload`](#createcustomeventpayload)
47
+ - [`EventMapping`](#eventmapping)
48
+ - [`CustomEventLineage`](#customeventlineage)
49
+ - [`PurposeFilterSnapshot`](#purposefiltersnapshot)
50
+ - [`PublishCustomEventPayload`](#publishcustomeventpayload)
51
+ - [`ValidationIssue`](#validationissue)
52
+ - [`PreviewEventResponse`](#previeweventresponse)
42
53
  - [`UpdateEventPayload`](#updateeventpayload)
43
54
  - [`PrimitiveField`](#primitivefield)
44
55
  - [`ContextEntity`](#contextentity)
45
56
  - [`AttachmentField`](#attachmentfield)
57
+ - [`CustomSchemaField`](#customschemafield)
46
58
  - [`SchemaField`](#schemafield)
47
59
  - [`SuccessCriterion`](#successcriterion)
48
60
  - [`CommonEventMetadata`](#commoneventmetadata)
@@ -108,11 +120,28 @@ const { data } = await client.listEvents()
108
120
  "operation": ["createEntity", "updateEntity"],
109
121
  "schema": ["contact", "contract", "order"],
110
122
  "attribute": ["email", "phone", "status"],
111
- "purpose": ["Kündigung", "Umzug/Auszug"]
123
+ "purpose": ["Kündigung", "Umzug/Auszug"],
124
+ "purpose_filters": [
125
+ {
126
+ "id": "string",
127
+ "display_name": "string"
128
+ }
129
+ ]
112
130
  },
113
131
  "enabled": true,
114
132
  "auto_trigger": true,
115
133
  "automation_trigger": true,
134
+ "automation_trigger_only": true,
135
+ "automation_trigger_seed_node": "ticket",
136
+ "event_origin": "builtin",
137
+ "mapping": {
138
+ "mode": "guided",
139
+ "jsonata": "string"
140
+ },
141
+ "lineage": {
142
+ "base_event_name": "string",
143
+ "base_event_version": "string"
144
+ },
116
145
  "success_criteria": [
117
146
  {
118
147
  "entity_schema": "contract",
@@ -132,6 +161,134 @@ const { data } = await client.listEvents()
132
161
 
133
162
  ---
134
163
 
164
+ ### `createCustomEvent`
165
+
166
+ Reserve an org-scoped custom event name and persist its immutable v1.0 draft definition.
167
+
168
+ `POST /v1/events`
169
+
170
+ ```ts
171
+ const { data } = await client.createCustomEvent(
172
+ null,
173
+ {
174
+ event_name: 'string',
175
+ event_title: 'string',
176
+ event_description: 'string',
177
+ event_tags: ['string'],
178
+ schema_fields: {},
179
+ entity_graph: {
180
+ nodes: [
181
+ {
182
+ id: 'contact',
183
+ schema: 'contact',
184
+ cardinality: 'one',
185
+ fields: ['_id', '_title', 'first_name', 'account', '!account.*._files', '**._product']
186
+ }
187
+ ],
188
+ edges: [
189
+ {
190
+ from: 'contact',
191
+ to: 'billing_account'
192
+ }
193
+ ]
194
+ },
195
+ entity_operation: {
196
+ operation: ['createEntity', 'updateEntity'],
197
+ schema: ['contact', 'contract', 'order'],
198
+ attribute: ['email', 'phone', 'status'],
199
+ purpose: ['Kündigung', 'Umzug/Auszug'],
200
+ purpose_filters: [
201
+ {
202
+ id: 'string',
203
+ display_name: 'string'
204
+ }
205
+ ]
206
+ },
207
+ automation_trigger: true,
208
+ mapping: {
209
+ mode: 'guided',
210
+ jsonata: 'string'
211
+ },
212
+ lineage: {
213
+ base_event_name: 'string',
214
+ base_event_version: 'string'
215
+ },
216
+ example: {}
217
+ },
218
+ )
219
+ ```
220
+
221
+ <details>
222
+ <summary>Response</summary>
223
+
224
+ ```json
225
+ {
226
+ "event_name": "AddMeterReading",
227
+ "event_title": "Add Meter Reading",
228
+ "event_description": "Triggered when a new meter reading is added",
229
+ "event_version": "1.0",
230
+ "event_status": "active",
231
+ "event_tags": ["builtin", "metering", "erp"],
232
+ "schema_fields": {},
233
+ "entity_graph": {
234
+ "nodes": [
235
+ {
236
+ "id": "contact",
237
+ "schema": "contact",
238
+ "cardinality": "one",
239
+ "fields": ["_id", "_title", "first_name", "account", "!account.*._files", "**._product"]
240
+ }
241
+ ],
242
+ "edges": [
243
+ {
244
+ "from": "contact",
245
+ "to": "billing_account"
246
+ }
247
+ ]
248
+ },
249
+ "entity_operation": {
250
+ "operation": ["createEntity", "updateEntity"],
251
+ "schema": ["contact", "contract", "order"],
252
+ "attribute": ["email", "phone", "status"],
253
+ "purpose": ["Kündigung", "Umzug/Auszug"],
254
+ "purpose_filters": [
255
+ {
256
+ "id": "string",
257
+ "display_name": "string"
258
+ }
259
+ ]
260
+ },
261
+ "enabled": true,
262
+ "auto_trigger": true,
263
+ "automation_trigger": true,
264
+ "automation_trigger_only": true,
265
+ "automation_trigger_seed_node": "ticket",
266
+ "event_origin": "builtin",
267
+ "mapping": {
268
+ "mode": "guided",
269
+ "jsonata": "string"
270
+ },
271
+ "lineage": {
272
+ "base_event_name": "string",
273
+ "base_event_version": "string"
274
+ },
275
+ "success_criteria": [
276
+ {
277
+ "entity_schema": "contract",
278
+ "attribute": "installment_amount"
279
+ },
280
+ {
281
+ "entity_schema": "billing_account",
282
+ "attribute": "due_date"
283
+ }
284
+ ]
285
+ }
286
+ ```
287
+
288
+ </details>
289
+
290
+ ---
291
+
135
292
  ### `getEvent`
136
293
 
137
294
  Retrieve the configuration of a specific business event
@@ -176,11 +333,28 @@ const { data } = await client.getEvent({
176
333
  "operation": ["createEntity", "updateEntity"],
177
334
  "schema": ["contact", "contract", "order"],
178
335
  "attribute": ["email", "phone", "status"],
179
- "purpose": ["Kündigung", "Umzug/Auszug"]
336
+ "purpose": ["Kündigung", "Umzug/Auszug"],
337
+ "purpose_filters": [
338
+ {
339
+ "id": "string",
340
+ "display_name": "string"
341
+ }
342
+ ]
180
343
  },
181
344
  "enabled": true,
182
345
  "auto_trigger": true,
183
346
  "automation_trigger": true,
347
+ "automation_trigger_only": true,
348
+ "automation_trigger_seed_node": "ticket",
349
+ "event_origin": "builtin",
350
+ "mapping": {
351
+ "mode": "guided",
352
+ "jsonata": "string"
353
+ },
354
+ "lineage": {
355
+ "base_event_name": "string",
356
+ "base_event_version": "string"
357
+ },
184
358
  "success_criteria": [
185
359
  {
186
360
  "entity_schema": "contract",
@@ -210,49 +384,160 @@ const { data } = await client.patchEvent(
210
384
  event_name: 'example',
211
385
  },
212
386
  {
213
- event_name: 'AddMeterReading',
214
- event_title: 'Add Meter Reading',
215
- event_description: 'Triggered when a new meter reading is added',
216
- event_version: '1.0',
217
- event_status: 'active',
218
- event_tags: ['builtin', 'metering', 'erp'],
219
- schema_fields: {},
220
- entity_graph: {
221
- nodes: [
222
- {
223
- id: 'contact',
224
- schema: 'contact',
225
- cardinality: 'one',
226
- fields: ['_id', '_title', 'first_name', 'account', '!account.*._files', '**._product']
227
- }
228
- ],
229
- edges: [
230
- {
231
- from: 'contact',
232
- to: 'billing_account'
233
- }
234
- ]
235
- },
236
- entity_operation: {
237
- operation: ['createEntity', 'updateEntity'],
238
- schema: ['contact', 'contract', 'order'],
239
- attribute: ['email', 'phone', 'status'],
240
- purpose: ['Kündigung', 'Umzug/Auszug']
241
- },
242
387
  enabled: true,
243
388
  auto_trigger: true,
244
- automation_trigger: true,
245
389
  success_criteria: [
246
390
  {
247
391
  entity_schema: 'contract',
248
392
  attribute: 'installment_amount'
249
- },
393
+ }
394
+ ]
395
+ },
396
+ )
397
+ ```
398
+
399
+ <details>
400
+ <summary>Response</summary>
401
+
402
+ ```json
403
+ {
404
+ "event_name": "AddMeterReading",
405
+ "event_title": "Add Meter Reading",
406
+ "event_description": "Triggered when a new meter reading is added",
407
+ "event_version": "1.0",
408
+ "event_status": "active",
409
+ "event_tags": ["builtin", "metering", "erp"],
410
+ "schema_fields": {},
411
+ "entity_graph": {
412
+ "nodes": [
250
413
  {
251
- entity_schema: 'billing_account',
252
- attribute: 'due_date'
414
+ "id": "contact",
415
+ "schema": "contact",
416
+ "cardinality": "one",
417
+ "fields": ["_id", "_title", "first_name", "account", "!account.*._files", "**._product"]
418
+ }
419
+ ],
420
+ "edges": [
421
+ {
422
+ "from": "contact",
423
+ "to": "billing_account"
253
424
  }
254
425
  ]
255
426
  },
427
+ "entity_operation": {
428
+ "operation": ["createEntity", "updateEntity"],
429
+ "schema": ["contact", "contract", "order"],
430
+ "attribute": ["email", "phone", "status"],
431
+ "purpose": ["Kündigung", "Umzug/Auszug"],
432
+ "purpose_filters": [
433
+ {
434
+ "id": "string",
435
+ "display_name": "string"
436
+ }
437
+ ]
438
+ },
439
+ "enabled": true,
440
+ "auto_trigger": true,
441
+ "automation_trigger": true,
442
+ "automation_trigger_only": true,
443
+ "automation_trigger_seed_node": "ticket",
444
+ "event_origin": "builtin",
445
+ "mapping": {
446
+ "mode": "guided",
447
+ "jsonata": "string"
448
+ },
449
+ "lineage": {
450
+ "base_event_name": "string",
451
+ "base_event_version": "string"
452
+ },
453
+ "success_criteria": [
454
+ {
455
+ "entity_schema": "contract",
456
+ "attribute": "installment_amount"
457
+ },
458
+ {
459
+ "entity_schema": "billing_account",
460
+ "attribute": "due_date"
461
+ }
462
+ ]
463
+ }
464
+ ```
465
+
466
+ </details>
467
+
468
+ ---
469
+
470
+ ### `deprecateCustomEvent`
471
+
472
+ Soft-deprecate an org-scoped custom event. Definitions and v1.0 history remain readable.
473
+
474
+ `DELETE /v1/events/{event_name}`
475
+
476
+ ```ts
477
+ const { data } = await client.deprecateCustomEvent({
478
+ event_name: 'example',
479
+ })
480
+ ```
481
+
482
+ ---
483
+
484
+ ### `previewCustomEvent`
485
+
486
+ Assemble and fully validate a persisted custom-event draft without publishing it.
487
+
488
+ `POST /v1/events/{event_name}:preview`
489
+
490
+ ```ts
491
+ const { data } = await client.previewCustomEvent(
492
+ {
493
+ event_name: 'example',
494
+ },
495
+ {
496
+ seed: {
497
+ entity_id: '3fa85f64-5717-4562-b3fc-2c963f66afa6',
498
+ node_id: 'ticket'
499
+ },
500
+ _trigger_source_type: 'automation',
501
+ _trigger_source: 'execution-id/action-id'
502
+ },
503
+ )
504
+ ```
505
+
506
+ <details>
507
+ <summary>Response</summary>
508
+
509
+ ```json
510
+ {
511
+ "payload": {},
512
+ "errors": [
513
+ {
514
+ "path": "string",
515
+ "message": "string"
516
+ }
517
+ ]
518
+ }
519
+ ```
520
+
521
+ </details>
522
+
523
+ ---
524
+
525
+ ### `publishCustomEventDefinition`
526
+
527
+ Conditionally activate an immutable custom-event v1.0 definition.
528
+
529
+ `POST /v1/events/{event_name}:publish`
530
+
531
+ ```ts
532
+ const { data } = await client.publishCustomEventDefinition(
533
+ {
534
+ event_name: 'example',
535
+ },
536
+ {
537
+ enabled: true,
538
+ auto_trigger: true,
539
+ base_auto_trigger_enabled: true
540
+ },
256
541
  )
257
542
  ```
258
543
 
@@ -288,11 +573,28 @@ const { data } = await client.patchEvent(
288
573
  "operation": ["createEntity", "updateEntity"],
289
574
  "schema": ["contact", "contract", "order"],
290
575
  "attribute": ["email", "phone", "status"],
291
- "purpose": ["Kündigung", "Umzug/Auszug"]
576
+ "purpose": ["Kündigung", "Umzug/Auszug"],
577
+ "purpose_filters": [
578
+ {
579
+ "id": "string",
580
+ "display_name": "string"
581
+ }
582
+ ]
292
583
  },
293
584
  "enabled": true,
294
585
  "auto_trigger": true,
295
586
  "automation_trigger": true,
587
+ "automation_trigger_only": true,
588
+ "automation_trigger_seed_node": "ticket",
589
+ "event_origin": "builtin",
590
+ "mapping": {
591
+ "mode": "guided",
592
+ "jsonata": "string"
593
+ },
594
+ "lineage": {
595
+ "base_event_name": "string",
596
+ "base_event_version": "string"
597
+ },
296
598
  "success_criteria": [
297
599
  {
298
600
  "entity_schema": "contract",
@@ -689,12 +991,10 @@ const { data } = await client.triggerEvent(
689
991
  {
690
992
  seed: {
691
993
  entity_id: '3fa85f64-5717-4562-b3fc-2c963f66afa6',
692
- node_id: 'string'
994
+ node_id: 'ticket'
693
995
  },
694
- fields: {},
695
- skip_hydration: ['string'],
696
- _trigger_source_type: 'string',
697
- _trigger_source: 'string'
996
+ _trigger_source_type: 'automation',
997
+ _trigger_source: 'execution-id/action-id'
698
998
  },
699
999
  )
700
1000
  ```
@@ -764,10 +1064,25 @@ type EventConfigBase = {
764
1064
  schema: string[]
765
1065
  attribute?: string[]
766
1066
  purpose?: string[]
1067
+ purpose_filters?: Array<{
1068
+ id: { ... }
1069
+ display_name: { ... }
1070
+ }>
767
1071
  }
768
1072
  enabled?: boolean
769
1073
  auto_trigger?: boolean
770
1074
  automation_trigger?: boolean
1075
+ automation_trigger_only?: boolean
1076
+ automation_trigger_seed_node?: string
1077
+ event_origin?: "builtin" | "custom"
1078
+ mapping?: {
1079
+ mode: "guided" | "jsonata"
1080
+ jsonata?: string
1081
+ }
1082
+ lineage?: {
1083
+ base_event_name: string
1084
+ base_event_version: string
1085
+ }
771
1086
  success_criteria?: Array<{
772
1087
  entity_schema: string
773
1088
  attribute: string
@@ -823,10 +1138,25 @@ type EventConfig = {
823
1138
  schema: string[]
824
1139
  attribute?: string[]
825
1140
  purpose?: string[]
1141
+ purpose_filters?: Array<{
1142
+ id: { ... }
1143
+ display_name: { ... }
1144
+ }>
826
1145
  }
827
1146
  enabled?: boolean
828
1147
  auto_trigger?: boolean
829
1148
  automation_trigger?: boolean
1149
+ automation_trigger_only?: boolean
1150
+ automation_trigger_seed_node?: string
1151
+ event_origin?: "builtin" | "custom"
1152
+ mapping?: {
1153
+ mode: "guided" | "jsonata"
1154
+ jsonata?: string
1155
+ }
1156
+ lineage?: {
1157
+ base_event_name: string
1158
+ base_event_version: string
1159
+ }
830
1160
  success_criteria?: Array<{
831
1161
  entity_schema: string
832
1162
  attribute: string
@@ -834,39 +1164,23 @@ type EventConfig = {
834
1164
  }
835
1165
  ```
836
1166
 
837
- ### `UpdateEventPayload`
838
-
839
- Payload for updating an event configuration.
840
- Accepts the same fields as EventConfig (all optional for PATCH).
841
- Currently `enabled`, `auto_trigger` and `success_criteria` fields are processed.
1167
+ ### `CreateCustomEventPayload`
842
1168
 
1169
+ Complete immutable custom-event v1.0 definition. Publication is a separate conditional action.
843
1170
 
844
1171
  ```ts
845
- type UpdateEventPayload = {
846
- event_name?: string
847
- event_title?: string
1172
+ type CreateCustomEventPayload = {
1173
+ event_name: string
1174
+ event_title: string
848
1175
  event_description?: string
849
- event_version?: string
850
- event_status?: "active" | "deprecated" | "draft" | "disabled"
851
1176
  event_tags?: string[]
852
- schema_fields?: Record<string, {
1177
+ schema_fields: Record<string, {
853
1178
  json_schema: object
854
1179
  required?: boolean
855
1180
  graph_source?: string
856
1181
  } | {
857
1182
  entity_schema: string
858
1183
  required?: boolean
859
- } | {
860
- items: {
861
- entity_id: { ... }
862
- filename?: { ... }
863
- mime_type?: { ... }
864
- size_bytes?: { ... }
865
- s3ref?: { ... }
866
- version_index: { ... }
867
- readable_size?: { ... }
868
- }
869
- required?: boolean
870
1184
  }>
871
1185
  entity_graph?: {
872
1186
  nodes: Array<{
@@ -885,10 +1199,94 @@ type UpdateEventPayload = {
885
1199
  schema: string[]
886
1200
  attribute?: string[]
887
1201
  purpose?: string[]
1202
+ purpose_filters?: Array<{
1203
+ id: { ... }
1204
+ display_name: { ... }
1205
+ }>
1206
+ }
1207
+ automation_trigger?: boolean
1208
+ mapping?: {
1209
+ mode: "guided" | "jsonata"
1210
+ jsonata?: string
888
1211
  }
1212
+ lineage?: {
1213
+ base_event_name: string
1214
+ base_event_version: string
1215
+ }
1216
+ example?: Record<string, unknown>
1217
+ }
1218
+ ```
1219
+
1220
+ ### `EventMapping`
1221
+
1222
+ Guided mappings use schema_fields graph_source expressions; raw mode evaluates one JSONata object transform.
1223
+
1224
+ ```ts
1225
+ type EventMapping = {
1226
+ mode: "guided" | "jsonata"
1227
+ jsonata?: string
1228
+ }
1229
+ ```
1230
+
1231
+ ### `CustomEventLineage`
1232
+
1233
+ Optional catalog lineage to a separately named base event. It does not replace the base event.
1234
+
1235
+ ```ts
1236
+ type CustomEventLineage = {
1237
+ base_event_name: string
1238
+ base_event_version: string
1239
+ }
1240
+ ```
1241
+
1242
+ ### `PurposeFilterSnapshot`
1243
+
1244
+ ```ts
1245
+ type PurposeFilterSnapshot = {
1246
+ id: string
1247
+ display_name: string
1248
+ }
1249
+ ```
1250
+
1251
+ ### `PublishCustomEventPayload`
1252
+
1253
+ ```ts
1254
+ type PublishCustomEventPayload = {
1255
+ enabled?: boolean
1256
+ auto_trigger?: boolean
1257
+ base_auto_trigger_enabled?: boolean
1258
+ }
1259
+ ```
1260
+
1261
+ ### `ValidationIssue`
1262
+
1263
+ ```ts
1264
+ type ValidationIssue = {
1265
+ path: string
1266
+ message: string
1267
+ }
1268
+ ```
1269
+
1270
+ ### `PreviewEventResponse`
1271
+
1272
+ ```ts
1273
+ type PreviewEventResponse = {
1274
+ payload: Record<string, unknown>
1275
+ errors: Array<{
1276
+ path: string
1277
+ message: string
1278
+ }>
1279
+ }
1280
+ ```
1281
+
1282
+ ### `UpdateEventPayload`
1283
+
1284
+ Mutable org activation overlay. Immutable event definition fields are not accepted.
1285
+
1286
+ ```ts
1287
+ type UpdateEventPayload = {
889
1288
  enabled?: boolean
890
1289
  auto_trigger?: boolean
891
- automation_trigger?: boolean
892
1290
  success_criteria?: Array<{
893
1291
  entity_schema: string
894
1292
  attribute: string
@@ -941,6 +1339,21 @@ type AttachmentField = {
941
1339
  }
942
1340
  ```
943
1341
 
1342
+ ### `CustomSchemaField`
1343
+
1344
+ Custom v1 fields support JSON Schema values and context entities; attachment semantics are built-in-only.
1345
+
1346
+ ```ts
1347
+ type CustomSchemaField = {
1348
+ json_schema: object
1349
+ required?: boolean
1350
+ graph_source?: string
1351
+ } | {
1352
+ entity_schema: string
1353
+ required?: boolean
1354
+ }
1355
+ ```
1356
+
944
1357
  ### `SchemaField`
945
1358
 
946
1359
  ```ts
@@ -1030,6 +1443,7 @@ type Event = {
1030
1443
  to: string
1031
1444
  jsonata: string
1032
1445
  }>
1446
+ _automation_chain?: string[]
1033
1447
  }
1034
1448
  ```
1035
1449
 
@@ -1113,6 +1527,10 @@ type EntityOperationTrigger = {
1113
1527
  schema: string[]
1114
1528
  attribute?: string[]
1115
1529
  purpose?: string[]
1530
+ purpose_filters?: Array<{
1531
+ id: string
1532
+ display_name: string
1533
+ }>
1116
1534
  }
1117
1535
  ```
1118
1536
 
@@ -1185,6 +1603,7 @@ type TriggerEventPayload = {
1185
1603
  skip_hydration?: string[]
1186
1604
  _trigger_source_type?: string
1187
1605
  _trigger_source?: string
1606
+ _automation_chain?: string[]
1188
1607
  }
1189
1608
  ```
1190
1609