@epilot/app-client 0.6.1 → 0.6.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.
@@ -1 +1 @@
1
- (()=>{"use strict";var e={466:e=>{e.exports=JSON.parse('{"openapi":"3.1.0","info":{"title":"","version":""},"servers":[{"url":"https://app.sls.epilot.io"}],"paths":{"/v1/public/.well-known/public-key":{"get":{"operationId":"getPublicKey","responses":{}}},"/v1/app-configurations":{"get":{"operationId":"listConfigurations","parameters":[{"name":"page","in":"query"},{"name":"pageSize","in":"query"}],"responses":{}},"post":{"operationId":"createConfiguration","requestBody":{"$ref":"#/components/requestBodies/CreateConfigRequest"},"responses":{}}},"/v1/app-configurations/public/{appId}":{"parameters":[{"name":"appId","in":"path","required":true,"description":"ID of the app configuration to install"}],"get":{"operationId":"getPublicConfiguration","parameters":[{"name":"version","in":"query"}],"responses":{}}},"/v1/app-configurations/{appId}":{"parameters":[{"name":"appId","in":"path","required":true,"description":"ID of the app configuration"}],"get":{"operationId":"getConfiguration","parameters":[{"name":"version","in":"query"}],"responses":{}},"patch":{"operationId":"patchMetadata","requestBody":{"$ref":"#/components/requestBodies/PatchConfigMetadataRequest"},"responses":{}},"delete":{"operationId":"deleteConfiguration","responses":{}}},"/v1/app-configurations/{appId}/bundle":{"post":{"operationId":"createBundleUploadUrl","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/CreateBundlePresignedRequest"},"responses":{}}},"/v1/app-configurations/{appId}/zip":{"post":{"operationId":"createZipUploadUrl","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"content":{"application/json":{}}},"responses":{}}},"/v1/app-configurations/{appId}/logo":{"parameters":[{"name":"appId","in":"path","required":true,"description":"ID of the app configuration"}],"post":{"operationId":"createLogoUploadUrl","requestBody":{"$ref":"#/components/requestBodies/CreateLogoPresignedRequest"},"responses":{}},"delete":{"operationId":"deleteLogo","responses":{}}},"/v1/app-configurations/{appId}/versions":{"get":{"operationId":"listVersions","parameters":[{"name":"appId","in":"path","required":true},{"name":"page","in":"query"},{"name":"pageSize","in":"query"}],"responses":{}}},"/v1/app-configurations/{appId}/versions/{version}":{"get":{"operationId":"getVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"responses":{}},"delete":{"operationId":"deleteVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"responses":{}},"patch":{"operationId":"patchVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/PatchVersionRequest"},"responses":{}}},"/v1/app-configurations/{appId}/versions/{version}/components":{"post":{"operationId":"createComponent","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/UpsertComponentRequest"},"responses":{}}},"/v1/app-configurations/{appId}/versions/{version}/components/{componentId}":{"patch":{"operationId":"patchComponent","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true},{"name":"componentId","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/UpsertComponentRequest"},"responses":{}},"delete":{"operationId":"deleteComponent","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true},{"name":"componentId","in":"path","required":true}],"responses":{}}},"/v1/app-configurations/{appId}/versions/{sourceVersion}/clone-to/{targetVersion}":{"post":{"operationId":"cloneVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"sourceVersion","in":"path","required":true},{"name":"targetVersion","in":"path","required":true}],"responses":{}}},"/v1/app":{"get":{"operationId":"listInstallations","parameters":[{"name":"componentType","in":"query"},{"name":"enabled","in":"query"},{"name":"page","in":"query"},{"name":"pageSize","in":"query"}],"responses":{}}},"/v1/app/{appId}":{"get":{"operationId":"getInstallation","parameters":[{"name":"appId","in":"path","required":true}],"responses":{}},"post":{"operationId":"install","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/InstallRequest"},"responses":{}},"patch":{"operationId":"patchInstallation","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/InstallRequest"},"responses":{}},"delete":{"operationId":"uninstall","parameters":[{"name":"appId","in":"path","required":true}],"responses":{}}},"/v1/app/{appId}/promote-to/{version}":{"post":{"operationId":"promoteVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"responses":{}}},"/v1/app-events":{"post":{"operationId":"ingestEvent","requestBody":{"required":true,"content":{"application/json":{}}},"responses":{}}}},"components":{"requestBodies":{"CreateLogoPresignedRequest":{"required":true,"content":{"application/json":{}}},"CreateBundlePresignedRequest":{"required":true,"content":{"application/json":{}}},"PatchConfigMetadataRequest":{"required":true,"content":{"application/json":{}}},"PatchVersionRequest":{"required":true,"content":{"application/json":{}}},"UpsertComponentRequest":{"required":true,"content":{"application/json":{}}},"CreateConfigRequest":{"required":true,"content":{"application/json":{}}},"InstallRequest":{"content":{"application/json":{}}}}}}')},757:function(e,r,t){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0});var o=n(t(466));r.default=o.default}},r={},t=function t(n){var o=r[n];if(void 0!==o)return o.exports;var p=r[n]={exports:{}};return e[n].call(p.exports,p,p.exports,t),p.exports}(757),n=exports;for(var o in t)n[o]=t[o];t.__esModule&&Object.defineProperty(n,"__esModule",{value:!0})})();
1
+ (()=>{"use strict";var e={466:e=>{e.exports=JSON.parse('{"openapi":"3.1.0","info":{"title":"","version":""},"servers":[{"url":"https://app.sls.epilot.io"}],"paths":{"/v1/public/.well-known/public-key":{"get":{"operationId":"getPublicKey","responses":{}}},"/v1/app-configurations":{"get":{"operationId":"listConfigurations","parameters":[{"name":"page","in":"query"},{"name":"pageSize","in":"query"}],"responses":{}},"post":{"operationId":"createConfiguration","requestBody":{"$ref":"#/components/requestBodies/CreateConfigRequest"},"responses":{}}},"/v1/app-configurations/public/{appId}":{"parameters":[{"name":"appId","in":"path","required":true,"description":"ID of the app configuration to install"}],"get":{"operationId":"getPublicConfiguration","parameters":[{"name":"version","in":"query"}],"responses":{}}},"/v1/app-configurations/{appId}":{"parameters":[{"name":"appId","in":"path","required":true,"description":"ID of the app configuration"}],"get":{"operationId":"getConfiguration","parameters":[{"name":"version","in":"query"}],"responses":{}},"patch":{"operationId":"patchMetadata","requestBody":{"$ref":"#/components/requestBodies/PatchConfigMetadataRequest"},"responses":{}},"delete":{"operationId":"deleteConfiguration","responses":{}}},"/v1/app-configurations/{appId}/events":{"post":{"operationId":"queryEvents","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"required":true,"content":{"application/json":{}}},"responses":{}}},"/v1/app-configurations/{appId}/bundle":{"post":{"operationId":"createBundleUploadUrl","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/CreateBundlePresignedRequest"},"responses":{}}},"/v1/app-configurations/{appId}/zip":{"post":{"operationId":"createZipUploadUrl","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"content":{"application/json":{}}},"responses":{}}},"/v1/app-configurations/{appId}/logo":{"parameters":[{"name":"appId","in":"path","required":true,"description":"ID of the app configuration"}],"post":{"operationId":"createLogoUploadUrl","requestBody":{"$ref":"#/components/requestBodies/CreateLogoPresignedRequest"},"responses":{}},"delete":{"operationId":"deleteLogo","responses":{}}},"/v1/app-configurations/{appId}/versions":{"get":{"operationId":"listVersions","parameters":[{"name":"appId","in":"path","required":true},{"name":"page","in":"query"},{"name":"pageSize","in":"query"}],"responses":{}}},"/v1/app-configurations/{appId}/versions/{version}":{"get":{"operationId":"getVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"responses":{}},"delete":{"operationId":"deleteVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"responses":{}},"patch":{"operationId":"patchVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/PatchVersionRequest"},"responses":{}}},"/v1/app-configurations/{appId}/versions/{version}/components":{"post":{"operationId":"createComponent","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/UpsertComponentRequest"},"responses":{}}},"/v1/app-configurations/{appId}/versions/{version}/components/{componentId}":{"patch":{"operationId":"patchComponent","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true},{"name":"componentId","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/UpsertComponentRequest"},"responses":{}},"delete":{"operationId":"deleteComponent","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true},{"name":"componentId","in":"path","required":true}],"responses":{}}},"/v1/app-configurations/{appId}/versions/{sourceVersion}/clone-to/{targetVersion}":{"post":{"operationId":"cloneVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"sourceVersion","in":"path","required":true},{"name":"targetVersion","in":"path","required":true}],"responses":{}}},"/v1/app":{"get":{"operationId":"listInstallations","parameters":[{"name":"componentType","in":"query"},{"name":"enabled","in":"query"},{"name":"page","in":"query"},{"name":"pageSize","in":"query"}],"responses":{}}},"/v1/app/{appId}":{"get":{"operationId":"getInstallation","parameters":[{"name":"appId","in":"path","required":true}],"responses":{}},"post":{"operationId":"install","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/InstallRequest"},"responses":{}},"patch":{"operationId":"patchInstallation","parameters":[{"name":"appId","in":"path","required":true}],"requestBody":{"$ref":"#/components/requestBodies/InstallRequest"},"responses":{}},"delete":{"operationId":"uninstall","parameters":[{"name":"appId","in":"path","required":true}],"responses":{}}},"/v1/app/{appId}/promote-to/{version}":{"post":{"operationId":"promoteVersion","parameters":[{"name":"appId","in":"path","required":true},{"name":"version","in":"path","required":true}],"responses":{}}},"/v1/app-events":{"post":{"operationId":"ingestEvent","requestBody":{"required":true,"content":{"application/json":{}}},"responses":{}}}},"components":{"requestBodies":{"CreateLogoPresignedRequest":{"required":true,"content":{"application/json":{}}},"CreateBundlePresignedRequest":{"required":true,"content":{"application/json":{}}},"PatchConfigMetadataRequest":{"required":true,"content":{"application/json":{}}},"PatchVersionRequest":{"required":true,"content":{"application/json":{}}},"UpsertComponentRequest":{"required":true,"content":{"application/json":{}}},"CreateConfigRequest":{"required":true,"content":{"application/json":{}}},"InstallRequest":{"content":{"application/json":{}}}}}}')},757:function(e,r,t){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0});var o=n(t(466));r.default=o.default}},r={},t=function t(n){var o=r[n];if(void 0!==o)return o.exports;var p=r[n]={exports:{}};return e[n].call(p.exports,p,p.exports,t),p.exports}(757),n=exports;for(var o in t)n[o]=t[o];t.__esModule&&Object.defineProperty(n,"__esModule",{value:!0})})();
@@ -90,6 +90,25 @@
90
90
  "responses": {}
