qca-sdk 0.2.0 → 0.4.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.
Files changed (118) hide show
  1. package/README.md +120 -2
  2. package/dist/core/auth.d.ts +12 -0
  3. package/dist/core/auth.d.ts.map +1 -0
  4. package/dist/core/auth.js +34 -0
  5. package/dist/core/auth.js.map +1 -0
  6. package/dist/core/client.d.ts +4 -0
  7. package/dist/core/client.d.ts.map +1 -1
  8. package/dist/core/client.js +16 -6
  9. package/dist/core/client.js.map +1 -1
  10. package/dist/core/credentials.d.ts +3 -0
  11. package/dist/core/credentials.d.ts.map +1 -1
  12. package/dist/core/credentials.js +3 -1
  13. package/dist/core/credentials.js.map +1 -1
  14. package/dist/core/service-account-credential.d.ts +20 -0
  15. package/dist/core/service-account-credential.d.ts.map +1 -0
  16. package/dist/core/service-account-credential.js +139 -0
  17. package/dist/core/service-account-credential.js.map +1 -0
  18. package/dist/esm/core/auth.d.ts +12 -0
  19. package/dist/esm/core/auth.d.ts.map +1 -0
  20. package/dist/esm/core/auth.js +30 -0
  21. package/dist/esm/core/auth.js.map +1 -0
  22. package/dist/esm/core/client.d.ts +4 -0
  23. package/dist/esm/core/client.d.ts.map +1 -1
  24. package/dist/esm/core/client.js +16 -6
  25. package/dist/esm/core/client.js.map +1 -1
  26. package/dist/esm/core/credentials.d.ts +3 -0
  27. package/dist/esm/core/credentials.d.ts.map +1 -1
  28. package/dist/esm/core/credentials.js +1 -0
  29. package/dist/esm/core/credentials.js.map +1 -1
  30. package/dist/esm/core/service-account-credential.d.ts +20 -0
  31. package/dist/esm/core/service-account-credential.d.ts.map +1 -0
  32. package/dist/esm/core/service-account-credential.js +135 -0
  33. package/dist/esm/core/service-account-credential.js.map +1 -0
  34. package/dist/esm/forward/forwardClient.d.ts +2 -0
  35. package/dist/esm/forward/forwardClient.d.ts.map +1 -1
  36. package/dist/esm/forward/forwardClient.js +2 -0
  37. package/dist/esm/forward/forwardClient.js.map +1 -1
  38. package/dist/esm/forward/index.d.ts +3 -1
  39. package/dist/esm/forward/index.d.ts.map +1 -1
  40. package/dist/esm/forward/index.js +2 -1
  41. package/dist/esm/forward/index.js.map +1 -1
  42. package/dist/esm/forward/types.d.ts +56 -1
  43. package/dist/esm/forward/types.d.ts.map +1 -1
  44. package/dist/esm/forward/usage.d.ts +11 -0
  45. package/dist/esm/forward/usage.d.ts.map +1 -0
  46. package/dist/esm/forward/usage.js +11 -0
  47. package/dist/esm/forward/usage.js.map +1 -0
  48. package/dist/esm/forward/vault-credential.d.ts +4 -2
  49. package/dist/esm/forward/vault-credential.d.ts.map +1 -1
  50. package/dist/esm/forward/vault-credential.js +8 -0
  51. package/dist/esm/forward/vault-credential.js.map +1 -1
  52. package/dist/esm/managed/index.d.ts +1 -0
  53. package/dist/esm/managed/index.d.ts.map +1 -1
  54. package/dist/esm/managed/index.js +1 -0
  55. package/dist/esm/managed/index.js.map +1 -1
  56. package/dist/esm/managed/resources/deployment-scoped-run.d.ts +12 -0
  57. package/dist/esm/managed/resources/deployment-scoped-run.d.ts.map +1 -0
  58. package/dist/esm/managed/resources/deployment-scoped-run.js +14 -0
  59. package/dist/esm/managed/resources/deployment-scoped-run.js.map +1 -0
  60. package/dist/esm/managed/resources/deployment.d.ts +2 -0
  61. package/dist/esm/managed/resources/deployment.d.ts.map +1 -1
  62. package/dist/esm/managed/resources/deployment.js +2 -0
  63. package/dist/esm/managed/resources/deployment.js.map +1 -1
  64. package/dist/esm/managed/resources/index.d.ts +1 -0
  65. package/dist/esm/managed/resources/index.d.ts.map +1 -1
  66. package/dist/esm/managed/resources/index.js +1 -0
  67. package/dist/esm/managed/resources/index.js.map +1 -1
  68. package/dist/esm/managed/resources/session.d.ts +2 -0
  69. package/dist/esm/managed/resources/session.d.ts.map +1 -1
  70. package/dist/esm/managed/resources/session.js +5 -0
  71. package/dist/esm/managed/resources/session.js.map +1 -1
  72. package/dist/esm/managed/types.d.ts +24 -0
  73. package/dist/esm/managed/types.d.ts.map +1 -1
  74. package/dist/esm/version.d.ts +1 -1
  75. package/dist/esm/version.js +1 -1
  76. package/dist/forward/forwardClient.d.ts +2 -0
  77. package/dist/forward/forwardClient.d.ts.map +1 -1
  78. package/dist/forward/forwardClient.js +2 -0
  79. package/dist/forward/forwardClient.js.map +1 -1
  80. package/dist/forward/index.d.ts +3 -1
  81. package/dist/forward/index.d.ts.map +1 -1
  82. package/dist/forward/index.js +4 -1
  83. package/dist/forward/index.js.map +1 -1
  84. package/dist/forward/types.d.ts +56 -1
  85. package/dist/forward/types.d.ts.map +1 -1
  86. package/dist/forward/usage.d.ts +11 -0
  87. package/dist/forward/usage.d.ts.map +1 -0
  88. package/dist/forward/usage.js +15 -0
  89. package/dist/forward/usage.js.map +1 -0
  90. package/dist/forward/vault-credential.d.ts +4 -2
  91. package/dist/forward/vault-credential.d.ts.map +1 -1
  92. package/dist/forward/vault-credential.js +8 -0
  93. package/dist/forward/vault-credential.js.map +1 -1
  94. package/dist/managed/index.d.ts +1 -0
  95. package/dist/managed/index.d.ts.map +1 -1
  96. package/dist/managed/index.js +3 -1
  97. package/dist/managed/index.js.map +1 -1
  98. package/dist/managed/resources/deployment-scoped-run.d.ts +12 -0
  99. package/dist/managed/resources/deployment-scoped-run.d.ts.map +1 -0
  100. package/dist/managed/resources/deployment-scoped-run.js +18 -0
  101. package/dist/managed/resources/deployment-scoped-run.js.map +1 -0
  102. package/dist/managed/resources/deployment.d.ts +2 -0
  103. package/dist/managed/resources/deployment.d.ts.map +1 -1
  104. package/dist/managed/resources/deployment.js +2 -0
  105. package/dist/managed/resources/deployment.js.map +1 -1
  106. package/dist/managed/resources/index.d.ts +1 -0
  107. package/dist/managed/resources/index.d.ts.map +1 -1
  108. package/dist/managed/resources/index.js +3 -1
  109. package/dist/managed/resources/index.js.map +1 -1
  110. package/dist/managed/resources/session.d.ts +2 -0
  111. package/dist/managed/resources/session.d.ts.map +1 -1
  112. package/dist/managed/resources/session.js +5 -0
  113. package/dist/managed/resources/session.js.map +1 -1
  114. package/dist/managed/types.d.ts +24 -0
  115. package/dist/managed/types.d.ts.map +1 -1
  116. package/dist/version.d.ts +1 -1
  117. package/dist/version.js +1 -1
  118. package/package.json +6 -3
