@flowcore/sdk 1.58.2 → 1.59.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/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.59.0](https://github.com/flowcore-io/flowcore-sdk/compare/v1.58.2...v1.59.0) (2025-07-24)
4
+
5
+
6
+ ### Features
7
+
8
+ * support new api key format ([214e27e](https://github.com/flowcore-io/flowcore-sdk/commit/214e27e3186d17162288ba73dbbf5daebebead5e))
9
+ * support new api key format ([a94f0de](https://github.com/flowcore-io/flowcore-sdk/commit/a94f0de8069d23997dd07d2702bb24b54bbb5cce))
10
+
11
+
12
+ ### Bug Fixes
13
+
14
+ * add comments ([c324b71](https://github.com/flowcore-io/flowcore-sdk/commit/c324b71eece4bfeb7cd12686d7643d6af057cd28))
15
+
3
16
  ## [1.58.2](https://github.com/flowcore-io/flowcore-sdk/compare/v1.58.1...v1.58.2) (2025-07-21)
4
17
 
5
18
 
@@ -4,6 +4,10 @@ import type { Command } from "./command.js";
4
4
  */
5
5
  interface ClientOptionsBearer {
6
6
  getBearerToken: () => Promise<string | null> | string | null;
7
+ /**
8
+ * The ID of the API key.
9
+ * @deprecated Use apiKey only instead (apiKeyId is only used for old api keys).
10
+ */
7
11
  apiKeyId?: never;
8
12
  apiKey?: never;
9
13
  retry?: {
@@ -15,7 +19,11 @@ interface ClientOptionsBearer {
15
19
  * The options for the api key
16
20
  */
17
21
  interface ClientOptionsApiKey {
18
- apiKeyId: string;
22
+ /**
23
+ * The ID of the API key.
24
+ * @deprecated Use apiKey only instead (apiKeyId is only used for old api keys).
25
+ */
26
+ apiKeyId?: string;
19
27
  apiKey: string;
20
28
  getBearerToken?: never;
21
29
  retry?: {
@@ -1 +1 @@
1
- {"version":3,"file":"flowcore-client.d.ts","sourceRoot":"","sources":["../../src/common/flowcore-client.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAK3C;;GAEG;AACH,UAAU,mBAAmB;IAC3B,cAAc,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,GAAG,IAAI,CAAA;IAC5D,QAAQ,CAAC,EAAE,KAAK,CAAA;IAChB,MAAM,CAAC,EAAE,KAAK,CAAA;IACd,KAAK,CAAC,EAAE;QACN,KAAK,EAAE,MAAM,CAAA;QACb,UAAU,EAAE,MAAM,CAAA;KACnB,GAAG,IAAI,CAAA;CACT;AAED;;GAEG;AACH,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,KAAK,CAAA;IACtB,KAAK,CAAC,EAAE;QACN,KAAK,EAAE,MAAM,CAAA;QACb,UAAU,EAAE,MAAM,CAAA;KACnB,GAAG,IAAI,CAAA;CACT;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,mBAAmB,GAAG,mBAAmB,CAAA;AAErE;;GAEG;AACH,qBAAa,cAAc;IAIb,OAAO,CAAC,QAAQ,CAAC,OAAO;IAHpC,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,OAAO,CAAoB;gBAEN,OAAO,EAAE,aAAa;IAiBnD;;OAEG;YACW,aAAa;IAc3B;;OAEG;YACW,YAAY;IA0F1B;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIjC;;OAEG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAI1F;;;OAGG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;CAGzB"}
1
+ {"version":3,"file":"flowcore-client.d.ts","sourceRoot":"","sources":["../../src/common/flowcore-client.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAK3C;;GAEG;AACH,UAAU,mBAAmB;IAC3B,cAAc,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,GAAG,IAAI,CAAA;IAC5D;;;OAGG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAA;IAChB,MAAM,CAAC,EAAE,KAAK,CAAA;IACd,KAAK,CAAC,EAAE;QACN,KAAK,EAAE,MAAM,CAAA;QACb,UAAU,EAAE,MAAM,CAAA;KACnB,GAAG,IAAI,CAAA;CACT;AAED;;GAEG;AACH,UAAU,mBAAmB;IAC3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,KAAK,CAAA;IACtB,KAAK,CAAC,EAAE;QACN,KAAK,EAAE,MAAM,CAAA;QACb,UAAU,EAAE,MAAM,CAAA;KACnB,GAAG,IAAI,CAAA;CACT;AAUD;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,mBAAmB,GAAG,mBAAmB,CAAA;AAErE;;GAEG;AACH,qBAAa,cAAc;IAIb,OAAO,CAAC,QAAQ,CAAC,OAAO;IAHpC,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,OAAO,CAAoB;gBAEN,OAAO,EAAE,aAAa;IAwBnD;;OAEG;YACW,aAAa;IAc3B;;OAEG;YACW,YAAY;IA0F1B;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIjC;;OAEG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAI1F;;;OAGG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;CAGzB"}
@@ -3,6 +3,12 @@ import { CommandError } from "../exceptions/command-error.js";
3
3
  import { tryCatch } from "../utils/try-catch.js";
4
4
  import { tenantCache } from "./tenant.cache.js";
5
5
  const RETRYABLE_ERROR_CODES = [408, 429, 500, 502, 503, 504];
6
+ function isClientOptionsBearer(options) {
7
+ return "getBearerToken" in options;
8
+ }
9
+ function isClientOptionsApiKey(options) {
10
+ return "apiKey" in options;
11
+ }
6
12
  /**
7
13
  * A base client for executing commands
8
14
  */
@@ -12,10 +18,17 @@ export class FlowcoreClient {
12
18
  baseUrl;
13
19
  constructor(options) {
14
20
  this.options = options;
15
- if (this.options.getBearerToken) {
21
+ if (isClientOptionsBearer(this.options)) {
16
22
  this.mode = "bearer";
17
23
  }
18
- else if (this.options.apiKeyId && this.options.apiKey) {
24
+ else if (isClientOptionsApiKey(this.options)) {
25
+ if (!this.options.apiKeyId) {
26
+ const parts = this.options.apiKey.split("_");
27
+ if (parts.length !== 3 || parts[0] !== "fc") {
28
+ throw new Error("Invalid api key");
29
+ }
30
+ this.options.apiKeyId = parts[1];
31
+ }
19
32
  this.mode = "apiKey";
20
33
  }
21
34
  else {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flowcore/sdk",
3
- "version": "1.58.2",
3
+ "version": "1.59.0",
4
4
  "description": "Flowcore SDK",
5
5
  "homepage": "https://github.com/flowcore-io/flowcore-sdk#readme",
6
6
  "repository": {
@@ -4,6 +4,10 @@ import type { Command } from "./command.js";
4
4
  */
5
5
  interface ClientOptionsBearer {
6
6
  getBearerToken: () => Promise<string | null> | string | null;
7
+ /**
8
+ * The ID of the API key.
9
+ * @deprecated Use apiKey only instead (apiKeyId is only used for old api keys).
10
+ */
7
11
  apiKeyId?: never;
8
12
  apiKey?: never;
9
13
  retry?: {
@@ -15,7 +19,11 @@ interface ClientOptionsBearer {
15
19
  * The options for the api key
16
20
  */
17
21
  interface ClientOptionsApiKey {
18
- apiKeyId: string;
22
+ /**
23
+ * The ID of the API key.
24
+ * @deprecated Use apiKey only instead (apiKeyId is only used for old api keys).
25
+ */
26
+ apiKeyId?: string;
19
27
  apiKey: string;
20
28
  getBearerToken?: never;
21
29
  retry?: {
@@ -1 +1 @@
1
- {"version":3,"file":"flowcore-client.d.ts","sourceRoot":"","sources":["../../src/common/flowcore-client.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAK3C;;GAEG;AACH,UAAU,mBAAmB;IAC3B,cAAc,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,GAAG,IAAI,CAAA;IAC5D,QAAQ,CAAC,EAAE,KAAK,CAAA;IAChB,MAAM,CAAC,EAAE,KAAK,CAAA;IACd,KAAK,CAAC,EAAE;QACN,KAAK,EAAE,MAAM,CAAA;QACb,UAAU,EAAE,MAAM,CAAA;KACnB,GAAG,IAAI,CAAA;CACT;AAED;;GAEG;AACH,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,KAAK,CAAA;IACtB,KAAK,CAAC,EAAE;QACN,KAAK,EAAE,MAAM,CAAA;QACb,UAAU,EAAE,MAAM,CAAA;KACnB,GAAG,IAAI,CAAA;CACT;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,mBAAmB,GAAG,mBAAmB,CAAA;AAErE;;GAEG;AACH,qBAAa,cAAc;IAIb,OAAO,CAAC,QAAQ,CAAC,OAAO;IAHpC,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,OAAO,CAAoB;gBAEN,OAAO,EAAE,aAAa;IAiBnD;;OAEG;YACW,aAAa;IAc3B;;OAEG;YACW,YAAY;IA0F1B;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIjC;;OAEG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAI1F;;;OAGG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;CAGzB"}
1
+ {"version":3,"file":"flowcore-client.d.ts","sourceRoot":"","sources":["../../src/common/flowcore-client.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAK3C;;GAEG;AACH,UAAU,mBAAmB;IAC3B,cAAc,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,GAAG,IAAI,CAAA;IAC5D;;;OAGG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAA;IAChB,MAAM,CAAC,EAAE,KAAK,CAAA;IACd,KAAK,CAAC,EAAE;QACN,KAAK,EAAE,MAAM,CAAA;QACb,UAAU,EAAE,MAAM,CAAA;KACnB,GAAG,IAAI,CAAA;CACT;AAED;;GAEG;AACH,UAAU,mBAAmB;IAC3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,KAAK,CAAA;IACtB,KAAK,CAAC,EAAE;QACN,KAAK,EAAE,MAAM,CAAA;QACb,UAAU,EAAE,MAAM,CAAA;KACnB,GAAG,IAAI,CAAA;CACT;AAUD;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,mBAAmB,GAAG,mBAAmB,CAAA;AAErE;;GAEG;AACH,qBAAa,cAAc;IAIb,OAAO,CAAC,QAAQ,CAAC,OAAO;IAHpC,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,OAAO,CAAoB;gBAEN,OAAO,EAAE,aAAa;IAwBnD;;OAEG;YACW,aAAa;IAc3B;;OAEG;YACW,YAAY;IA0F1B;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIjC;;OAEG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAI1F;;;OAGG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;CAGzB"}
@@ -6,6 +6,12 @@ const command_error_js_1 = require("../exceptions/command-error.js");
6
6
  const try_catch_js_1 = require("../utils/try-catch.js");
7
7
  const tenant_cache_js_1 = require("./tenant.cache.js");
8
8
  const RETRYABLE_ERROR_CODES = [408, 429, 500, 502, 503, 504];
9
+ function isClientOptionsBearer(options) {
10
+ return "getBearerToken" in options;
11
+ }
12
+ function isClientOptionsApiKey(options) {
13
+ return "apiKey" in options;
14
+ }
9
15
  /**
10
16
  * A base client for executing commands
11
17
  */
@@ -15,10 +21,17 @@ class FlowcoreClient {
15
21
  baseUrl;
16
22
  constructor(options) {
17
23
  this.options = options;
18
- if (this.options.getBearerToken) {
24
+ if (isClientOptionsBearer(this.options)) {
19
25
  this.mode = "bearer";
20
26
  }
21
- else if (this.options.apiKeyId && this.options.apiKey) {
27
+ else if (isClientOptionsApiKey(this.options)) {
28
+ if (!this.options.apiKeyId) {
29
+ const parts = this.options.apiKey.split("_");
30
+ if (parts.length !== 3 || parts[0] !== "fc") {
31
+ throw new Error("Invalid api key");
32
+ }
33
+ this.options.apiKeyId = parts[1];
34
+ }
22
35
  this.mode = "apiKey";
23
36
  }
24
37
  else {