@epilot/cli 0.1.63 → 0.1.65

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/README.md CHANGED
@@ -29,7 +29,7 @@ npm install -g @epilot/cli
29
29
 
30
30
  <!-- usage-help -->
31
31
  ```
32
- epilot v0.1.63 — CLI for epilot APIs
32
+ epilot v0.1.65 — CLI for epilot APIs
33
33
 
34
34
  USAGE
35
35
  epilot <api> <operationId> [params...] [flags]
@@ -480,6 +480,142 @@
480
480
  }
481
481
  }
482
482
  },
483
+ "/v1/portal/exports": {
484
+ "post": {
485
+ "operationId": "createExport",
486
+ "summary": "createExport",
487
+ "description": "Request an asynchronous CSV export of the portal user's contracts, delivery points and meters. Returns a job id to poll.",
488
+ "tags": [
489
+ "ECP"
490
+ ],
491
+ "parameters": [
492
+ {
493
+ "in": "query",
494
+ "name": "language",
495
+ "required": false,
496
+ "schema": {
497
+ "type": "string",
498
+ "enum": [
499
+ "de",
500
+ "en"
501
+ ]
502
+ },
503
+ "description": "Output language for headers and value formatting. Defaults to German when omitted or unsupported."
504
+ }
505
+ ],
506
+ "security": [
507
+ {
508
+ "PortalAuth": []
509
+ }
510
+ ],
511
+ "responses": {
512
+ "202": {
513
+ "description": "Export job accepted.",
514
+ "content": {
515
+ "application/json": {
516
+ "schema": {
517
+ "type": "object",
518
+ "properties": {
519
+ "jobId": {
520
+ "type": "string"
521
+ },
522
+ "status": {
523
+ "type": "string",
524
+ "enum": [
525
+ "queued",
526
+ "running",
527
+ "ready",
528
+ "failed"
529
+ ]
530
+ }
531
+ }
532
+ }
533
+ }
534
+ }
535
+ },
536
+ "401": {
537
+ "$ref": "#/components/responses/Unauthorized"
538
+ },
539
+ "403": {
540
+ "$ref": "#/components/responses/Forbidden"
541
+ },
542
+ "404": {
543
+ "description": "No export profile configured for this organization."
544
+ },
545
+ "500": {
546
+ "$ref": "#/components/responses/InternalServerError"
547
+ }
548
+ }
549
+ }
550
+ },
551
+ "/v1/portal/exports/{jobId}": {
552
+ "get": {
553
+ "operationId": "getExport",
554
+ "summary": "getExport",
555
+ "description": "Get the status of an export job, including the download URL once ready.",
556
+ "tags": [
557
+ "ECP"
558
+ ],
559
+ "parameters": [
560
+ {
561
+ "in": "path",
562
+ "name": "jobId",
563
+ "required": true,
564
+ "schema": {
565
+ "type": "string"
566
+ },
567
+ "description": "The export job id returned by createExport."
568
+ }
569
+ ],
570
+ "security": [
571
+ {
572
+ "PortalAuth": []
573
+ }
574
+ ],
575
+ "responses": {
576
+ "200": {
577
+ "description": "Export job status.",
578
+ "content": {
579
+ "application/json": {
580
+ "schema": {
581
+ "type": "object",
582
+ "properties": {
583
+ "jobId": {
584
+ "type": "string"
585
+ },
586
+ "status": {
587
+ "type": "string",
588
+ "enum": [
589
+ "queued",
590
+ "running",
591
+ "ready",
592
+ "failed",
593
+ "expired"
594
+ ]
595
+ },
596
+ "downloadUrl": {
597
+ "type": "string"
598
+ },
599
+ "error": {
600
+ "type": "string"
601
+ }
602
+ }
603
+ }
604
+ }
605
+ }
606
+ },
607
+ "401": {
608
+ "$ref": "#/components/responses/Unauthorized"
609
+ },
610
+ "404": {
611
+ "description": "Export job not found."
612
+ },
613
+ "500": {
614
+ "$ref": "#/components/responses/InternalServerError"
615
+ }
616
+ }
617
+ }
618
+ },
483
619
  "/v2/portal/extensions": {
484
620
  "get": {
485
621
  "operationId": "getPortalExtensions",
@@ -2929,6 +3065,10 @@
2929
3065
  },
2930
3066
  "is_main_entity": {
2931
3067
  "type": "boolean"
3068
+ },
3069
+ "journey_registration_email": {
3070
+ "type": "string",
3071
+ "description": "The email address registered in the journey's Login & Registration block"
2932
3072
  }
2933
3073
  }
2934
3074
  }
@@ -3665,6 +3805,14 @@
3665
3805
  "contactId": {
3666
3806
  "$ref": "#/components/schemas/EntityId",
3667
3807
  "description": "ID of the contact if exists"
3808
+ },
3809
+ "reason": {
3810
+ "type": "string",
3811
+ "enum": [
3812
+ "TIMEOUT",
3813
+ "NOT_FOUND"
3814
+ ],
3815
+ "description": "Present only when exists is false. NOT_FOUND means the given identifiers did\nnot match any contact (definitive - the client should not retry). TIMEOUT\nmeans the contact was not found within the processing window but may still be\ningesting; the client may retry (ideally with trigger_identifiers_check=false).\n"
3668
3816
  }
3669
3817
  }
3670
3818
  }
@@ -3743,6 +3891,14 @@
3743
3891
  "accountId": {
3744
3892
  "$ref": "#/components/schemas/EntityId",
3745
3893
  "description": "ID of the resolved account when the portal is configured for account-based registration"
3894
+ },
3895
+ "reason": {
3896
+ "type": "string",
3897
+ "enum": [
3898
+ "TIMEOUT",
3899
+ "NOT_FOUND"
3900
+ ],
3901
+ "description": "Present only when exists is false. NOT_FOUND means the given identifiers did\nnot match any contact (definitive - the client should not retry). TIMEOUT\nmeans the contact was not found within the processing window but may still be\ningesting; the client may retry (ideally with trigger_identifiers_check=false).\n"
3746
3902
  }
3747
3903
  }
3748
3904
  }
@@ -11608,6 +11764,10 @@
11608
11764
  "CommonConfigAttributes": {
11609
11765
  "type": "object",
11610
11766
  "properties": {
11767
+ "mobile_config": {
11768
+ "description": "Mobile app configuration (top-level; moved out of the config blob).",
11769
+ "$ref": "#/components/schemas/MobileConfig"
11770
+ },
11611
11771
  "enabled": {
11612
11772
  "type": "boolean",
11613
11773
  "description": "Enable/Disable the portal access"
@@ -12641,6 +12801,11 @@
12641
12801
  "contract_number": "123456"
12642
12802
  }
12643
12803
  }
12804
+ },
12805
+ "trigger_identifiers_check": {
12806
+ "type": "boolean",
12807
+ "default": true,
12808
+ "description": "Whether to (re)trigger the registration identifiers check hook, which issues a request\nto the connected ERP to (re)sync the contact, in addition to waiting for the entity to\narrive. Defaults to true to preserve existing behaviour. Set to false on retry attempts\nto only poll for an already-triggered sync to land, without issuing another upstream\nrequest to the ERP.\n"
12644
12809
  }
12645
12810
  }
12646
12811
  },
@@ -17793,6 +17958,10 @@
17793
17958
  "CommonConfigAttributesV3": {
17794
17959
  "type": "object",
17795
17960
  "properties": {
17961
+ "mobile_config": {
17962
+ "description": "Mobile app configuration (top-level; moved out of the config blob).",
17963
+ "$ref": "#/components/schemas/MobileConfig"
17964
+ },
17796
17965
  "enabled": {
17797
17966
  "type": "boolean",
17798
17967
  "description": "Enable/Disable the portal access"
@@ -1715,6 +1715,10 @@
1715
1715
  "type": "string",
1716
1716
  "description": "stringified payload of the webhook request"
1717
1717
  },
1718
+ "original_payload": {
1719
+ "type": "string",
1720
+ "description": "Stringified pre-transform original payload — the raw input captured before any JSONata transform was applied. Returned by getEventById for non-catalog events that have a locally stored original source (inline or claim-checked to S3, hydrated here). Omitted when no original source exists or when the payload would exceed the inline response size limit. Catalog-backed events (event_-prefixed) do not carry a local original — their pre-transform payload is sourced from the event catalog instead."
1721
+ },
1718
1722
  "retry_attempt": {
1719
1723
  "type": "integer",
1720
1724
  "description": "Number of automatic delivery retries that preceded this terminal outcome. 0 means the event was delivered (or finally failed) on the first attempt."
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  API_LIST
4
- } from "../chunk-36WJHV3M.js";
4
+ } from "../chunk-VZZG4HRP.js";
5
5
 
6
6
  // bin/epilot.ts
7
7
  import { runMain } from "citty";
@@ -11,7 +11,7 @@ import { defineCommand } from "citty";
11
11
  var main = defineCommand({
12
12
  meta: {
13
13
  name: "epilot",
14
- version: "0.1.63",
14
+ version: "0.1.65",
15
15
  description: "CLI for epilot APIs"
16
16
  },
17
17
  args: {
@@ -30,8 +30,8 @@ var main = defineCommand({
30
30
  auth: () => import("../auth-4HG7B2GC.js").then((m) => m.default),
31
31
  profile: () => import("../profile-OZJL5ZPT.js").then((m) => m.default),
32
32
  config: () => import("../config-DGZIMLZK.js").then((m) => m.default),
33
- completion: () => import("../completion-H6LKKRG6.js").then((m) => m.default),
34
- upgrade: () => import("../upgrade-QS2D5IZE.js").then((m) => m.default),
33
+ completion: () => import("../completion-TNGF5M2C.js").then((m) => m.default),
34
+ upgrade: () => import("../upgrade-WOJSCMM6.js").then((m) => m.default),
35
35
  "access-token": () => import("../access-token-WWE6BDJH.js").then((m) => m.default),
36
36
  address: () => import("../address-EH3C4CVB.js").then((m) => m.default),
37
37
  "address-suggestions": () => import("../address-suggestions-RRSLOBFW.js").then((m) => m.default),
@@ -134,13 +134,13 @@ process.stderr.on("error", (err) => {
134
134
  if (err.code === "EPIPE") process.exit(0);
135
135
  throw err;
136
136
  });
137
- var VERSION = true ? "0.1.63" : (await null).default.version;
137
+ var VERSION = true ? "0.1.65" : (await null).default.version;
138
138
  var reorderedArgv = hoistFlagsAfterSubcommand(process.argv.slice(2));
139
139
  process.argv = [process.argv[0], process.argv[1], ...reorderedArgv];
140
140
  var args = process.argv.slice(2);
141
141
  var completionsIdx = args.indexOf("--_completions");
142
142
  if (completionsIdx >= 0) {
143
- const { handleCompletions } = await import("../completion-H6LKKRG6.js");
143
+ const { handleCompletions } = await import("../completion-TNGF5M2C.js");
144
144
  handleCompletions(args[completionsIdx + 1], args[completionsIdx + 2]);
145
145
  process.exit(0);
146
146
  }
@@ -268,7 +268,7 @@ var API_LIST = [
268
268
  kebabName: "customer-portal",
269
269
  title: "Portal API",
270
270
  serverUrl: "https://customer-portal-api.sls.epilot.io",
271
- operationCount: 156,
271
+ operationCount: 158,
272
272
  operationIds: [
273
273
  "upsertPortal",
274
274
  "createUser",
@@ -278,6 +278,8 @@ var API_LIST = [
278
278
  "getPortalConfigByDomain",
279
279
  "getPortalConfig",
280
280
  "deletePortal",
281
+ "createExport",
282
+ "getExport",
281
283
  "getPortalExtensions",
282
284
  "getPublicPortalExtensionDetails",
283
285
  "getPortalExtensionsV3",
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  API_LIST
4
- } from "./chunk-36WJHV3M.js";
4
+ } from "./chunk-VZZG4HRP.js";
5
5
  import {
6
6
  DIM,
7
7
  GREEN,
@@ -72,7 +72,7 @@ ${GREEN}${BOLD}Upgraded to @epilot/cli@${latest}${RESET}
72
72
  }
73
73
  });
74
74
  var getCurrentVersion = () => {
75
- if (true) return "0.1.63";
75
+ if (true) return "0.1.65";
76
76
  try {
77
77
  const output = execSync("npm ls -g @epilot/cli --depth=0 --json 2>/dev/null", {
78
78
  encoding: "utf-8",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epilot/cli",
3
- "version": "0.1.63",
3
+ "version": "0.1.65",
4
4
  "description": "CLI for epilot APIs",
5
5
  "type": "module",
6
6
  "bin": {