91
91
  }
92
92
  },
93
+ "/v1/app-configurations/{appId}/events": {
94
+ "post": {
95
+ "operationId": "queryEvents",
96
+ "parameters": [
97
+ {
98
+ "name": "appId",
99
+ "in": "path",
100
+ "required": true
101
+ }
102
+ ],
103
+ "requestBody": {
104
+ "required": true,
105
+ "content": {
106
+ "application/json": {}
107
+ }
108
+ },
109
+ "responses": {}
110
+ }
111
+ },
93
112
  "/v1/app-configurations/{appId}/bundle": {
94
113
  "post": {
95
114
  "operationId": "createBundleUploadUrl",
package/dist/openapi.d.ts CHANGED
@@ -103,6 +103,21 @@ declare namespace Components {
103
103
  */
104
104
  type: "user" | "system";
105
105
  }
106
+ export interface AggregatedEvents {
107
+ type?: "aggregated";
108
+ groups?: {
109
+ /**
110
+ * The grouped dimensions e.g., "source": "CUSTOM_JOURNEY_BLOCK", "event_type": "ERROR"
111
+ */
112
+ dimensions?: {
113
+ [name: string]: any;
114
+ };
115
+ metrics?: {
116
+ count?: number;
117
+ error_rate?: number;
118
+ };
119
+ }[];
120
+ }
106
121
  export interface AppBridgeSurfaceConfig {
107
122
  /**
108
123
  * URL of the uploaded App Bridge App. This is the entrypoint for the app
@@ -210,7 +225,7 @@ declare namespace Components {
210
225
  surfaces?: {
211
226
  [key: string]: any;
212
227
  };
213
- } & (JourneyBlockComponent | PortalExtensionComponent | CustomFlowActionComponent);
228
+ } & (JourneyBlockComponent | PortalExtensionComponent | CustomFlowActionComponent | ErpInformToolkitComponent);
214
229
  export interface BaseComponentCommon {
215
230
  /**
216
231
  * Unique identifier for the component
@@ -400,7 +415,7 @@ declare namespace Components {
400
415
  /**
401
416
  * Type of app component
402
417
  */
403
- export type ComponentType = "CUSTOM_JOURNEY_BLOCK" | "PORTAL_EXTENSION" | "CUSTOM_FLOW_ACTION";
418
+ export type ComponentType = "CUSTOM_JOURNEY_BLOCK" | "PORTAL_EXTENSION" | "CUSTOM_FLOW_ACTION" | "ERP_INFORM_TOOLKIT";
404
419
  /**
405
420
  * Configuration of the published app
406
421
  */
@@ -795,6 +810,77 @@ declare namespace Components {
795
810
  }[]
796
811
  ];
797
812
  }
813
+ export interface ErpInformToolkitComponent {
814
+ component_type: "ERP_INFORM_TOOLKIT";
815
+ configuration: {
816
+ type: "inbound" | "outbound";
817
+ };
818
+ }
819
+ export interface EventsQuery {
820
+ /**
821
+ * Either use preset OR start+end
822
+ */
823
+ time_range?: {
824
+ /**
825
+ * Start time (ISO 8601)
826
+ */
827
+ start?: string; // date-time
828
+ /**
829
+ * End time (ISO 8601)
830
+ */
831
+ end?: string; // date-time
832
+ /**
833
+ * Predefined time range (alternative to start/end)
834
+ */
835
+ preset?: "1h" | "6h" | "24h" | "7d" | "30d";
836
+ };
837
+ filters?: {
838
+ /**
839
+ * Filter by component types
840
+ */
841
+ source?: /* Type of app component */ ComponentType[];
842
+ /**
843
+ * Filter by specific component IDs
844
+ */
845
+ component_id?: string[];
846
+ /**
847
+ * Filter by event types
848
+ */
849
+ event_type?: ("ERROR" | "WARNING" | "INFO")[];
850
+ /**
851
+ * Filter by correlation ID for tracing
852
+ */
853
+ correlation_id?: string;
854
+ };
855
+ aggregation?: {
856
+ /**
857
+ * Group results by specified fields
858
+ */
859
+ group_by?: ("source" | "component_id" | "event_type" | "hour" | "day")[];
860
+ /**
861
+ * Metrics to calculate
862
+ */
863
+ metrics?: ("count" | "error_rate" | "unique_users")[];
864
+ };
865
+ pagination?: {
866
+ page?: number;
867
+ page_size?: number;
868
+ };
869
+ sort?: {
870
+ field?: "timestamp" | "event_type" | "component_id";
871
+ order?: "asc" | "desc";
872
+ };
873
+ }
874
+ export interface EventsQueryResponse {
875
+ query?: EventsQuery;
876
+ results?: RawEvents | AggregatedEvents;
877
+ pagination?: {
878
+ page?: number;
879
+ page_size?: number;
880
+ total_items?: number;
881
+ has_next?: boolean;
882
+ };
883
+ }
798
884
  export interface ExternalIntegrationCustomActionConfig {
799
885
  /**
800
886
  * Name of the custom action
@@ -1163,6 +1249,10 @@ declare namespace Components {
1163
1249
  */
1164
1250
  versions?: /* Configuration data about your app which is versionable */ ConfigurationVersion[];
1165
1251
  }
1252
+ export interface RawEvents {
1253
+ type?: "raw";
1254
+ events?: AppEventData[];
1255
+ }
1166
1256
  export interface Role {
1167
1257
  /**
1168
1258
  * Name of the role
@@ -1637,6 +1727,22 @@ declare namespace Paths {
1637
1727
  }
1638
1728
  }
1639
1729
  }
1730
+ namespace QueryEvents {
1731
+ namespace Parameters {
1732
+ export type AppId = string;
1733
+ }
1734
+ export interface PathParameters {
1735
+ appId: Parameters.AppId;
1736
+ }
1737
+ export type RequestBody = Components.Schemas.EventsQuery;
1738
+ namespace Responses {
1739
+ export type $200 = Components.Schemas.EventsQueryResponse;
1740
+ export interface $400 {
1741
+ }
1742
+ export interface $404 {
1743
+ }
1744
+ }
1745
+ }
1640
1746
  namespace Uninstall {
1641
1747
  namespace Parameters {
1642
1748
  export type AppId = string;
@@ -1749,6 +1855,16 @@ export interface OperationMethods {
1749
1855
  data?: any,
1750
1856
  config?: AxiosRequestConfig
1751
1857
  ): OperationResponse<Paths.DeleteConfiguration.Responses.$204>
1858
+ /**
1859
+ * queryEvents - queryEvents
1860
+ *
1861
+ * Query analytics events for a specific app with flexible filtering
1862
+ */
1863
+ 'queryEvents'(
1864
+ parameters?: Parameters<Paths.QueryEvents.PathParameters> | null,
1865
+ data?: Paths.QueryEvents.RequestBody,
1866
+ config?: AxiosRequestConfig
1867
+ ): OperationResponse<Paths.QueryEvents.Responses.$200>
1752
1868
  /**
1753
1869
  * createBundleUploadUrl - createBundleUploadUrl
1754
1870
  *
@@ -2021,6 +2137,18 @@ export interface PathsDictionary {
2021
2137
  config?: AxiosRequestConfig
2022
2138
  ): OperationResponse<Paths.DeleteConfiguration.Responses.$204>
2023
2139
  }
2140
+ ['/v1/app-configurations/{appId}/events']: {
2141
+ /**
2142
+ * queryEvents - queryEvents
2143
+ *
2144
+ * Query analytics events for a specific app with flexible filtering
2145
+ */
2146
+ 'post'(
2147
+ parameters?: Parameters<Paths.QueryEvents.PathParameters> | null,
2148
+ data?: Paths.QueryEvents.RequestBody,
2149
+ config?: AxiosRequestConfig
2150
+ ): OperationResponse<Paths.QueryEvents.Responses.$200>
2151
+ }
2024
2152
  ['/v1/app-configurations/{appId}/bundle']: {
2025
2153
  /**
2026
2154
  * createBundleUploadUrl - createBundleUploadUrl
@@ -2242,6 +2370,7 @@ export type Client = OpenAPIClient<OperationMethods, PathsDictionary>
2242
2370
 
2243
2371
 
2244
2372
  export type Actor = Components.Schemas.Actor;
2373
+ export type AggregatedEvents = Components.Schemas.AggregatedEvents;
2245
2374
  export type AppBridgeSurfaceConfig = Components.Schemas.AppBridgeSurfaceConfig;
2246
2375
  export type AppEventData = Components.Schemas.AppEventData;
2247
2376
  export type Audit = Components.Schemas.Audit;
@@ -2260,6 +2389,9 @@ export type ConfigurationVersion = Components.Schemas.ConfigurationVersion;
2260
2389
  export type CustomFlowActionComponent = Components.Schemas.CustomFlowActionComponent;
2261
2390
  export type CustomFlowConfig = Components.Schemas.CustomFlowConfig;
2262
2391
  export type EnumArg = Components.Schemas.EnumArg;
2392
+ export type ErpInformToolkitComponent = Components.Schemas.ErpInformToolkitComponent;
2393
+ export type EventsQuery = Components.Schemas.EventsQuery;
2394
+ export type EventsQueryResponse = Components.Schemas.EventsQueryResponse;
2263
2395
  export type ExternalIntegrationCustomActionConfig = Components.Schemas.ExternalIntegrationCustomActionConfig;
2264
2396
  export type Grants = Components.Schemas.Grants;
2265
2397
  export type Installation = Components.Schemas.Installation;
@@ -2277,6 +2409,7 @@ export type PortalExtensionComponent = Components.Schemas.PortalExtensionCompone
2277
2409
  export type PortalExtensionConfig = Components.Schemas.PortalExtensionConfig;
2278
2410
  export type Pricing = Components.Schemas.Pricing;
2279
2411
  export type PublicConfiguration = Components.Schemas.PublicConfiguration;
2412
+ export type RawEvents = Components.Schemas.RawEvents;
2280
2413
  export type Role = Components.Schemas.Role;
2281
2414
  export type S3Reference = Components.Schemas.S3Reference;
2282
2415
  export type TextArg = Components.Schemas.TextArg;
package/dist/openapi.json CHANGED
@@ -295,6 +295,55 @@
295
295
  }
296
296
  }
297
297
  },
298
+ "/v1/app-configurations/{appId}/events": {
299
+ "post": {
300
+ "summary": "queryEvents",
301
+ "description": "Query analytics events for a specific app with flexible filtering",
302
+ "operationId": "queryEvents",
303
+ "tags": [
304
+ "App Analytics"
305
+ ],
306
+ "parameters": [
307
+ {
308
+ "name": "appId",
309
+ "in": "path",
310
+ "required": true,
311
+ "schema": {
312
+ "type": "string"
313
+ },
314
+ "description": "ID of the app configuration"
315
+ }
316
+ ],
317
+ "requestBody": {
318
+ "required": true,
319
+ "content": {
320
+ "application/json": {
321
+ "schema": {
322
+ "$ref": "#/components/schemas/EventsQuery"
323
+ }
324
+ }
325
+ }
326
+ },
327
+ "responses": {
328
+ "200": {
329
+ "description": "Analytics events",
330
+ "content": {
331
+ "application/json": {
332
+ "schema": {
333
+ "$ref": "#/components/schemas/EventsQueryResponse"
334
+ }
335
+ }
336
+ }
337
+ },
338
+ "400": {
339
+ "description": "Invalid query parameters"
340
+ },
341
+ "404": {
342
+ "description": "App configuration not found"
343
+ }
344
+ }
345
+ }
346
+ },
298
347
  "/v1/app-configurations/{appId}/bundle": {
299
348
  "post": {
300
349
  "summary": "createBundleUploadUrl",
@@ -1541,7 +1590,8 @@
1541
1590
  "enum": [
1542
1591
  "CUSTOM_JOURNEY_BLOCK",
1543
1592
  "PORTAL_EXTENSION",
1544
- "CUSTOM_FLOW_ACTION"
1593
+ "CUSTOM_FLOW_ACTION",
1594
+ "ERP_INFORM_TOOLKIT"
1545
1595
  ],
1546
1596
  "description": "Type of app component"
1547
1597
  },
@@ -1648,7 +1698,8 @@
1648
1698
  "mapping": {
1649
1699
  "CUSTOM_JOURNEY_BLOCK": "#/components/schemas/JourneyBlockComponent",
1650
1700
  "PORTAL_EXTENSION": "#/components/schemas/PortalExtensionComponent",
1651
- "CUSTOM_FLOW_ACTION": "#/components/schemas/CustomFlowActionComponent"
1701
+ "CUSTOM_FLOW_ACTION": "#/components/schemas/CustomFlowActionComponent",
1702
+ "ERP_INFORM_TOOLKIT": "#/components/schemas/ErpInformToolkitComponent"
1652
1703
  }
1653
1704
  },
1654
1705
  "oneOf": [
@@ -1660,6 +1711,9 @@
1660
1711
  },
1661
1712
  {
1662
1713
  "$ref": "#/components/schemas/CustomFlowActionComponent"
1714
+ },
1715
+ {
1716
+ "$ref": "#/components/schemas/ErpInformToolkitComponent"
1663
1717
  }
1664
1718
  ]
1665
1719
  }
@@ -1683,6 +1737,36 @@
1683
1737
  }
1684
1738
  }
1685
1739
  },
1740
+ "ErpInformToolkitComponent": {
1741
+ "type": "object",
1742
+ "required": [
1743
+ "component_type",
1744
+ "configuration"
1745
+ ],
1746
+ "properties": {
1747
+ "component_type": {
1748
+ "type": "string",
1749
+ "enum": [
1750
+ "ERP_INFORM_TOOLKIT"
1751
+ ]
1752
+ },
1753
+ "configuration": {
1754
+ "type": "object",
1755
+ "required": [
1756
+ "type"
1757
+ ],
1758
+ "properties": {
1759
+ "type": {
1760
+ "type": "string",
1761
+ "enum": [
1762
+ "inbound",
1763
+ "outbound"
1764
+ ]
1765
+ }
1766
+ }
1767
+ }
1768
+ }
1769
+ },
1686
1770
  "CustomFlowActionComponent": {
1687
1771
  "type": "object",
1688
1772
  "required": [
@@ -2759,6 +2843,232 @@
2759
2843
  "additionalProperties": true
2760
2844
  }
2761
2845
  }
2846
+ },
2847
+ "EventsQuery": {
2848
+ "type": "object",
2849
+ "properties": {
2850
+ "time_range": {
2851
+ "type": "object",
2852
+ "properties": {
2853
+ "start": {
2854
+ "type": "string",
2855
+ "format": "date-time",
2856
+ "description": "Start time (ISO 8601)"
2857
+ },
2858
+ "end": {
2859
+ "type": "string",
2860
+ "format": "date-time",
2861
+ "description": "End time (ISO 8601)"
2862
+ },
2863
+ "preset": {
2864
+ "type": "string",
2865
+ "enum": [
2866
+ "1h",
2867
+ "6h",
2868
+ "24h",
2869
+ "7d",
2870
+ "30d"
2871
+ ],
2872
+ "description": "Predefined time range (alternative to start/end)"
2873
+ }
2874
+ },
2875
+ "description": "Either use preset OR start+end"
2876
+ },
2877
+ "filters": {
2878
+ "type": "object",
2879
+ "properties": {
2880
+ "source": {
2881
+ "type": "array",
2882
+ "items": {
2883
+ "$ref": "#/components/schemas/ComponentType"
2884
+ },
2885
+ "description": "Filter by component types"
2886
+ },
2887
+ "component_id": {
2888
+ "type": "array",
2889
+ "items": {
2890
+ "type": "string"
2891
+ },
2892
+ "description": "Filter by specific component IDs"
2893
+ },
2894
+ "event_type": {
2895
+ "type": "array",
2896
+ "items": {
2897
+ "type": "string",
2898
+ "enum": [
2899
+ "ERROR",
2900
+ "WARNING",
2901
+ "INFO"
2902
+ ]
2903
+ },
2904
+ "description": "Filter by event types"
2905
+ },
2906
+ "correlation_id": {
2907
+ "type": "string",
2908
+ "description": "Filter by correlation ID for tracing"
2909
+ }
2910
+ }
2911
+ },
2912
+ "aggregation": {
2913
+ "type": "object",
2914
+ "properties": {
2915
+ "group_by": {
2916
+ "type": "array",
2917
+ "items": {
2918
+ "type": "string",
2919
+ "enum": [
2920
+ "source",
2921
+ "component_id",
2922
+ "event_type",
2923
+ "hour",
2924
+ "day"
2925
+ ]
2926
+ },
2927
+ "description": "Group results by specified fields"
2928
+ },
2929
+ "metrics": {
2930
+ "type": "array",
2931
+ "items": {
2932
+ "type": "string",
2933
+ "enum": [
2934
+ "count",
2935
+ "error_rate",
2936
+ "unique_users"
2937
+ ]
2938
+ },
2939
+ "default": [
2940
+ "count"
2941
+ ],
2942
+ "description": "Metrics to calculate"
2943
+ }
2944
+ }
2945
+ },
2946
+ "pagination": {
2947
+ "type": "object",
2948
+ "properties": {
2949
+ "page": {
2950
+ "type": "integer",
2951
+ "minimum": 1,
2952
+ "default": 1
2953
+ },
2954
+ "page_size": {
2955
+ "type": "integer",
2956
+ "minimum": 1,
2957
+ "maximum": 1000,
2958
+ "default": 100
2959
+ }
2960
+ }
2961
+ },
2962
+ "sort": {
2963
+ "type": "object",
2964
+ "properties": {
2965
+ "field": {
2966
+ "type": "string",
2967
+ "enum": [
2968
+ "timestamp",
2969
+ "event_type",
2970
+ "component_id"
2971
+ ],
2972
+ "default": "timestamp"
2973
+ },
2974
+ "order": {
2975
+ "type": "string",
2976
+ "enum": [
2977
+ "asc",
2978
+ "desc"
2979
+ ],
2980
+ "default": "desc"
2981
+ }
2982
+ }
2983
+ }
2984
+ }
2985
+ },
2986
+ "EventsQueryResponse": {
2987
+ "type": "object",
2988
+ "properties": {
2989
+ "query": {
2990
+ "$ref": "#/components/schemas/EventsQuery"
2991
+ },
2992
+ "results": {
2993
+ "oneOf": [
2994
+ {
2995
+ "$ref": "#/components/schemas/RawEvents"
2996
+ },
2997
+ {
2998
+ "$ref": "#/components/schemas/AggregatedEvents"
2999
+ }
3000
+ ]
3001
+ },
3002
+ "pagination": {
3003
+ "type": "object",
3004
+ "properties": {
3005
+ "page": {
3006
+ "type": "integer"
3007
+ },
3008
+ "page_size": {
3009
+ "type": "integer"
3010
+ },
3011
+ "total_items": {
3012
+ "type": "integer"
3013
+ },
3014
+ "has_next": {
3015
+ "type": "boolean"
3016
+ }
3017
+ }
3018
+ }
3019
+ }
3020
+ },
3021
+ "RawEvents": {
3022
+ "type": "object",
3023
+ "properties": {
3024
+ "type": {
3025
+ "type": "string",
3026
+ "enum": [
3027
+ "raw"
3028
+ ]
3029
+ },
3030
+ "events": {
3031
+ "type": "array",
3032
+ "items": {
3033
+ "$ref": "#/components/schemas/AppEventData"
3034
+ }
3035
+ }
3036
+ }
3037
+ },
3038
+ "AggregatedEvents": {
3039
+ "type": "object",
3040
+ "properties": {
3041
+ "type": {
3042
+ "type": "string",
3043
+ "enum": [
3044
+ "aggregated"
3045
+ ]
3046
+ },
3047
+ "groups": {
3048
+ "type": "array",
3049
+ "items": {
3050
+ "type": "object",
3051
+ "properties": {
3052
+ "dimensions": {
3053
+ "type": "object",
3054
+ "description": "The grouped dimensions e.g., \"source\": \"CUSTOM_JOURNEY_BLOCK\", \"event_type\": \"ERROR\"",
3055
+ "additionalProperties": true
3056
+ },
3057
+ "metrics": {
3058
+ "type": "object",
3059
+ "properties": {
3060
+ "count": {
3061
+ "type": "integer"
3062
+ },
3063
+ "error_rate": {
3064
+ "type": "number"
3065
+ }
3066
+ }
3067
+ }
3068
+ }
3069
+ }
3070
+ }
3071
+ }
2762
3072
  }
2763
3073
  }
2764
3074
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epilot/app-client",
3
- "version": "0.6.1",
3
+ "version": "0.6.3",
4
4
  "description": "JavaScript client library for the epilot App API",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",