package/README.md CHANGED
@@ -42,7 +42,7 @@ for await (const event of client.sessions.events.list(session.id, { order: 'asc'
42
42
  }
43
43
  ```
44
44
 
45
- `ForwardClient` covers the Forward API — `templates`, `identities`, `sessions`, `schedules`, `scheduleRuns`, `batches`, `channels`, `channelPairings`, `environments`, `files`, `skills`, `vaults`, `memoryStores` and `models`.
45
+ `ForwardClient` covers the Forward API — `templates`, `identities`, `sessions`, `schedules`, `scheduleRuns`, `batches`, `channels`, `channelPairings`, `environments`, `files`, `skills`, `vaults`, `memoryStores`, `models` and `usage`.
46
46
 
47
47
  ```ts
48
48
  import { ManagedClient } from 'qca-sdk';
@@ -75,9 +75,42 @@ Each client also has its own entry point — `qca-sdk/forward` and `qca-sdk/mana
75
75
  import ForwardClient from 'qca-sdk/forward';
76
76
  ```
77
77
 
78
+ ### Usage and cancellation
79
+
80
+ Forward Usage requires PAT or Admin SAT.
81
+
82
+ ```ts
83
+ for await (const row of forward.usage.listIdentities({
84
+ start_at: '2026-09-14T09:00:00', end_at: '2026-09-14T12:00:00',
85
+ identity_ids: ['idn_one', 'idn_two'],
86
+ })) {
87
+ console.log(row.identity_id, row.active_seconds, row.credits);
88
+ }
89
+ const acknowledgement = await managed.sessions.cancel('sess_one');
90
+ for await (const run of managed.deployments.runs.list({ deployment_id: 'dep_one', limit: 20 })) {
91
+ console.log(run.id);
92
+ }
93
+ const run = await managed.deployments.runs.retrieve('drun_one', { deployment_id: 'dep_one' });
94
+ ```
95
+
96
+ `usage.listTemplates` accepts the same filters. Bounds are whole hours in
97
+ Asia/Shanghai for CN and Global, with an inclusive start, exclusive end, and a
98
+ maximum 744-hour span. Multi-ID filters accept arrays or comma-separated strings.
99
+ `active_seconds` preserves fractions. Legacy timestamp parameters and
100
+ `duration_seconds` are not exposed.
101
+
102
+ `forward.vaults.credentials.update('vault_one', 'cred_one', { auth: {...} })`
103
+ rotates write-only secrets; only auth and metadata are patched, omitted fields
104
+ are preserved, and this operation never retries automatically.
105
+ `metadata: null` clears metadata; `metadata: { key: null }` deletes a key.
106
+
107
+ Session cancellation returns the lightweight `canceling` acknowledgement for
108
+ active (HTTP 202) and idle (HTTP 200) sessions. The global `deploymentRuns` resource
109
+ remains available.
110
+
78
111
  ### Configuration
79
112
 
80
- `pat` accepts a string or a function returning a string or a promise, which is re-resolved before every request attempt — useful for short-lived tokens. A `Credential` object can be supplied instead; `PATCredential.fromEnv()` reads `QODER_PAT`.
113
+ `accessToken` accepts a string or a function returning a string or a promise, re-resolved before every request attempt. `pat` remains available for existing PAT integrations. `QODER_ACCESS_TOKEN` supplies the selected mode's token; PAT mode falls back to `QODER_PAT`. A `Credential` object can be supplied instead; see the authentication section for automatic SA exchange.
81
114
 
82
115
  The base URL comes from `QODER_FORWARD_BASE_URL` for Forward and `QODER_BASE_URL` for Managed, defaulting to `https://api.qoder.com/api/v1/forward` and `https://api.qoder.com/api/v1/cloud`. Explicit constructor options always win.
83
116
 
@@ -93,6 +126,91 @@ const client = new ManagedClient({
93
126
  });
94
127
  ```
95
128
 
129
+ ## PAT and Service Account authentication
130
+
131
+ PAT and SA are parallel modes. Existing `pat` calls keep working. For an existing
132
+ SAT use `{ authMode: 'sa', accessToken }`. `accessToken` also accepts a callback.
133
+ `QODER_ACCESS_TOKEN` supplies the selected mode's token; only PAT mode falls back
134
+ to `QODER_PAT`. Ordinary clients never automatically read `QODER_SA_KEY`.
135
+
136
+ For automatic SAT exchange, explicitly construct a shared credential:
137
+
138
+ ```ts
139
+ import { ForwardClient, ManagedClient, ServiceAccountCredential } from 'qca-sdk';
140
+
141
+ const credential = ServiceAccountCredential.fromEnv({
142
+ region: 'global',
143
+ scopes: ['qca.access', 'forward.access'],
144
+ });
145
+ const forward = new ForwardClient({ credential });
146
+ const managed = new ManagedClient({ credential });
147
+ ```
148
+
149
+ For CN, use `region: 'cn'` and matching `https://api.qoder.com.cn/api/v1/forward/`
150
+ and `https://api.qoder.com.cn/api/v1/cloud/` BaseURLs. Managed-only integrations
151
+ can request `['qca.access']`. Scopes and Service Account permissions/workspace
152
+ bindings must be configured server-side; the SDK does not provision them.
153
+
154
+ The credential lazily exchanges the SA Key, caches the server's actual lifetime,
155
+ and renews on the next request in the refresh window. Concurrent callers share
156
+ one exchange. A transient failure can reuse a still-safe SAT; authentication or
157
+ invalid-response failures cannot. Failures enter a bounded cooldown. There is
158
+ no PAT fallback, background refresh, or automatic replay of a 401 write request.
159
+ The independent exchange timeout includes reading its body (default 30 seconds).
160
+ Cancelling a business request ends that caller's wait; the shared exchange can
161
+ continue and cache its result. Already-open streams are not closed by cache expiry.
162
+
163
+ Do not combine `accessToken` with `pat` or `credential`, or an SA credential with
164
+ a static token. Legacy `pat` + custom credential retains provider precedence.
165
+ Request Authorization headers still override automatic injection. `withOptions`
166
+ retains mode and source; explicitly changing `authMode` clears the other mode's
167
+ credentials before applying new options.
168
+
169
+ Run the read-only CN/Global SA smoke separately with `npm run test:live:sa`, setting
170
+ `QODER_SA_CN_KEY` and `QODER_SA_GLOBAL_KEY` in `.env.live` or the process environment.
171
+ Process variables take precedence; `LIVE_ENV_FILE` selects another file.
172
+ Both keys are checked before the first API call. For write/read, Session SSE and
173
+ cleanup verification, run `npm run test:live:sa:execution` with
174
+ `QODER_SA_LIVE_ALLOW_WRITE=true` and `QODER_SA_LIVE_ALLOW_EXECUTION=true`.
175
+ `QODER_SA_MODEL` defaults to `auto`. Ordinary offline and PAT suites do not require
176
+ SA credentials; `QODER_AUTH_MODE` switches examples, not the PAT test suites. See the
177
+ [official authentication contract](https://docs.qoder.com/cloud-agents/api/conventions/authentication).
178
+
179
+ ### Authentication examples
180
+
181
+ The two read-only examples under `examples/auth/` show client construction directly:
182
+ SA Key exchange with automatic caching/renewal, and direct SAT access with renewal
183
+ managed by the caller. Each lists Forward templates and Managed agents; no model
184
+ execution or resources are created. The SA needs both API scopes/permissions and
185
+ its Managed workspace binding in the selected region.
186
+
187
+ ```sh
188
+ npm run build
189
+ # Configure QODER_SA_REGION=cn|global and only the credential needed by the demo.
190
+ node --env-file=.env.live examples/auth/sa-key.mjs # QODER_SA_KEY; leave QODER_ACCESS_TOKEN empty
191
+ node --env-file=.env.live examples/auth/sa-token.mjs # QODER_ACCESS_TOKEN; leave QODER_SA_KEY empty
192
+ ```
193
+
194
+ The existing business examples keep PAT as the default. Node's `--env-file` can
195
+ load `.env.live`; the example helpers themselves read process environment variables.
196
+ Set `QODER_AUTH_MODE=sa` to select SA explicitly, then configure exactly one of
197
+ `QODER_SA_KEY` and `QODER_ACCESS_TOKEN`. `QODER_SA_REGION=cn|global` selects both the
198
+ business and exchange hosts. Leave the unused credential empty. Ambient PATs are
199
+ ignored in SA mode; missing SA credentials and conflicting Key/SAT inputs fail
200
+ before a request is sent. This selection is example configuration, not implicit
201
+ SDK behavior.
202
+
203
+ ```sh
204
+ # Reuse the same models or Session program with SA authentication.
205
+ QODER_AUTH_MODE=sa QODER_SA_REGION=cn node --env-file=.env.live examples/forward/models.mjs
206
+ QODER_AUTH_MODE=sa QODER_SA_REGION=global node --env-file=.env.live examples/managed/session.mjs
207
+ ```
208
+
209
+ For a centralized SAT service, use
210
+ `new ForwardClient({ authMode: 'sa', accessToken: () => tokenManager.getValidSAT() })`.
211
+ The callback may return a promise and is called before each HTTP attempt; the token
212
+ manager is responsible for renewing the SAT.
213
+
96
214
  ## Request and response types
97
215
 
98
216
  Every operation is typed. The two APIs define independent type sets, so request and response types are exported from the subpath entry points rather than the package root:
@@ -0,0 +1,12 @@
1
+ import { type Credential } from './credentials.js';
2
+ export type AuthMode = 'pat' | 'sa';
3
+ export type TokenSource = string | (() => string | Promise<string>);
4
+ export interface AuthOptions {
5
+ authMode?: AuthMode;
6
+ pat?: TokenSource;
7
+ accessToken?: TokenSource;
8
+ credential?: Credential;
9
+ }
10
+ export declare function resolveAuthMode(options: AuthOptions): AuthMode;
11
+ export declare function resolveToken(options: AuthOptions, mode: AuthMode): Promise<string | undefined>;
12
+ //# sourceMappingURL=auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/core/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAW,MAAM,kBAAkB,CAAC;AAI5D,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,IAAI,CAAC;AACpC,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;AACpE,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,GAAG,CAAC,EAAE,WAAW,CAAC;IAClB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,QAAQ,CAY9D;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CASpG"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveAuthMode = resolveAuthMode;
4
+ exports.resolveToken = resolveToken;
5
+ const credentials_js_1 = require("./credentials.js");
6
+ const service_account_credential_js_1 = require("./service-account-credential.js");
7
+ const error_js_1 = require("./error.js");
8
+ function resolveAuthMode(options) {
9
+ const nativeSA = options.credential instanceof service_account_credential_js_1.ServiceAccountCredential;
10
+ const mode = options.authMode ?? (nativeSA ? 'sa' : 'pat');
11
+ if (mode !== 'pat' && mode !== 'sa')
12
+ throw new error_js_1.QoderError('authMode must be pat or sa');
13
+ if (mode === 'sa' && options.pat !== undefined)
14
+ throw new error_js_1.QoderError('pat cannot be used in SA mode');
15
+ if (nativeSA && (mode !== 'sa' || options.pat !== undefined || options.accessToken !== undefined)) {
16
+ throw new error_js_1.QoderError('ServiceAccountCredential requires SA mode without a static token');
17
+ }
18
+ if (options.accessToken !== undefined && (options.pat !== undefined || options.credential !== undefined)) {
19
+ throw new error_js_1.QoderError('accessToken cannot be combined with pat or credential');
20
+ }
21
+ return mode;
22
+ }
23
+ async function resolveToken(options, mode) {
24
+ const source = options.credential ?? options.accessToken ?? options.pat;
25
+ if (source !== undefined) {
26
+ const token = typeof source === 'object' ? await source.getToken()
27
+ : typeof source === 'function' ? await source() : source;
28
+ if (typeof token !== 'string' || !token.trim())
29
+ throw new error_js_1.QoderError('Configured credential returned an empty access token');
30
+ return token;
31
+ }
32
+ return (0, credentials_js_1.readEnv)('QODER_ACCESS_TOKEN') || (mode === 'pat' ? (0, credentials_js_1.readEnv)('QODER_PAT') : undefined);
33
+ }
34
+ //# sourceMappingURL=auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/core/auth.ts"],"names":[],"mappings":";;AAaA,0CAYC;AAED,oCASC;AApCD,qDAA4D;AAC5D,mFAA2E;AAC3E,yCAAwC;AAWxC,SAAgB,eAAe,CAAC,OAAoB;IAClD,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,YAAY,wDAAwB,CAAC;IACxE,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC3D,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,IAAI;QAAE,MAAM,IAAI,qBAAU,CAAC,4BAA4B,CAAC,CAAC;IACxF,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS;QAAE,MAAM,IAAI,qBAAU,CAAC,+BAA+B,CAAC,CAAC;IACtG,IAAI,QAAQ,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,EAAE,CAAC;QAClG,MAAM,IAAI,qBAAU,CAAC,kEAAkE,CAAC,CAAC;IAC3F,CAAC;IACD,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,EAAE,CAAC;QACzG,MAAM,IAAI,qBAAU,CAAC,uDAAuD,CAAC,CAAC;IAChF,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAEM,KAAK,UAAU,YAAY,CAAC,OAAoB,EAAE,IAAc;IACrE,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC;IACxE,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,EAAE;YAChE,CAAC,CAAC,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QAC3D,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YAAE,MAAM,IAAI,qBAAU,CAAC,sDAAsD,CAAC,CAAC;QAC7H,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAA,wBAAO,EAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,IAAA,wBAAO,EAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAC9F,CAAC"}
@@ -1,9 +1,12 @@
1
1
  import { APIPromise } from './api-promise.js';
2
2
  import { type Credential } from './credentials.js';
3
+ import { type AuthMode } from './auth.js';
3
4
  import { PagePromise, type PaginationMode } from './pagination.js';
4
5
  export type HeadersLike = HeadersInit | Record<string, string | null | undefined>;
5
6
  export type Middleware = (request: Request, next: (request: Request) => Promise<Response>) => Promise<Response>;
6
7
  export interface ClientOptions {
8
+ authMode?: AuthMode;
9
+ accessToken?: string | (() => string | Promise<string>);
7
10
  pat?: string | (() => string | Promise<string>);
8
11
  credential?: Credential;
9
12
  baseURL?: string;
@@ -32,6 +35,7 @@ export declare function mergeHeaders(...sources: (HeadersLike | undefined)[]): H
32
35
  export declare function stringifyQuery(query: object, arrayFormat?: 'repeat' | 'brackets'): string;
33
36
  export declare class APIClient {
34
37
  readonly mode: 'forward' | 'managed';
38
+ readonly authMode: AuthMode;
35
39
  readonly baseURL: string;
36
40
  readonly maxRetries: number;
37
41
  readonly timeout: number;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,8 @@ exports.mergeHeaders = mergeHeaders;
5
5
  exports.stringifyQuery = stringifyQuery;
6
6
  const api_promise_js_1 = require("./api-promise.js");
7
7
  const credentials_js_1 = require("./credentials.js");
8
+ const auth_js_1 = require("./auth.js");
9
+ const service_account_credential_js_1 = require("./service-account-credential.js");
8
10
  const error_js_1 = require("./error.js");
9
11
  const pagination_js_1 = require("./pagination.js");
10
12
  const streaming_js_1 = require("./streaming.js");
@@ -77,6 +79,7 @@ async function wait(ms, signal, timedOut) {
77
79
  }
78
80
  class APIClient {
79
81
  mode;
82
+ authMode;
80
83
  baseURL;
81
84
  maxRetries;
82
85
  timeout;
@@ -86,13 +89,16 @@ class APIClient {
86
89
  controllers = new WeakMap();
87
90
  constructor(options = {}, mode = 'managed') {
88
91
  this.mode = mode;
89
- this.options = { ...options };
92
+ this.authMode = (0, auth_js_1.resolveAuthMode)(options);
93
+ this.options = { ...options, authMode: this.authMode };
90
94
  this.defaultHeaders = options.defaultHeaders;
91
95
  this.baseURL = (options.baseURL ?? (0, credentials_js_1.readEnv)(mode === 'forward' ? 'QODER_FORWARD_BASE_URL' : 'QODER_BASE_URL')
92
96
  ?? `https://api.qoder.com/api/v1/${mode === 'forward' ? 'forward' : 'cloud'}`).replace(/\/+$/, '');
93
97
  const url = new URL(this.baseURL);
94
98
  if (!['http:', 'https:'].includes(url.protocol) || url.username || url.password)
95
99
  throw new error_js_1.QoderError('Invalid baseURL');
100
+ if (options.credential instanceof service_account_credential_js_1.ServiceAccountCredential)
101
+ options.credential.validateRegion(url.hostname);
96
102
  this.maxRetries = options.maxRetries ?? 2;
97
103
  this.timeout = options.timeout ?? 600_000;
98
104
  this.validateOptions(this.maxRetries, this.timeout);
@@ -103,8 +109,14 @@ class APIClient {
103
109
  /** Create a client of the same type, replacing supplied options and retaining the rest. */
104
110
  withOptions(options) {
105
111
  const Client = this.constructor;
112
+ const inherited = { ...this.options };
113
+ if (options.authMode !== undefined && options.authMode !== this.authMode) {
114
+ delete inherited.pat;
115
+ delete inherited.accessToken;
116
+ delete inherited.credential;
117
+ }
106
118
  return new Client({
107
- ...this.options,
119
+ ...inherited,
108
120
  baseURL: this.baseURL,
109
121
  maxRetries: this.maxRetries,
110
122
  timeout: this.timeout,
@@ -122,7 +134,7 @@ class APIClient {
122
134
  if (headers.get('authorization')) {
123
135
  return;
124
136
  }
125
- throw new Error('Could not resolve authentication method. Expected one of pat or credential to be set, or the QODER_PAT environment variable to be configured.');
137
+ throw new Error('Could not resolve authentication method. Configure accessToken or credential, or QODER_ACCESS_TOKEN (QODER_PAT is supported in PAT mode).');
126
138
  }
127
139
  request(options) {
128
140
  return new api_promise_js_1.APIPromise(this.execute(options), async (response) => {
@@ -253,9 +265,7 @@ class APIClient {
253
265
  if (!storage) {
254
266
  attemptHeaders.set('X-Qoder-Retry-Count', String(attempt));
255
267
  if (!attemptHeaders.has('authorization')) {
256
- const credential = this.options.credential;
257
- const configured = this.options.pat;
258
- const token = await withSignal(Promise.resolve(credential ? credential.getToken() : typeof configured === 'function' ? configured() : configured ?? (0, credentials_js_1.readEnv)('QODER_PAT')), signal, () => timedOut);
268
+ const token = await withSignal((0, auth_js_1.resolveToken)(this.options, this.authMode), signal, () => timedOut);
259
269
  if (token)
260
270
  attemptHeaders.set('Authorization', `Bearer ${token}`);
261
271
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,9 @@
1
1
  export interface Credential {
2
2
  getToken(): string | Promise<string>;
3
3
  }
4
+ export { ServiceAccountCredential } from './service-account-credential.js';
5
+ export type { ServiceAccountCredentialOptions } from './service-account-credential.js';
6
+ export type { AuthMode } from './auth.js';
4
7
  export declare function readEnv(name: string): string | undefined;
5
8
  export declare class PATCredential implements Credential {
6
9
  private readonly token;
@@ -1 +1 @@
1
- {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/core/credentials.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,QAAQ,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACtC;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAExD;AAED,qBAAa,aAAc,YAAW,UAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,MAAM;IAI1C,MAAM,CAAC,OAAO,CAAC,IAAI,SAAc,GAAG,aAAa;IAIjD,QAAQ,IAAI,MAAM;CACnB"}
1
+ {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/core/credentials.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,QAAQ,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACtC;AAED,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,YAAY,EAAE,+BAA+B,EAAE,MAAM,iCAAiC,CAAC;AACvF,YAAY,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE1C,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAExD;AAED,qBAAa,aAAc,YAAW,UAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,MAAM;IAI1C,MAAM,CAAC,OAAO,CAAC,IAAI,SAAc,GAAG,aAAa;IAIjD,QAAQ,IAAI,MAAM;CACnB"}
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PATCredential = void 0;
3
+ exports.PATCredential = exports.ServiceAccountCredential = void 0;
4
4
  exports.readEnv = readEnv;
5
+ var service_account_credential_js_1 = require("./service-account-credential.js");
6
+ Object.defineProperty(exports, "ServiceAccountCredential", { enumerable: true, get: function () { return service_account_credential_js_1.ServiceAccountCredential; } });
5
7
  function readEnv(name) {
6
8
  return globalThis.process?.env?.[name];
7
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../src/core/credentials.ts"],"names":[],"mappings":";;;AAIA,0BAEC;AAFD,SAAgB,OAAO,CAAC,IAAY;IAClC,OAAQ,UAAoF,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;AACpH,CAAC;AAED,MAAa,aAAa;IACK;IAA7B,YAA6B,KAAa;QAAb,UAAK,GAAL,KAAK,CAAQ;QACxC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,IAAI,GAAG,WAAW;QAC/B,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IAED,QAAQ,KAAa,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;CAC1C;AAVD,sCAUC"}
1
+ {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../src/core/credentials.ts"],"names":[],"mappings":";;;AAQA,0BAEC;AAND,iFAA2E;AAAlE,yIAAA,wBAAwB,OAAA;AAIjC,SAAgB,OAAO,CAAC,IAAY;IAClC,OAAQ,UAAoF,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;AACpH,CAAC;AAED,MAAa,aAAa;IACK;IAA7B,YAA6B,KAAa;QAAb,UAAK,GAAL,KAAK,CAAQ;QACxC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,IAAI,GAAG,WAAW;QAC/B,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IAED,QAAQ,KAAa,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;CAC1C;AAVD,sCAUC"}
@@ -0,0 +1,20 @@
1
+ import type { Credential } from './credentials.js';
2
+ export interface ServiceAccountCredentialOptions {
3
+ saKey: string;
4
+ region: 'cn' | 'global';
5
+ scopes: readonly string[];
6
+ ttlSeconds?: number;
7
+ /** Exchange timeout in milliseconds, including response body reading. */
8
+ timeout?: number;
9
+ fetch?: typeof globalThis.fetch;
10
+ }
11
+ /** Lazy, instance-owned SAT cache. Share an instance between clients in the same region. */
12
+ export declare class ServiceAccountCredential implements Credential {
13
+ #private;
14
+ readonly region: 'cn' | 'global';
15
+ constructor(options: ServiceAccountCredentialOptions);
16
+ static fromEnv(options: Omit<ServiceAccountCredentialOptions, 'saKey'>): ServiceAccountCredential;
17
+ validateRegion(host: string): void;
18
+ getToken(): Promise<string>;
19
+ }
20
+ //# sourceMappingURL=service-account-credential.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-account-credential.d.ts","sourceRoot":"","sources":["../../src/core/service-account-credential.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAInD,MAAM,WAAW,+BAA+B;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,IAAI,GAAG,QAAQ,CAAC;IACxB,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yEAAyE;IACzE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;CACjC;AAED,4FAA4F;AAC5F,qBAAa,wBAAyB,YAAW,UAAU;;IACzD,QAAQ,CAAC,MAAM,EAAE,IAAI,GAAG,QAAQ,CAAC;gBAcrB,OAAO,EAAE,+BAA+B;IAkBpD,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,+BAA+B,EAAE,OAAO,CAAC,GAAG,wBAAwB;IAIjG,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAKlC,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC;CA+E5B"}
@@ -0,0 +1,139 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ServiceAccountCredential = void 0;
4
+ const credentials_js_1 = require("./credentials.js");
5
+ const error_js_1 = require("./error.js");
6
+ /** Lazy, instance-owned SAT cache. Share an instance between clients in the same region. */
7
+ class ServiceAccountCredential {
8
+ region;
9
+ #key;
10
+ #scope;
11
+ #ttl;
12
+ #timeout;
13
+ #fetch;
14
+ #token;
15
+ #refreshAt = 0;
16
+ #safeUntil = 0;
17
+ #inflight;
18
+ #failure;
19
+ #retryAt = 0;
20
+ #transient = false;
21
+ constructor(options) {
22
+ if (!options.saKey?.trim())
23
+ throw new error_js_1.QoderError('saKey must not be empty');
24
+ if (options.region !== 'cn' && options.region !== 'global')
25
+ throw new error_js_1.QoderError('region must be cn or global');
26
+ if (!Array.isArray(options.scopes) || !options.scopes.length
27
+ || options.scopes.some(scope => typeof scope !== 'string' || !scope || /\s/.test(scope))) {
28
+ throw new error_js_1.QoderError('scopes must be a nonempty array of scope names');
29
+ }
30
+ this.region = options.region;
31
+ this.#key = options.saKey;
32
+ this.#scope = [...new Set(options.scopes)].join(' ');
33
+ this.#ttl = options.ttlSeconds ?? 3600;
34
+ if (!Number.isInteger(this.#ttl) || this.#ttl < 1 || this.#ttl > 43200)
35
+ throw new error_js_1.QoderError('ttlSeconds must be an integer from 1 to 43200');
36
+ this.#timeout = options.timeout ?? 30_000;
37
+ if (!Number.isFinite(this.#timeout) || this.#timeout <= 0 || this.#timeout > 2 ** 31 - 1)
38
+ throw new error_js_1.QoderError('Invalid exchange timeout');
39
+ this.#fetch = options.fetch ?? globalThis.fetch;
40
+ if (!this.#fetch)
41
+ throw new error_js_1.QoderError('A fetch implementation is required');
42
+ }
43
+ static fromEnv(options) {
44
+ return new ServiceAccountCredential({ ...options, saKey: (0, credentials_js_1.readEnv)('QODER_SA_KEY') ?? '' });
45
+ }
46
+ validateRegion(host) {
47
+ const expected = host === 'api.qoder.com.cn' ? 'cn' : host === 'api.qoder.com' ? 'global' : undefined;
48
+ if (expected && expected !== this.region)
49
+ throw new error_js_1.QoderError('SA credential region does not match baseURL');
50
+ }
51
+ getToken() {
52
+ const now = performance.now();
53
+ if (now < this.#retryAt)
54
+ return this.#fallback();
55
+ if (this.#token && now < this.#refreshAt)
56
+ return Promise.resolve(this.#token);
57
+ if (!this.#inflight) {
58
+ const task = this.#exchange();
59
+ this.#inflight = task;
60
+ // Clear only this generation; rejection is shared and cached during cooldown.
61
+ void task.then(() => { this.#inflight = undefined; }, () => { this.#inflight = undefined; });
62
+ }
63
+ return this.#inflight;
64
+ }
65
+ #fallback() {
66
+ if (this.#transient && this.#token && performance.now() < this.#safeUntil)
67
+ return Promise.resolve(this.#token);
68
+ return Promise.reject(this.#failure);
69
+ }
70
+ async #exchange() {
71
+ const started = performance.now();
72
+ const controller = new AbortController();
73
+ const timer = setTimeout(() => controller.abort(), this.#timeout);
74
+ let response;
75
+ let bodyRead = false;
76
+ try {
77
+ const host = this.region === 'cn' ? 'https://openapi.qoder.com.cn' : 'https://openapi.qoder.sh';
78
+ response = await this.#fetch(`${host}/api/v1/serviceToken/exchange`, {
79
+ method: 'POST', redirect: 'error', credentials: 'omit', signal: controller.signal,
80
+ headers: { Authorization: `Bearer ${this.#key}`, 'Content-Type': 'application/json', Accept: 'application/json' },
81
+ body: JSON.stringify({ grant_type: 'client_credentials', audience: 'qoder', scope: this.#scope, ttl_seconds: this.#ttl }),
82
+ });
83
+ const text = await response.text();
84
+ bodyRead = true;
85
+ let body = {};
86
+ try {
87
+ body = JSON.parse(text);
88
+ }
89
+ catch { /* Handled as an invalid response below. */ }
90
+ if (!response.ok) {
91
+ const detail = body?.error && typeof body.error === 'object' ? body.error : body;
92
+ const safe = (value) => typeof value === 'string' ? value.split(this.#key).join('[redacted]').split(this.#token ?? '\0').join('[redacted]').slice(0, 256) : undefined;
93
+ throw error_js_1.APIError.generate(response.status, { code: safe(detail?.code), request_id: safe(body?.request_id) }, 'Service account token exchange failed', new Headers({ 'x-request-id': safe(response.headers.get('x-request-id') ?? response.headers.get('request-id')) ?? '' }));
94
+ }
95
+ const ttl = typeof body?.expires_in === 'string' && /^\d+$/.test(body.expires_in) ? Number(body.expires_in) : body?.expires_in;
96
+ if (typeof body?.access_token !== 'string' || !body.access_token.trim()
97
+ || typeof body.token_type !== 'string' || body.token_type.toLowerCase() !== 'bearer'
98
+ || typeof ttl !== 'number' || !Number.isSafeInteger(ttl) || ttl <= 0 || ttl > 43200
99
+ || (body.expires_at !== undefined && (typeof body.expires_at !== 'string'
100
+ || !/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})$/.test(body.expires_at)
101
+ || !Number.isFinite(Date.parse(body.expires_at))))) {
102
+ throw new error_js_1.QoderError('Invalid service account token exchange response');
103
+ }
104
+ const safeUntil = started + (ttl - Math.min(5, ttl * 0.05)) * 1000;
105
+ if (performance.now() >= safeUntil)
106
+ throw new error_js_1.QoderError('Exchanged token has insufficient remaining lifetime');
107
+ this.#token = body.access_token;
108
+ this.#safeUntil = safeUntil;
109
+ this.#refreshAt = started + (ttl - Math.min(60, ttl * 0.1)) * 1000;
110
+ this.#retryAt = 0;
111
+ this.#failure = undefined;
112
+ return this.#token;
113
+ }
114
+ catch (error) {
115
+ const failure = controller.signal.aborted ? new error_js_1.APIConnectionTimeoutError('Service account token exchange timed out')
116
+ : bodyRead && error instanceof error_js_1.QoderError ? error : new error_js_1.APIConnectionError('Service account token exchange connection failed');
117
+ this.#failure = failure;
118
+ this.#transient = failure instanceof error_js_1.APIConnectionError
119
+ || (failure instanceof error_js_1.APIError && (failure.status === 429 || (failure.status !== undefined && failure.status >= 500)));
120
+ let cooldown = 5000;
121
+ if (response?.status === 429) {
122
+ const value = response.headers.get('retry-after');
123
+ if (value) {
124
+ const seconds = Number(value);
125
+ const delay = Number.isFinite(seconds) ? seconds * 1000 : Date.parse(value) - Date.now();
126
+ if (Number.isFinite(delay) && delay > 0 && delay <= 2 ** 31 - 1)
127
+ cooldown = Math.max(cooldown, delay);
128
+ }
129
+ }
130
+ this.#retryAt = performance.now() + cooldown;
131
+ return this.#fallback();
132
+ }
133
+ finally {
134
+ clearTimeout(timer);
135
+ }
136
+ }
137
+ }
138
+ exports.ServiceAccountCredential = ServiceAccountCredential;
139
+ //# sourceMappingURL=service-account-credential.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-account-credential.js","sourceRoot":"","sources":["../../src/core/service-account-credential.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { type Credential } from './credentials.js';
2
+ export type AuthMode = 'pat' | 'sa';
3
+ export type TokenSource = string | (() => string | Promise<string>);
4
+ export interface AuthOptions {
5
+ authMode?: AuthMode;
6
+ pat?: TokenSource;
7
+ accessToken?: TokenSource;
8
+ credential?: Credential;
9
+ }
10
+ export declare function resolveAuthMode(options: AuthOptions): AuthMode;
11
+ export declare function resolveToken(options: AuthOptions, mode: AuthMode): Promise<string | undefined>;
12
+ //# sourceMappingURL=auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/core/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAW,MAAM,kBAAkB,CAAC;AAI5D,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,IAAI,CAAC;AACpC,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;AACpE,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,GAAG,CAAC,EAAE,WAAW,CAAC;IAClB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,QAAQ,CAY9D;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CASpG"}