@epilot/sdk 2.6.0 → 2.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/definitions/event-catalog-runtime.json +1 -1
- package/definitions/event-catalog.json +256 -1
- package/definitions/webhooks.json +19 -4
- package/dist/apis/access-token.cjs +6 -6
- package/dist/apis/access-token.js +1 -1
- package/dist/apis/address-suggestions.cjs +6 -6
- package/dist/apis/address-suggestions.js +1 -1
- package/dist/apis/address.cjs +6 -6
- package/dist/apis/address.js +1 -1
- package/dist/apis/ai-agents.cjs +6 -6
- package/dist/apis/ai-agents.js +1 -1
- package/dist/apis/app.cjs +6 -6
- package/dist/apis/app.js +1 -1
- package/dist/apis/audit-logs.cjs +6 -6
- package/dist/apis/audit-logs.js +1 -1
- package/dist/apis/automation.cjs +6 -6
- package/dist/apis/automation.js +1 -1
- package/dist/apis/billing.cjs +6 -6
- package/dist/apis/billing.js +1 -1
- package/dist/apis/blueprint-manifest.cjs +6 -6
- package/dist/apis/blueprint-manifest.js +1 -1
- package/dist/apis/calendar.cjs +6 -6
- package/dist/apis/calendar.js +1 -1
- package/dist/apis/configuration-hub.cjs +6 -6
- package/dist/apis/configuration-hub.js +1 -1
- package/dist/apis/consent.cjs +6 -6
- package/dist/apis/consent.js +1 -1
- package/dist/apis/customer-portal.cjs +6 -6
- package/dist/apis/customer-portal.js +1 -1
- package/dist/apis/dashboard.cjs +6 -6
- package/dist/apis/dashboard.js +1 -1
- package/dist/apis/data-governance.cjs +6 -6
- package/dist/apis/data-governance.js +1 -1
- package/dist/apis/deduplication.cjs +6 -6
- package/dist/apis/deduplication.js +1 -1
- package/dist/apis/design.cjs +6 -6
- package/dist/apis/design.js +1 -1
- package/dist/apis/document.cjs +6 -6
- package/dist/apis/document.js +1 -1
- package/dist/apis/email-settings.cjs +6 -6
- package/dist/apis/email-settings.js +1 -1
- package/dist/apis/email-template.cjs +6 -6
- package/dist/apis/email-template.js +1 -1
- package/dist/apis/entity-mapping.cjs +6 -6
- package/dist/apis/entity-mapping.js +1 -1
- package/dist/apis/entity.cjs +6 -6
- package/dist/apis/entity.js +1 -1
- package/dist/apis/environments.cjs +6 -6
- package/dist/apis/environments.js +1 -1
- package/dist/apis/event-catalog.cjs +8 -8
- package/dist/apis/event-catalog.d.cts +2 -2
- package/dist/apis/event-catalog.d.ts +2 -2
- package/dist/apis/event-catalog.js +2 -2
- package/dist/apis/file.cjs +6 -6
- package/dist/apis/file.js +1 -1
- package/dist/apis/iban.cjs +6 -6
- package/dist/apis/iban.js +1 -1
- package/dist/apis/integration-toolkit.cjs +6 -6
- package/dist/apis/integration-toolkit.js +1 -1
- package/dist/apis/journey.cjs +6 -6
- package/dist/apis/journey.js +1 -1
- package/dist/apis/kanban.cjs +6 -6
- package/dist/apis/kanban.js +1 -1
- package/dist/apis/message.cjs +6 -6
- package/dist/apis/message.js +1 -1
- package/dist/apis/metering.cjs +6 -6
- package/dist/apis/metering.js +1 -1
- package/dist/apis/notes.cjs +6 -6
- package/dist/apis/notes.js +1 -1
- package/dist/apis/notification.cjs +6 -6
- package/dist/apis/notification.js +1 -1
- package/dist/apis/organization.cjs +6 -6
- package/dist/apis/organization.js +1 -1
- package/dist/apis/partner-directory.cjs +6 -6
- package/dist/apis/partner-directory.js +1 -1
- package/dist/apis/permissions.cjs +6 -6
- package/dist/apis/permissions.js +1 -1
- package/dist/apis/pricing-tier.cjs +6 -6
- package/dist/apis/pricing-tier.js +1 -1
- package/dist/apis/pricing.cjs +6 -6
- package/dist/apis/pricing.js +1 -1
- package/dist/apis/purpose.cjs +6 -6
- package/dist/apis/purpose.js +1 -1
- package/dist/apis/query.cjs +6 -6
- package/dist/apis/query.js +1 -1
- package/dist/apis/sandbox.cjs +6 -6
- package/dist/apis/sandbox.js +1 -1
- package/dist/apis/sharing.cjs +6 -6
- package/dist/apis/sharing.js +1 -1
- package/dist/apis/submission.cjs +6 -6
- package/dist/apis/submission.js +1 -1
- package/dist/apis/target.cjs +6 -6
- package/dist/apis/target.js +1 -1
- package/dist/apis/targeting.cjs +6 -6
- package/dist/apis/targeting.js +1 -1
- package/dist/apis/template-variables.cjs +6 -6
- package/dist/apis/template-variables.js +1 -1
- package/dist/apis/user.cjs +6 -6
- package/dist/apis/user.js +1 -1
- package/dist/apis/validation-rules.cjs +6 -6
- package/dist/apis/validation-rules.js +1 -1
- package/dist/apis/webhooks.cjs +6 -6
- package/dist/apis/webhooks.d.cts +2 -2
- package/dist/apis/webhooks.d.ts +2 -2
- package/dist/apis/webhooks.js +1 -1
- package/dist/apis/workflow-definition.cjs +6 -6
- package/dist/apis/workflow-definition.js +1 -1
- package/dist/apis/workflow.cjs +6 -6
- package/dist/apis/workflow.js +1 -1
- package/dist/{chunk-SDIGGISZ.cjs → chunk-35CN2YFK.cjs} +3 -3
- package/dist/{chunk-BLNXQAMX.cjs → chunk-CBDKPGO5.cjs} +1 -1
- package/dist/{chunk-QNUU4TTU.js → chunk-JB7LITSP.js} +3 -3
- package/dist/{chunk-TME4YJNP.js → chunk-OCMIXJWC.js} +1 -1
- package/dist/event-catalog-37B6JC7G.js +7 -0
- package/dist/event-catalog-5JBHJJ2I.cjs +7 -0
- package/dist/{event-catalog-runtime-5HQSAJVX.cjs → event-catalog-runtime-B2BPKQVG.cjs} +2 -2
- package/dist/{event-catalog-runtime-6FA3SCRI.js → event-catalog-runtime-N262TQ3Y.js} +1 -1
- package/dist/{event-catalog.d-ENw6HO-w.d.cts → event-catalog.d-mQJLSYUo.d.cts} +351 -6
- package/dist/{event-catalog.d-ENw6HO-w.d.ts → event-catalog.d-mQJLSYUo.d.ts} +351 -6
- package/dist/index.cjs +10 -10
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/{webhooks-XLBUXXCS.js → webhooks-NZHJBT64.js} +1 -1
- package/dist/{webhooks-NZ3TM3AY.cjs → webhooks-SK2STDKR.cjs} +1 -1
- package/dist/{webhooks.d-D79qib9f.d.ts → webhooks.d-ByePoUWs.d.cts} +40 -4
- package/dist/{webhooks.d-D79qib9f.d.cts → webhooks.d-ByePoUWs.d.ts} +40 -4
- package/docs/event-catalog.md +247 -1
- package/docs/webhooks.md +3 -1
- package/package.json +1 -1
- package/dist/event-catalog-C45ISVMP.cjs +0 -7
- package/dist/event-catalog-D7VJ7WRS.js +0 -7
package/docs/event-catalog.md
CHANGED
|
@@ -31,6 +31,8 @@ const { data } = await eventCatalogClient.listEvents(...)
|
|
|
31
31
|
- [`getEventJSONSchema`](#geteventjsonschema)
|
|
32
32
|
- [`getEventExample`](#geteventexample)
|
|
33
33
|
- [`searchEventHistory`](#searcheventhistory)
|
|
34
|
+
- [`searchEventHistoryV2`](#searcheventhistoryv2)
|
|
35
|
+
- [`getHistoricalEvent`](#gethistoricalevent)
|
|
34
36
|
- [`triggerEvent`](#triggerevent)
|
|
35
37
|
|
|
36
38
|
**Schemas**
|
|
@@ -39,18 +41,22 @@ const { data } = await eventCatalogClient.listEvents(...)
|
|
|
39
41
|
- [`UpdateEventPayload`](#updateeventpayload)
|
|
40
42
|
- [`PrimitiveField`](#primitivefield)
|
|
41
43
|
- [`ContextEntity`](#contextentity)
|
|
44
|
+
- [`AttachmentField`](#attachmentfield)
|
|
42
45
|
- [`SchemaField`](#schemafield)
|
|
43
46
|
- [`CommonEventMetadata`](#commoneventmetadata)
|
|
44
47
|
- [`EventJsonSchema`](#eventjsonschema)
|
|
45
48
|
- [`Event`](#event)
|
|
49
|
+
- [`EventSummary`](#eventsummary)
|
|
46
50
|
- [`GraphDefinition`](#graphdefinition)
|
|
47
51
|
- [`GraphNode`](#graphnode)
|
|
48
52
|
- [`GraphEdge`](#graphedge)
|
|
49
53
|
- [`EntityOperationTrigger`](#entityoperationtrigger)
|
|
50
54
|
- [`SearchOptions`](#searchoptions)
|
|
55
|
+
- [`SearchOptionsV2`](#searchoptionsv2)
|
|
51
56
|
- [`FieldsParam`](#fieldsparam)
|
|
52
57
|
- [`TriggerEventPayload`](#triggereventpayload)
|
|
53
58
|
- [`TriggerEventResponse`](#triggereventresponse)
|
|
59
|
+
- [`EventAttachment`](#eventattachment)
|
|
54
60
|
|
|
55
61
|
### `listEvents`
|
|
56
62
|
|
|
@@ -470,6 +476,108 @@ const { data } = await client.searchEventHistory(
|
|
|
470
476
|
|
|
471
477
|
---
|
|
472
478
|
|
|
479
|
+
### `searchEventHistoryV2`
|
|
480
|
+
|
|
481
|
+
Paginated history of events with projected/lightweight payload (v2).
|
|
482
|
+
|
|
483
|
+
`POST /v2/events/{event_name}:history`
|
|
484
|
+
|
|
485
|
+
```ts
|
|
486
|
+
const { data } = await client.searchEventHistoryV2(
|
|
487
|
+
{
|
|
488
|
+
event_name: 'example',
|
|
489
|
+
},
|
|
490
|
+
{
|
|
491
|
+
limit: 10,
|
|
492
|
+
cursor: {
|
|
493
|
+
event_time: '2025-10-31 12:34:56',
|
|
494
|
+
event_id: 'evt_1234567890abcdef'
|
|
495
|
+
},
|
|
496
|
+
timestamp: {
|
|
497
|
+
from: '2025-10-01T00:00:00Z',
|
|
498
|
+
to: '2025-10-31T23:59:59Z'
|
|
499
|
+
},
|
|
500
|
+
event_id: 'evt_1234567890abcdef',
|
|
501
|
+
fields: ['_id', '_title', 'first_name', 'account', '!account.*._files', '**._product']
|
|
502
|
+
},
|
|
503
|
+
)
|
|
504
|
+
```
|
|
505
|
+
|
|
506
|
+
<details>
|
|
507
|
+
<summary>Response</summary>
|
|
508
|
+
|
|
509
|
+
```json
|
|
510
|
+
{
|
|
511
|
+
"results": [
|
|
512
|
+
{
|
|
513
|
+
"_org_id": "string",
|
|
514
|
+
"_event_time": "1970-01-01T00:00:00.000Z",
|
|
515
|
+
"_event_id": "string",
|
|
516
|
+
"_event_name": "string",
|
|
517
|
+
"_event_version": "1.0.0",
|
|
518
|
+
"_event_source": "string",
|
|
519
|
+
"_trigger_source_type": "api",
|
|
520
|
+
"_trigger_source": "string",
|
|
521
|
+
"_ack_id": "string"
|
|
522
|
+
}
|
|
523
|
+
],
|
|
524
|
+
"next_cursor": {
|
|
525
|
+
"event_time": "2025-10-31T12:34:56Z",
|
|
526
|
+
"event_id": "evt_1234567890abcdef"
|
|
527
|
+
}
|
|
528
|
+
}
|
|
529
|
+
```
|
|
530
|
+
|
|
531
|
+
</details>
|
|
532
|
+
|
|
533
|
+
---
|
|
534
|
+
|
|
535
|
+
### `getHistoricalEvent`
|
|
536
|
+
|
|
537
|
+
Fetch a single historical event by id with full hydration
|
|
538
|
+
|
|
539
|
+
`GET /v2/events/{event_name}/history/{event_id}`
|
|
540
|
+
|
|
541
|
+
```ts
|
|
542
|
+
const { data } = await client.getHistoricalEvent({
|
|
543
|
+
event_name: 'example',
|
|
544
|
+
event_id: 'example',
|
|
545
|
+
})
|
|
546
|
+
```
|
|
547
|
+
|
|
548
|
+
<details>
|
|
549
|
+
<summary>Response</summary>
|
|
550
|
+
|
|
551
|
+
```json
|
|
552
|
+
{
|
|
553
|
+
"_org_id": "org_123456",
|
|
554
|
+
"_event_time": "2024-01-01T12:00:00Z",
|
|
555
|
+
"_event_id": "01FZ4Z5FZ5FZ5FZ5FZ5FZ5FZ5F",
|
|
556
|
+
"_event_name": "MeterReading",
|
|
557
|
+
"_event_version": "1.0.0",
|
|
558
|
+
"_event_source": "api",
|
|
559
|
+
"_trigger_source_type": "api",
|
|
560
|
+
"_trigger_source": "user_123456",
|
|
561
|
+
"reading_value": 123.45,
|
|
562
|
+
"reading_date": "2024-01-01T11:59:00Z",
|
|
563
|
+
"read_by": "John Doe",
|
|
564
|
+
"reason": "regular",
|
|
565
|
+
"direction": "feed-out",
|
|
566
|
+
"source": "portal",
|
|
567
|
+
"meter_id": "550e8400-e29b-41d4-a716-446655440000",
|
|
568
|
+
"counter_id": "660e8400-e29b-41d4-a716-446655440000",
|
|
569
|
+
"meter_number": "MT123456789",
|
|
570
|
+
"obis_number": "1-0:1.8.0",
|
|
571
|
+
"unit": "kWh",
|
|
572
|
+
"customer_id": "770e8400-e29b-41d4-a716-446655440000",
|
|
573
|
+
"contract_id": "880e8400-e29b-41d4-a716-446655440000"
|
|
574
|
+
}
|
|
575
|
+
```
|
|
576
|
+
|
|
577
|
+
</details>
|
|
578
|
+
|
|
579
|
+
---
|
|
580
|
+
|
|
473
581
|
### `triggerEvent`
|
|
474
582
|
|
|
475
583
|
Explicitly trigger an event by providing input field values and an optional entity seed
|
|
@@ -531,6 +639,17 @@ type EventConfigBase = {
|
|
|
531
639
|
} | {
|
|
532
640
|
entity_schema: string
|
|
533
641
|
required?: boolean
|
|
642
|
+
} | {
|
|
643
|
+
items: {
|
|
644
|
+
entity_id: { ... }
|
|
645
|
+
filename?: { ... }
|
|
646
|
+
mime_type?: { ... }
|
|
647
|
+
size_bytes?: { ... }
|
|
648
|
+
s3ref?: { ... }
|
|
649
|
+
version_index: { ... }
|
|
650
|
+
readable_size?: { ... }
|
|
651
|
+
}
|
|
652
|
+
required?: boolean
|
|
534
653
|
}>
|
|
535
654
|
entity_graph?: {
|
|
536
655
|
nodes: Array<{
|
|
@@ -575,6 +694,17 @@ type EventConfig = {
|
|
|
575
694
|
} | {
|
|
576
695
|
entity_schema: string
|
|
577
696
|
required?: boolean
|
|
697
|
+
} | {
|
|
698
|
+
items: {
|
|
699
|
+
entity_id: { ... }
|
|
700
|
+
filename?: { ... }
|
|
701
|
+
mime_type?: { ... }
|
|
702
|
+
size_bytes?: { ... }
|
|
703
|
+
s3ref?: { ... }
|
|
704
|
+
version_index: { ... }
|
|
705
|
+
readable_size?: { ... }
|
|
706
|
+
}
|
|
707
|
+
required?: boolean
|
|
578
708
|
}>
|
|
579
709
|
entity_graph?: {
|
|
580
710
|
nodes: Array<{
|
|
@@ -604,7 +734,7 @@ type EventConfig = {
|
|
|
604
734
|
|
|
605
735
|
Payload for updating an event configuration.
|
|
606
736
|
Accepts the same fields as EventConfig (all optional for PATCH).
|
|
607
|
-
Currently
|
|
737
|
+
Currently `enabled` and `auto_trigger` fields are processed.
|
|
608
738
|
|
|
609
739
|
|
|
610
740
|
```ts
|
|
@@ -622,6 +752,17 @@ type UpdateEventPayload = {
|
|
|
622
752
|
} | {
|
|
623
753
|
entity_schema: string
|
|
624
754
|
required?: boolean
|
|
755
|
+
} | {
|
|
756
|
+
items: {
|
|
757
|
+
entity_id: { ... }
|
|
758
|
+
filename?: { ... }
|
|
759
|
+
mime_type?: { ... }
|
|
760
|
+
size_bytes?: { ... }
|
|
761
|
+
s3ref?: { ... }
|
|
762
|
+
version_index: { ... }
|
|
763
|
+
readable_size?: { ... }
|
|
764
|
+
}
|
|
765
|
+
required?: boolean
|
|
625
766
|
}>
|
|
626
767
|
entity_graph?: {
|
|
627
768
|
nodes: Array<{
|
|
@@ -668,6 +809,30 @@ type ContextEntity = {
|
|
|
668
809
|
}
|
|
669
810
|
```
|
|
670
811
|
|
|
812
|
+
### `AttachmentField`
|
|
813
|
+
|
|
814
|
+
A schema field representing file attachments associated with the event.
|
|
815
|
+
Present in schema_fields for events tagged with "attachment".
|
|
816
|
+
|
|
817
|
+
|
|
818
|
+
```ts
|
|
819
|
+
type AttachmentField = {
|
|
820
|
+
items: {
|
|
821
|
+
entity_id: string // uuid
|
|
822
|
+
filename?: string
|
|
823
|
+
mime_type?: string
|
|
824
|
+
size_bytes?: number
|
|
825
|
+
s3ref?: {
|
|
826
|
+
bucket: { ... }
|
|
827
|
+
key: { ... }
|
|
828
|
+
}
|
|
829
|
+
version_index: number
|
|
830
|
+
readable_size?: string
|
|
831
|
+
}
|
|
832
|
+
required?: boolean
|
|
833
|
+
}
|
|
834
|
+
```
|
|
835
|
+
|
|
671
836
|
### `SchemaField`
|
|
672
837
|
|
|
673
838
|
```ts
|
|
@@ -678,6 +843,20 @@ type SchemaField = {
|
|
|
678
843
|
} | {
|
|
679
844
|
entity_schema: string
|
|
680
845
|
required?: boolean
|
|
846
|
+
} | {
|
|
847
|
+
items: {
|
|
848
|
+
entity_id: string // uuid
|
|
849
|
+
filename?: string
|
|
850
|
+
mime_type?: string
|
|
851
|
+
size_bytes?: number
|
|
852
|
+
s3ref?: {
|
|
853
|
+
bucket: { ... }
|
|
854
|
+
key: { ... }
|
|
855
|
+
}
|
|
856
|
+
version_index: number
|
|
857
|
+
readable_size?: string
|
|
858
|
+
}
|
|
859
|
+
required?: boolean
|
|
681
860
|
}
|
|
682
861
|
```
|
|
683
862
|
|
|
@@ -715,6 +894,29 @@ type Event = {
|
|
|
715
894
|
}
|
|
716
895
|
```
|
|
717
896
|
|
|
897
|
+
### `EventSummary`
|
|
898
|
+
|
|
899
|
+
A lightweight event summary returned by the v2 history endpoint.
|
|
900
|
+
|
|
901
|
+
Includes the standard `_*` metadata fields plus a projected subset of the
|
|
902
|
+
event payload. Hydrated entity objects (values carrying `_schema` or `_id`
|
|
903
|
+
and arrays of such objects) are stripped — fetch via
|
|
904
|
+
`GET /v2/events/{event_name}/his
|
|
905
|
+
|
|
906
|
+
```ts
|
|
907
|
+
type EventSummary = {
|
|
908
|
+
_org_id: string
|
|
909
|
+
_event_time: string // date-time
|
|
910
|
+
_event_id: string
|
|
911
|
+
_event_name: string
|
|
912
|
+
_event_version: string
|
|
913
|
+
_event_source: string
|
|
914
|
+
_trigger_source_type?: string
|
|
915
|
+
_trigger_source?: string
|
|
916
|
+
_ack_id?: string
|
|
917
|
+
}
|
|
918
|
+
```
|
|
919
|
+
|
|
718
920
|
### `GraphDefinition`
|
|
719
921
|
|
|
720
922
|
Entity graph definition for resolving related entities
|
|
@@ -792,6 +994,31 @@ type SearchOptions = {
|
|
|
792
994
|
}
|
|
793
995
|
```
|
|
794
996
|
|
|
997
|
+
### `SearchOptionsV2`
|
|
998
|
+
|
|
999
|
+
Search options for the v2 history endpoint.
|
|
1000
|
+
|
|
1001
|
+
Extends `SearchOptions` with an optional `fields` projection. When `fields`
|
|
1002
|
+
is omitted, the response includes all `_*` metadata plus all scalar payload
|
|
1003
|
+
fields (and primitive arrays / empty objects/arrays) after entity stripping.
|
|
1004
|
+
When `fields` is provided,
|
|
1005
|
+
|
|
1006
|
+
```ts
|
|
1007
|
+
type SearchOptionsV2 = {
|
|
1008
|
+
limit?: number
|
|
1009
|
+
cursor?: {
|
|
1010
|
+
event_time?: string
|
|
1011
|
+
event_id?: string
|
|
1012
|
+
}
|
|
1013
|
+
timestamp?: {
|
|
1014
|
+
from?: string // date-time
|
|
1015
|
+
to?: string // date-time
|
|
1016
|
+
}
|
|
1017
|
+
event_id?: string
|
|
1018
|
+
fields?: string[]
|
|
1019
|
+
}
|
|
1020
|
+
```
|
|
1021
|
+
|
|
795
1022
|
### `FieldsParam`
|
|
796
1023
|
|
|
797
1024
|
List of entity fields to include or exclude in the response
|
|
@@ -833,3 +1060,22 @@ type TriggerEventResponse = {
|
|
|
833
1060
|
event_bridge_event_id?: string
|
|
834
1061
|
}
|
|
835
1062
|
```
|
|
1063
|
+
|
|
1064
|
+
### `EventAttachment`
|
|
1065
|
+
|
|
1066
|
+
A file attachment associated with an event
|
|
1067
|
+
|
|
1068
|
+
```ts
|
|
1069
|
+
type EventAttachment = {
|
|
1070
|
+
entity_id: string // uuid
|
|
1071
|
+
filename?: string
|
|
1072
|
+
mime_type?: string
|
|
1073
|
+
size_bytes?: number
|
|
1074
|
+
s3ref?: {
|
|
1075
|
+
bucket: string
|
|
1076
|
+
key: string
|
|
1077
|
+
}
|
|
1078
|
+
version_index: number
|
|
1079
|
+
readable_size?: string
|
|
1080
|
+
}
|
|
1081
|
+
```
|
package/docs/webhooks.md
CHANGED
|
@@ -875,7 +875,9 @@ type WebhookConfig = {
|
|
|
875
875
|
deliveryMode?: "json_base64" | "binary_multipart"
|
|
876
876
|
multipartConfig?: {
|
|
877
877
|
fileFieldName?: string
|
|
878
|
-
|
|
878
|
+
fileFieldStrategy?: "single" | "multi"
|
|
879
|
+
fileSource?: string
|
|
880
|
+
extraFields?: Record<string, string>
|
|
879
881
|
}
|
|
880
882
|
filterConditions?: {
|
|
881
883
|
conditions?: Array<{
|
package/package.json
CHANGED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-NJK5F5TF.cjs');
|
|
2
|
-
|
|
3
|
-
// src/docs/event-catalog.json
|
|
4
|
-
var event_catalog_default = '# Event Catalog API\n\n- **Base URL:** `https://event-catalog.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/event-catalog](https://docs.epilot.io/api/event-catalog)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.eventCatalog.listEvents(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/event-catalog\'\n\nconst eventCatalogClient = getClient()\nauthorize(eventCatalogClient, () => \'<token>\')\nconst { data } = await eventCatalogClient.listEvents(...)\n```\n\n## Operations\n\n**Event Catalog**\n- [`listEvents`](#listevents)\n- [`getEvent`](#getevent)\n- [`patchEvent`](#patchevent)\n- [`getEventJSONSchema`](#geteventjsonschema)\n- [`getEventExample`](#geteventexample)\n- [`searchEventHistory`](#searcheventhistory)\n- [`triggerEvent`](#triggerevent)\n\n**Schemas**\n- [`EventConfigBase`](#eventconfigbase)\n- [`EventConfig`](#eventconfig)\n- [`UpdateEventPayload`](#updateeventpayload)\n- [`PrimitiveField`](#primitivefield)\n- [`ContextEntity`](#contextentity)\n- [`SchemaField`](#schemafield)\n- [`CommonEventMetadata`](#commoneventmetadata)\n- [`EventJsonSchema`](#eventjsonschema)\n- [`Event`](#event)\n- [`GraphDefinition`](#graphdefinition)\n- [`GraphNode`](#graphnode)\n- [`GraphEdge`](#graphedge)\n- [`EntityOperationTrigger`](#entityoperationtrigger)\n- [`SearchOptions`](#searchoptions)\n- [`FieldsParam`](#fieldsparam)\n- [`TriggerEventPayload`](#triggereventpayload)\n- [`TriggerEventResponse`](#triggereventresponse)\n\n### `listEvents`\n\nRetrieve list of available business events\n\n`GET /v1/events`\n\n```ts\nconst { data } = await client.listEvents()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "event_name": "AddMeterReading",\n "event_title": "Add Meter Reading",\n "event_description": "Triggered when a new meter reading is added",\n "event_version": "1.0.0",\n "event_status": "active",\n "event_tags": ["builtin", "metering", "erp"],\n "schema_fields": {},\n "entity_graph": {\n "nodes": [\n {\n "id": "contact",\n "schema": "contact",\n "cardinality": "one",\n "fields": ["_id", "_title", "first_name", "account", "!account.*._files", "**._product"]\n }\n ],\n "edges": [\n {\n "from": "contact",\n "to": "billing_account"\n }\n ]\n },\n "entity_operation": {\n "operation": ["createEntity", "updateEntity"],\n "schema": ["contact", "contract", "order"],\n "attribute": ["email", "phone", "status"],\n "purpose": ["K\xFCndigung", "Umzug/Auszug"]\n },\n "enabled": true,\n "auto_trigger": true,\n "automation_trigger": true\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getEvent`\n\nRetrieve the configuration of a specific business event\n\n`GET /v1/events/{event_name}`\n\n```ts\nconst { data } = await client.getEvent({\n event_name: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "event_name": "AddMeterReading",\n "event_title": "Add Meter Reading",\n "event_description": "Triggered when a new meter reading is added",\n "event_version": "1.0.0",\n "event_status": "active",\n "event_tags": ["builtin", "metering", "erp"],\n "schema_fields": {},\n "entity_graph": {\n "nodes": [\n {\n "id": "contact",\n "schema": "contact",\n "cardinality": "one",\n "fields": ["_id", "_title", "first_name", "account", "!account.*._files", "**._product"]\n }\n ],\n "edges": [\n {\n "from": "contact",\n "to": "billing_account"\n }\n ]\n },\n "entity_operation": {\n "operation": ["createEntity", "updateEntity"],\n "schema": ["contact", "contract", "order"],\n "attribute": ["email", "phone", "status"],\n "purpose": ["K\xFCndigung", "Umzug/Auszug"]\n },\n "enabled": true,\n "auto_trigger": true,\n "automation_trigger": true\n}\n```\n\n</details>\n\n---\n\n### `patchEvent`\n\nUpdate the configuration of a specific business event for the organization\n\n`PATCH /v1/events/{event_name}`\n\n```ts\nconst { data } = await client.patchEvent(\n {\n event_name: \'example\',\n },\n {\n event_name: \'AddMeterReading\',\n event_title: \'Add Meter Reading\',\n event_description: \'Triggered when a new meter reading is added\',\n event_version: \'1.0.0\',\n event_status: \'active\',\n event_tags: [\'builtin\', \'metering\', \'erp\'],\n schema_fields: {},\n entity_graph: {\n nodes: [\n {\n id: \'contact\',\n schema: \'contact\',\n cardinality: \'one\',\n fields: [\'_id\', \'_title\', \'first_name\', \'account\', \'!account.*._files\', \'**._product\']\n }\n ],\n edges: [\n {\n from: \'contact\',\n to: \'billing_account\'\n }\n ]\n },\n entity_operation: {\n operation: [\'createEntity\', \'updateEntity\'],\n schema: [\'contact\', \'contract\', \'order\'],\n attribute: [\'email\', \'phone\', \'status\'],\n purpose: [\'K\xFCndigung\', \'Umzug/Auszug\']\n },\n enabled: true,\n auto_trigger: true,\n automation_trigger: true\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "event_name": "AddMeterReading",\n "event_title": "Add Meter Reading",\n "event_description": "Triggered when a new meter reading is added",\n "event_version": "1.0.0",\n "event_status": "active",\n "event_tags": ["builtin", "metering", "erp"],\n "schema_fields": {},\n "entity_graph": {\n "nodes": [\n {\n "id": "contact",\n "schema": "contact",\n "cardinality": "one",\n "fields": ["_id", "_title", "first_name", "account", "!account.*._files", "**._product"]\n }\n ],\n "edges": [\n {\n "from": "contact",\n "to": "billing_account"\n }\n ]\n },\n "entity_operation": {\n "operation": ["createEntity", "updateEntity"],\n "schema": ["contact", "contract", "order"],\n "attribute": ["email", "phone", "status"],\n "purpose": ["K\xFCndigung", "Umzug/Auszug"]\n },\n "enabled": true,\n "auto_trigger": true,\n "automation_trigger": true\n}\n```\n\n</details>\n\n---\n\n### `getEventJSONSchema`\n\nRetrieve the JSON Schema of a specific business event\n\n`GET /v1/events/{event_name}/json_schema`\n\n```ts\nconst { data } = await client.getEventJSONSchema({\n event_name: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "type": "object",\n "properties": {\n "_org_id": {\n "type": "string",\n "description": "epilot tenant/organization ID"\n },\n "_event_time": {\n "type": "string",\n "format": "date-time",\n "description": "ISO 8601 timestamp when event occurred"\n },\n "_event_id": {\n "type": "string",\n "description": "Unique event identifier (ULID)"\n },\n "_event_name": {\n "type": "string",\n "description": "Event name from catalog"\n },\n "_event_version": {\n "type": "string",\n "description": "Event version (semver)"\n },\n "_event_source": {\n "type": "string",\n "description": "Source that triggered the event"\n },\n "reading_value": {\n "type": "number",\n "description": "The meter reading value"\n },\n "reading_date": {\n "type": "string",\n "format": "date-time",\n "description": "ISO 8601 timestamp when reading was taken"\n },\n "read_by": {\n "type": "string",\n "description": "Name or identifier of who submitted the reading"\n },\n "reason": {\n "type": "string",\n "enum": ["regular", "move-in", "move-out", "supplier-change", "correction", "final"],\n "description": "Reason for the meter reading"\n },\n "direction": {\n "type": "string",\n "enum": ["feed-in", "feed-out"],\n "description": "Direction of energy flow"\n },\n "source": {\n "type": "string",\n "enum": ["portal", "360", "api", "automation"],\n "description": "Source system where reading was submitted"\n },\n "meter_id": {\n "type": "string",\n "format": "uuid",\n "description": "Entity ID of the meter"\n },\n "counter_id": {\n "type": "string",\n "format": "uuid",\n "description": "Entity ID of the meter counter"\n },\n "meter_number": {\n "type": "string",\n "description": "Human-readable meter number"\n },\n "obis_number": {\n "type": "string",\n "description": "OBIS code of the counter"\n },\n "unit": {\n "type": "string",\n "description": "Unit of measurement (e.g., kWh, m3)"\n },\n "customer_id": {\n "type": "string",\n "format": "uuid",\n "description": "Entity ID of the customer"\n },\n "contract_id": {\n "type": "string",\n "format": "uuid",\n "description": "Entity ID of the contract"\n },\n "user_id": {\n "type": "string",\n "description": "ID of the user who submitted the reading"\n },\n "user_email": {\n "type": "string",\n "format": "email",\n "description": "Email of the user who submitted the reading"\n }\n },\n "required": ["_org_id", "_event_time", "_event_id", "_event_name", "_event_version", "_event_source", "reading_value", "reading_date", "read_by", "reason", "direction", "source", "meter_id", "counter_id", "meter_number", "obis_number", "unit", "customer_id", "contract_id"]\n}\n```\n\n</details>\n\n---\n\n### `getEventExample`\n\nGenerate a sample event payload based on the event\'s JSON Schema\n\n`GET /v1/events/{event_name}/example`\n\n```ts\nconst { data } = await client.getEventExample({\n event_name: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{}\n```\n\n</details>\n\n---\n\n### `searchEventHistory`\n\nPaginated history of events\n\n`POST /v1/events/{event_name}:history`\n\n```ts\nconst { data } = await client.searchEventHistory(\n {\n event_name: \'example\',\n },\n {\n limit: 10,\n cursor: {\n event_time: \'2025-10-31 12:34:56\',\n event_id: \'evt_1234567890abcdef\'\n },\n timestamp: {\n from: \'2025-10-01T00:00:00Z\',\n to: \'2025-10-31T23:59:59Z\'\n },\n event_id: \'evt_1234567890abcdef\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "_org_id": "org_123456",\n "_event_time": "2024-01-01T12:00:00Z",\n "_event_id": "01FZ4Z5FZ5FZ5FZ5FZ5FZ5FZ5F",\n "_event_name": "MeterReading",\n "_event_version": "1.0.0",\n "_event_source": "api",\n "_trigger_source_type": "api",\n "_trigger_source": "user_123456",\n "reading_value": 123.45,\n "reading_date": "2024-01-01T11:59:00Z",\n "read_by": "John Doe",\n "reason": "regular",\n "direction": "feed-out",\n "source": "portal",\n "meter_id": "550e8400-e29b-41d4-a716-446655440000",\n "counter_id": "660e8400-e29b-41d4-a716-446655440000",\n "meter_number": "MT123456789",\n "obis_number": "1-0:1.8.0",\n "unit": "kWh",\n "customer_id": "770e8400-e29b-41d4-a716-446655440000",\n "contract_id": "880e8400-e29b-41d4-a716-446655440000"\n }\n ],\n "next_cursor": {\n "event_time": "2025-10-31T12:34:56Z",\n "event_id": "evt_1234567890abcdef"\n }\n}\n```\n\n</details>\n\n---\n\n### `triggerEvent`\n\nExplicitly trigger an event by providing input field values and an optional entity seed\nfor graph hydration. The event must be enabled for the organization.\n\n`POST /v1/events/{event_name}:trigger`\n\n```ts\nconst { data } = await client.triggerEvent(\n {\n event_name: \'example\',\n },\n {\n seed: {\n entity_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n node_id: \'string\'\n },\n fields: {},\n skip_hydration: [\'string\'],\n _trigger_source_type: \'string\',\n _trigger_source: \'string\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "success": true,\n "event_id": "string",\n "event_bridge_event_id": "string"\n}\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `EventConfigBase`\n\nBase properties shared between EventConfig and UpdateEventPayload\n\n```ts\ntype EventConfigBase = {\n event_name?: string\n event_title?: string\n event_description?: string\n event_version?: string\n event_status?: "active" | "deprecated" | "draft" | "disabled"\n event_tags?: string[]\n schema_fields?: Record<string, {\n json_schema: object\n required?: boolean\n graph_source?: string\n } | {\n entity_schema: string\n required?: boolean\n }>\n entity_graph?: {\n nodes: Array<{\n id: { ... }\n schema: { ... }\n cardinality?: { ... }\n fields?: { ... }\n }>\n edges: Array<{\n from: { ... }\n to: { ... }\n }>\n }\n entity_operation?: {\n operation: "createEntity" | "updateEntity" | "deleteEntity"[]\n schema: string[]\n attribute?: string[]\n purpose?: string[]\n }\n enabled?: boolean\n auto_trigger?: boolean\n automation_trigger?: boolean\n}\n```\n\n### `EventConfig`\n\nEvent configuration with required fields\n\n```ts\ntype EventConfig = {\n event_name: string\n event_title?: string\n event_description?: string\n event_version: string\n event_status?: "active" | "deprecated" | "draft" | "disabled"\n event_tags?: string[]\n schema_fields: Record<string, {\n json_schema: object\n required?: boolean\n graph_source?: string\n } | {\n entity_schema: string\n required?: boolean\n }>\n entity_graph?: {\n nodes: Array<{\n id: { ... }\n schema: { ... }\n cardinality?: { ... }\n fields?: { ... }\n }>\n edges: Array<{\n from: { ... }\n to: { ... }\n }>\n }\n entity_operation?: {\n operation: "createEntity" | "updateEntity" | "deleteEntity"[]\n schema: string[]\n attribute?: string[]\n purpose?: string[]\n }\n enabled?: boolean\n auto_trigger?: boolean\n automation_trigger?: boolean\n}\n```\n\n### `UpdateEventPayload`\n\nPayload for updating an event configuration.\nAccepts the same fields as EventConfig (all optional for PATCH).\nCurrently only `enabled` and `auto_trigger` fields are processed, other fields are ignored.\n\n\n```ts\ntype UpdateEventPayload = {\n event_name?: string\n event_title?: string\n event_description?: string\n event_version?: string\n event_status?: "active" | "deprecated" | "draft" | "disabled"\n event_tags?: string[]\n schema_fields?: Record<string, {\n json_schema: object\n required?: boolean\n graph_source?: string\n } | {\n entity_schema: string\n required?: boolean\n }>\n entity_graph?: {\n nodes: Array<{\n id: { ... }\n schema: { ... }\n cardinality?: { ... }\n fields?: { ... }\n }>\n edges: Array<{\n from: { ... }\n to: { ... }\n }>\n }\n entity_operation?: {\n operation: "createEntity" | "updateEntity" | "deleteEntity"[]\n schema: string[]\n attribute?: string[]\n purpose?: string[]\n }\n enabled?: boolean\n auto_trigger?: boolean\n automation_trigger?: boolean\n}\n```\n\n### `PrimitiveField`\n\nA primitive JSON Schema field definition\n\n```ts\ntype PrimitiveField = {\n json_schema: object\n required?: boolean\n graph_source?: string\n}\n```\n\n### `ContextEntity`\n\n```ts\ntype ContextEntity = {\n entity_schema: string\n required?: boolean\n}\n```\n\n### `SchemaField`\n\n```ts\ntype SchemaField = {\n json_schema: object\n required?: boolean\n graph_source?: string\n} | {\n entity_schema: string\n required?: boolean\n}\n```\n\n### `CommonEventMetadata`\n\nCommon metadata fields present in all event payloads\n\n```ts\ntype CommonEventMetadata = object\n```\n\n### `EventJsonSchema`\n\nJSON Schema declaring the event payload structure\n\n```ts\ntype EventJsonSchema = object\n```\n\n### `Event`\n\nAn event instance in the event history\n\n```ts\ntype Event = {\n _org_id: string\n _event_time: string // date-time\n _event_id: string\n _event_name: string\n _event_version: string\n _event_source: string\n _trigger_source_type?: string\n _trigger_source?: string\n _ack_id?: string\n}\n```\n\n### `GraphDefinition`\n\nEntity graph definition for resolving related entities\n\n```ts\ntype GraphDefinition = {\n nodes: Array<{\n id: string\n schema: string\n cardinality?: "one" | "many"\n fields?: object\n }>\n edges: Array<{\n from: string\n to: string\n }>\n}\n```\n\n### `GraphNode`\n\nA node in the entity graph\n\n```ts\ntype GraphNode = {\n id: string\n schema: string\n cardinality?: "one" | "many"\n fields?: object\n}\n```\n\n### `GraphEdge`\n\nAn edge connecting two nodes in the graph\n\n```ts\ntype GraphEdge = {\n from: string\n to: string\n}\n```\n\n### `EntityOperationTrigger`\n\nConfiguration for triggering an event based on entity operations.\n\nWhen an entity operation matches the configured criteria, the event will be triggered.\n- On createEntity: the attribute must be present in the entity payload\n- On updateEntity: the attribute must be in diff.added, diff.updated, or di\n\n```ts\ntype EntityOperationTrigger = {\n operation: "createEntity" | "updateEntity" | "deleteEntity"[]\n schema: string[]\n attribute?: string[]\n purpose?: string[]\n}\n```\n\n### `SearchOptions`\n\n```ts\ntype SearchOptions = {\n limit?: number\n cursor?: {\n event_time?: string\n event_id?: string\n }\n timestamp?: {\n from?: string // date-time\n to?: string // date-time\n }\n event_id?: string\n}\n```\n\n### `FieldsParam`\n\nList of entity fields to include or exclude in the response\n\nUse ! to exclude fields, e.g. `!_id` to exclude the `_id` field.\n\nGlobbing and globstart (**) is supported for nested fields.\n\n\n```ts\ntype FieldsParam = string[]\n```\n\n### `TriggerEventPayload`\n\nPayload for explicitly triggering an event via API\n\n```ts\ntype TriggerEventPayload = {\n seed?: {\n entity_id: string // uuid\n node_id: string\n }\n fields?: Record<string, unknown>\n skip_hydration?: string[]\n _trigger_source_type?: string\n _trigger_source?: string\n}\n```\n\n### `TriggerEventResponse`\n\nResponse from triggering an event\n\n```ts\ntype TriggerEventResponse = {\n success: boolean\n event_id: string\n event_bridge_event_id?: string\n}\n```\n';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
exports.default = event_catalog_default;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import "./chunk-YPSWSI3M.js";
|
|
2
|
-
|
|
3
|
-
// src/docs/event-catalog.json
|
|
4
|
-
var event_catalog_default = '# Event Catalog API\n\n- **Base URL:** `https://event-catalog.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/event-catalog](https://docs.epilot.io/api/event-catalog)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.eventCatalog.listEvents(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/event-catalog\'\n\nconst eventCatalogClient = getClient()\nauthorize(eventCatalogClient, () => \'<token>\')\nconst { data } = await eventCatalogClient.listEvents(...)\n```\n\n## Operations\n\n**Event Catalog**\n- [`listEvents`](#listevents)\n- [`getEvent`](#getevent)\n- [`patchEvent`](#patchevent)\n- [`getEventJSONSchema`](#geteventjsonschema)\n- [`getEventExample`](#geteventexample)\n- [`searchEventHistory`](#searcheventhistory)\n- [`triggerEvent`](#triggerevent)\n\n**Schemas**\n- [`EventConfigBase`](#eventconfigbase)\n- [`EventConfig`](#eventconfig)\n- [`UpdateEventPayload`](#updateeventpayload)\n- [`PrimitiveField`](#primitivefield)\n- [`ContextEntity`](#contextentity)\n- [`SchemaField`](#schemafield)\n- [`CommonEventMetadata`](#commoneventmetadata)\n- [`EventJsonSchema`](#eventjsonschema)\n- [`Event`](#event)\n- [`GraphDefinition`](#graphdefinition)\n- [`GraphNode`](#graphnode)\n- [`GraphEdge`](#graphedge)\n- [`EntityOperationTrigger`](#entityoperationtrigger)\n- [`SearchOptions`](#searchoptions)\n- [`FieldsParam`](#fieldsparam)\n- [`TriggerEventPayload`](#triggereventpayload)\n- [`TriggerEventResponse`](#triggereventresponse)\n\n### `listEvents`\n\nRetrieve list of available business events\n\n`GET /v1/events`\n\n```ts\nconst { data } = await client.listEvents()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "event_name": "AddMeterReading",\n "event_title": "Add Meter Reading",\n "event_description": "Triggered when a new meter reading is added",\n "event_version": "1.0.0",\n "event_status": "active",\n "event_tags": ["builtin", "metering", "erp"],\n "schema_fields": {},\n "entity_graph": {\n "nodes": [\n {\n "id": "contact",\n "schema": "contact",\n "cardinality": "one",\n "fields": ["_id", "_title", "first_name", "account", "!account.*._files", "**._product"]\n }\n ],\n "edges": [\n {\n "from": "contact",\n "to": "billing_account"\n }\n ]\n },\n "entity_operation": {\n "operation": ["createEntity", "updateEntity"],\n "schema": ["contact", "contract", "order"],\n "attribute": ["email", "phone", "status"],\n "purpose": ["K\xFCndigung", "Umzug/Auszug"]\n },\n "enabled": true,\n "auto_trigger": true,\n "automation_trigger": true\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getEvent`\n\nRetrieve the configuration of a specific business event\n\n`GET /v1/events/{event_name}`\n\n```ts\nconst { data } = await client.getEvent({\n event_name: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "event_name": "AddMeterReading",\n "event_title": "Add Meter Reading",\n "event_description": "Triggered when a new meter reading is added",\n "event_version": "1.0.0",\n "event_status": "active",\n "event_tags": ["builtin", "metering", "erp"],\n "schema_fields": {},\n "entity_graph": {\n "nodes": [\n {\n "id": "contact",\n "schema": "contact",\n "cardinality": "one",\n "fields": ["_id", "_title", "first_name", "account", "!account.*._files", "**._product"]\n }\n ],\n "edges": [\n {\n "from": "contact",\n "to": "billing_account"\n }\n ]\n },\n "entity_operation": {\n "operation": ["createEntity", "updateEntity"],\n "schema": ["contact", "contract", "order"],\n "attribute": ["email", "phone", "status"],\n "purpose": ["K\xFCndigung", "Umzug/Auszug"]\n },\n "enabled": true,\n "auto_trigger": true,\n "automation_trigger": true\n}\n```\n\n</details>\n\n---\n\n### `patchEvent`\n\nUpdate the configuration of a specific business event for the organization\n\n`PATCH /v1/events/{event_name}`\n\n```ts\nconst { data } = await client.patchEvent(\n {\n event_name: \'example\',\n },\n {\n event_name: \'AddMeterReading\',\n event_title: \'Add Meter Reading\',\n event_description: \'Triggered when a new meter reading is added\',\n event_version: \'1.0.0\',\n event_status: \'active\',\n event_tags: [\'builtin\', \'metering\', \'erp\'],\n schema_fields: {},\n entity_graph: {\n nodes: [\n {\n id: \'contact\',\n schema: \'contact\',\n cardinality: \'one\',\n fields: [\'_id\', \'_title\', \'first_name\', \'account\', \'!account.*._files\', \'**._product\']\n }\n ],\n edges: [\n {\n from: \'contact\',\n to: \'billing_account\'\n }\n ]\n },\n entity_operation: {\n operation: [\'createEntity\', \'updateEntity\'],\n schema: [\'contact\', \'contract\', \'order\'],\n attribute: [\'email\', \'phone\', \'status\'],\n purpose: [\'K\xFCndigung\', \'Umzug/Auszug\']\n },\n enabled: true,\n auto_trigger: true,\n automation_trigger: true\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "event_name": "AddMeterReading",\n "event_title": "Add Meter Reading",\n "event_description": "Triggered when a new meter reading is added",\n "event_version": "1.0.0",\n "event_status": "active",\n "event_tags": ["builtin", "metering", "erp"],\n "schema_fields": {},\n "entity_graph": {\n "nodes": [\n {\n "id": "contact",\n "schema": "contact",\n "cardinality": "one",\n "fields": ["_id", "_title", "first_name", "account", "!account.*._files", "**._product"]\n }\n ],\n "edges": [\n {\n "from": "contact",\n "to": "billing_account"\n }\n ]\n },\n "entity_operation": {\n "operation": ["createEntity", "updateEntity"],\n "schema": ["contact", "contract", "order"],\n "attribute": ["email", "phone", "status"],\n "purpose": ["K\xFCndigung", "Umzug/Auszug"]\n },\n "enabled": true,\n "auto_trigger": true,\n "automation_trigger": true\n}\n```\n\n</details>\n\n---\n\n### `getEventJSONSchema`\n\nRetrieve the JSON Schema of a specific business event\n\n`GET /v1/events/{event_name}/json_schema`\n\n```ts\nconst { data } = await client.getEventJSONSchema({\n event_name: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "type": "object",\n "properties": {\n "_org_id": {\n "type": "string",\n "description": "epilot tenant/organization ID"\n },\n "_event_time": {\n "type": "string",\n "format": "date-time",\n "description": "ISO 8601 timestamp when event occurred"\n },\n "_event_id": {\n "type": "string",\n "description": "Unique event identifier (ULID)"\n },\n "_event_name": {\n "type": "string",\n "description": "Event name from catalog"\n },\n "_event_version": {\n "type": "string",\n "description": "Event version (semver)"\n },\n "_event_source": {\n "type": "string",\n "description": "Source that triggered the event"\n },\n "reading_value": {\n "type": "number",\n "description": "The meter reading value"\n },\n "reading_date": {\n "type": "string",\n "format": "date-time",\n "description": "ISO 8601 timestamp when reading was taken"\n },\n "read_by": {\n "type": "string",\n "description": "Name or identifier of who submitted the reading"\n },\n "reason": {\n "type": "string",\n "enum": ["regular", "move-in", "move-out", "supplier-change", "correction", "final"],\n "description": "Reason for the meter reading"\n },\n "direction": {\n "type": "string",\n "enum": ["feed-in", "feed-out"],\n "description": "Direction of energy flow"\n },\n "source": {\n "type": "string",\n "enum": ["portal", "360", "api", "automation"],\n "description": "Source system where reading was submitted"\n },\n "meter_id": {\n "type": "string",\n "format": "uuid",\n "description": "Entity ID of the meter"\n },\n "counter_id": {\n "type": "string",\n "format": "uuid",\n "description": "Entity ID of the meter counter"\n },\n "meter_number": {\n "type": "string",\n "description": "Human-readable meter number"\n },\n "obis_number": {\n "type": "string",\n "description": "OBIS code of the counter"\n },\n "unit": {\n "type": "string",\n "description": "Unit of measurement (e.g., kWh, m3)"\n },\n "customer_id": {\n "type": "string",\n "format": "uuid",\n "description": "Entity ID of the customer"\n },\n "contract_id": {\n "type": "string",\n "format": "uuid",\n "description": "Entity ID of the contract"\n },\n "user_id": {\n "type": "string",\n "description": "ID of the user who submitted the reading"\n },\n "user_email": {\n "type": "string",\n "format": "email",\n "description": "Email of the user who submitted the reading"\n }\n },\n "required": ["_org_id", "_event_time", "_event_id", "_event_name", "_event_version", "_event_source", "reading_value", "reading_date", "read_by", "reason", "direction", "source", "meter_id", "counter_id", "meter_number", "obis_number", "unit", "customer_id", "contract_id"]\n}\n```\n\n</details>\n\n---\n\n### `getEventExample`\n\nGenerate a sample event payload based on the event\'s JSON Schema\n\n`GET /v1/events/{event_name}/example`\n\n```ts\nconst { data } = await client.getEventExample({\n event_name: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{}\n```\n\n</details>\n\n---\n\n### `searchEventHistory`\n\nPaginated history of events\n\n`POST /v1/events/{event_name}:history`\n\n```ts\nconst { data } = await client.searchEventHistory(\n {\n event_name: \'example\',\n },\n {\n limit: 10,\n cursor: {\n event_time: \'2025-10-31 12:34:56\',\n event_id: \'evt_1234567890abcdef\'\n },\n timestamp: {\n from: \'2025-10-01T00:00:00Z\',\n to: \'2025-10-31T23:59:59Z\'\n },\n event_id: \'evt_1234567890abcdef\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "_org_id": "org_123456",\n "_event_time": "2024-01-01T12:00:00Z",\n "_event_id": "01FZ4Z5FZ5FZ5FZ5FZ5FZ5FZ5F",\n "_event_name": "MeterReading",\n "_event_version": "1.0.0",\n "_event_source": "api",\n "_trigger_source_type": "api",\n "_trigger_source": "user_123456",\n "reading_value": 123.45,\n "reading_date": "2024-01-01T11:59:00Z",\n "read_by": "John Doe",\n "reason": "regular",\n "direction": "feed-out",\n "source": "portal",\n "meter_id": "550e8400-e29b-41d4-a716-446655440000",\n "counter_id": "660e8400-e29b-41d4-a716-446655440000",\n "meter_number": "MT123456789",\n "obis_number": "1-0:1.8.0",\n "unit": "kWh",\n "customer_id": "770e8400-e29b-41d4-a716-446655440000",\n "contract_id": "880e8400-e29b-41d4-a716-446655440000"\n }\n ],\n "next_cursor": {\n "event_time": "2025-10-31T12:34:56Z",\n "event_id": "evt_1234567890abcdef"\n }\n}\n```\n\n</details>\n\n---\n\n### `triggerEvent`\n\nExplicitly trigger an event by providing input field values and an optional entity seed\nfor graph hydration. The event must be enabled for the organization.\n\n`POST /v1/events/{event_name}:trigger`\n\n```ts\nconst { data } = await client.triggerEvent(\n {\n event_name: \'example\',\n },\n {\n seed: {\n entity_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n node_id: \'string\'\n },\n fields: {},\n skip_hydration: [\'string\'],\n _trigger_source_type: \'string\',\n _trigger_source: \'string\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "success": true,\n "event_id": "string",\n "event_bridge_event_id": "string"\n}\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `EventConfigBase`\n\nBase properties shared between EventConfig and UpdateEventPayload\n\n```ts\ntype EventConfigBase = {\n event_name?: string\n event_title?: string\n event_description?: string\n event_version?: string\n event_status?: "active" | "deprecated" | "draft" | "disabled"\n event_tags?: string[]\n schema_fields?: Record<string, {\n json_schema: object\n required?: boolean\n graph_source?: string\n } | {\n entity_schema: string\n required?: boolean\n }>\n entity_graph?: {\n nodes: Array<{\n id: { ... }\n schema: { ... }\n cardinality?: { ... }\n fields?: { ... }\n }>\n edges: Array<{\n from: { ... }\n to: { ... }\n }>\n }\n entity_operation?: {\n operation: "createEntity" | "updateEntity" | "deleteEntity"[]\n schema: string[]\n attribute?: string[]\n purpose?: string[]\n }\n enabled?: boolean\n auto_trigger?: boolean\n automation_trigger?: boolean\n}\n```\n\n### `EventConfig`\n\nEvent configuration with required fields\n\n```ts\ntype EventConfig = {\n event_name: string\n event_title?: string\n event_description?: string\n event_version: string\n event_status?: "active" | "deprecated" | "draft" | "disabled"\n event_tags?: string[]\n schema_fields: Record<string, {\n json_schema: object\n required?: boolean\n graph_source?: string\n } | {\n entity_schema: string\n required?: boolean\n }>\n entity_graph?: {\n nodes: Array<{\n id: { ... }\n schema: { ... }\n cardinality?: { ... }\n fields?: { ... }\n }>\n edges: Array<{\n from: { ... }\n to: { ... }\n }>\n }\n entity_operation?: {\n operation: "createEntity" | "updateEntity" | "deleteEntity"[]\n schema: string[]\n attribute?: string[]\n purpose?: string[]\n }\n enabled?: boolean\n auto_trigger?: boolean\n automation_trigger?: boolean\n}\n```\n\n### `UpdateEventPayload`\n\nPayload for updating an event configuration.\nAccepts the same fields as EventConfig (all optional for PATCH).\nCurrently only `enabled` and `auto_trigger` fields are processed, other fields are ignored.\n\n\n```ts\ntype UpdateEventPayload = {\n event_name?: string\n event_title?: string\n event_description?: string\n event_version?: string\n event_status?: "active" | "deprecated" | "draft" | "disabled"\n event_tags?: string[]\n schema_fields?: Record<string, {\n json_schema: object\n required?: boolean\n graph_source?: string\n } | {\n entity_schema: string\n required?: boolean\n }>\n entity_graph?: {\n nodes: Array<{\n id: { ... }\n schema: { ... }\n cardinality?: { ... }\n fields?: { ... }\n }>\n edges: Array<{\n from: { ... }\n to: { ... }\n }>\n }\n entity_operation?: {\n operation: "createEntity" | "updateEntity" | "deleteEntity"[]\n schema: string[]\n attribute?: string[]\n purpose?: string[]\n }\n enabled?: boolean\n auto_trigger?: boolean\n automation_trigger?: boolean\n}\n```\n\n### `PrimitiveField`\n\nA primitive JSON Schema field definition\n\n```ts\ntype PrimitiveField = {\n json_schema: object\n required?: boolean\n graph_source?: string\n}\n```\n\n### `ContextEntity`\n\n```ts\ntype ContextEntity = {\n entity_schema: string\n required?: boolean\n}\n```\n\n### `SchemaField`\n\n```ts\ntype SchemaField = {\n json_schema: object\n required?: boolean\n graph_source?: string\n} | {\n entity_schema: string\n required?: boolean\n}\n```\n\n### `CommonEventMetadata`\n\nCommon metadata fields present in all event payloads\n\n```ts\ntype CommonEventMetadata = object\n```\n\n### `EventJsonSchema`\n\nJSON Schema declaring the event payload structure\n\n```ts\ntype EventJsonSchema = object\n```\n\n### `Event`\n\nAn event instance in the event history\n\n```ts\ntype Event = {\n _org_id: string\n _event_time: string // date-time\n _event_id: string\n _event_name: string\n _event_version: string\n _event_source: string\n _trigger_source_type?: string\n _trigger_source?: string\n _ack_id?: string\n}\n```\n\n### `GraphDefinition`\n\nEntity graph definition for resolving related entities\n\n```ts\ntype GraphDefinition = {\n nodes: Array<{\n id: string\n schema: string\n cardinality?: "one" | "many"\n fields?: object\n }>\n edges: Array<{\n from: string\n to: string\n }>\n}\n```\n\n### `GraphNode`\n\nA node in the entity graph\n\n```ts\ntype GraphNode = {\n id: string\n schema: string\n cardinality?: "one" | "many"\n fields?: object\n}\n```\n\n### `GraphEdge`\n\nAn edge connecting two nodes in the graph\n\n```ts\ntype GraphEdge = {\n from: string\n to: string\n}\n```\n\n### `EntityOperationTrigger`\n\nConfiguration for triggering an event based on entity operations.\n\nWhen an entity operation matches the configured criteria, the event will be triggered.\n- On createEntity: the attribute must be present in the entity payload\n- On updateEntity: the attribute must be in diff.added, diff.updated, or di\n\n```ts\ntype EntityOperationTrigger = {\n operation: "createEntity" | "updateEntity" | "deleteEntity"[]\n schema: string[]\n attribute?: string[]\n purpose?: string[]\n}\n```\n\n### `SearchOptions`\n\n```ts\ntype SearchOptions = {\n limit?: number\n cursor?: {\n event_time?: string\n event_id?: string\n }\n timestamp?: {\n from?: string // date-time\n to?: string // date-time\n }\n event_id?: string\n}\n```\n\n### `FieldsParam`\n\nList of entity fields to include or exclude in the response\n\nUse ! to exclude fields, e.g. `!_id` to exclude the `_id` field.\n\nGlobbing and globstart (**) is supported for nested fields.\n\n\n```ts\ntype FieldsParam = string[]\n```\n\n### `TriggerEventPayload`\n\nPayload for explicitly triggering an event via API\n\n```ts\ntype TriggerEventPayload = {\n seed?: {\n entity_id: string // uuid\n node_id: string\n }\n fields?: Record<string, unknown>\n skip_hydration?: string[]\n _trigger_source_type?: string\n _trigger_source?: string\n}\n```\n\n### `TriggerEventResponse`\n\nResponse from triggering an event\n\n```ts\ntype TriggerEventResponse = {\n success: boolean\n event_id: string\n event_bridge_event_id?: string\n}\n```\n';
|
|
5
|
-
export {
|
|
6
|
-
event_catalog_default as default
|
|
7
|
-
};
|