qca-sdk 0.8.0 → 0.10.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/README.md +53 -0
- package/dist/esm/forward/decision.d.ts +127 -0
- package/dist/esm/forward/decision.d.ts.map +1 -0
- package/dist/esm/forward/decision.js +32 -0
- package/dist/esm/forward/decision.js.map +1 -0
- package/dist/esm/forward/forwardClient.d.ts +4 -0
- package/dist/esm/forward/forwardClient.d.ts.map +1 -1
- package/dist/esm/forward/forwardClient.js +4 -0
- package/dist/esm/forward/forwardClient.js.map +1 -1
- package/dist/esm/forward/index.d.ts +3 -0
- package/dist/esm/forward/index.d.ts.map +1 -1
- package/dist/esm/forward/index.js +3 -0
- package/dist/esm/forward/index.js.map +1 -1
- package/dist/esm/forward/webhook-signature.d.ts +8 -0
- package/dist/esm/forward/webhook-signature.d.ts.map +1 -0
- package/dist/esm/forward/webhook-signature.js +52 -0
- package/dist/esm/forward/webhook-signature.js.map +1 -0
- package/dist/esm/forward/webhook.d.ts +95 -0
- package/dist/esm/forward/webhook.d.ts.map +1 -0
- package/dist/esm/forward/webhook.js +97 -0
- package/dist/esm/forward/webhook.js.map +1 -0
- package/dist/esm/index.d.ts +3 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +3 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.d.ts.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/forward/decision.d.ts +127 -0
- package/dist/forward/decision.d.ts.map +1 -0
- package/dist/forward/decision.js +36 -0
- package/dist/forward/decision.js.map +1 -0
- package/dist/forward/forwardClient.d.ts +4 -0
- package/dist/forward/forwardClient.d.ts.map +1 -1
- package/dist/forward/forwardClient.js +4 -0
- package/dist/forward/forwardClient.js.map +1 -1
- package/dist/forward/index.d.ts +3 -0
- package/dist/forward/index.d.ts.map +1 -1
- package/dist/forward/index.js +3 -0
- package/dist/forward/index.js.map +1 -1
- package/dist/forward/webhook-signature.d.ts +8 -0
- package/dist/forward/webhook-signature.d.ts.map +1 -0
- package/dist/forward/webhook-signature.js +57 -0
- package/dist/forward/webhook-signature.js.map +1 -0
- package/dist/forward/webhook.d.ts +95 -0
- package/dist/forward/webhook.d.ts.map +1 -0
- package/dist/forward/webhook.js +102 -0
- package/dist/forward/webhook.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -318,6 +318,55 @@ for await (const event of stream) {
|
|
|
318
318
|
|
|
319
319
|
The resumable stream does not query event history, clear an invalid cursor, or deduplicate IDs: delta frames may legitimately share an event ID. It stops after `[DONE]`, `session.status_terminated`, or `session.deleted`. Stop it early with `stream.controller.abort()`, an `AbortSignal` in `RequestOptions`, or `await stream.close()`.
|
|
320
320
|
|
|
321
|
+
## Forward Decisions
|
|
322
|
+
|
|
323
|
+
Evaluate a nonempty `state` object or an accessible `session_id` (exactly one)
|
|
324
|
+
with 1–32 choice or score questions. Choice values are strings or booleans;
|
|
325
|
+
score questions select from your numeric levels. Creation waits for the result.
|
|
326
|
+
The service selects the model; no `model` parameter is accepted. Normal PAT or
|
|
327
|
+
SAT authentication determines the caller's access.
|
|
328
|
+
|
|
329
|
+
```ts
|
|
330
|
+
import { randomUUID } from 'node:crypto';
|
|
331
|
+
import { ForwardClient } from 'qca-sdk';
|
|
332
|
+
|
|
333
|
+
const client = new ForwardClient(); // Or use the PAT/SA configuration above.
|
|
334
|
+
const decision = await client.decisions.create({
|
|
335
|
+
state: { message: 'My issue is resolved.' },
|
|
336
|
+
questions: [{
|
|
337
|
+
type: 'choice', name: 'resolved',
|
|
338
|
+
instructions: 'Has the user confirmed resolution?',
|
|
339
|
+
choices: [{ value: true }, { value: false }],
|
|
340
|
+
}],
|
|
341
|
+
idempotency_key: randomUUID(),
|
|
342
|
+
});
|
|
343
|
+
const stored = await client.decisions.retrieve(decision.id);
|
|
344
|
+
console.log(stored.answers);
|
|
345
|
+
const page = await client.decisions.list({ limit: 20 });
|
|
346
|
+
console.log(page.data); // Or use for await over list(...) to follow all pages.
|
|
347
|
+
```
|
|
348
|
+
|
|
349
|
+
For Session input, replace `state` with `session_id`.
|
|
350
|
+
For scores, use `{ type: 'score', instructions: 'Rate risk', levels:
|
|
351
|
+
[{ label: 'low', score: 0 }, { label: 'high', score: 10 }] }`.
|
|
352
|
+
|
|
353
|
+
Session context is selected by the server. Inspect `context.truncated`,
|
|
354
|
+
`context.truncation_reasons`, and the input-token estimate to understand the
|
|
355
|
+
selected history. Explicit state and questions are never shortened; oversized
|
|
356
|
+
input returns HTTP 422. Context estimates are separate from `usage`, which can
|
|
357
|
+
be null. Answers can also have type `refusal`.
|
|
358
|
+
|
|
359
|
+
Reuse an idempotency key only for identical request bytes. A changed request or
|
|
360
|
+
a still-running request with that key returns HTTP 409; the SDK does not retry
|
|
361
|
+
that conflict automatically. Creation errors can contain `decision_id` in the
|
|
362
|
+
standard API error body. Retrieve and list can return running or failed records.
|
|
363
|
+
Lists preserve server order and support `after_id` / `before_id` cursors (one at
|
|
364
|
+
a time), optional `session_id`, and a limit of 1–100. There is no delete endpoint;
|
|
365
|
+
Decision records expire according to server retention.
|
|
366
|
+
|
|
367
|
+
See the [runnable example](examples/forward/decisions.mjs) and the
|
|
368
|
+
[opt-in live test instructions](CONTRIBUTING.md#decision-live-tests).
|
|
369
|
+
|
|
321
370
|
## Forward Drive (Beta)
|
|
322
371
|
|
|
323
372
|
Drive is a Beta API. It uses `entries` / `next_page_token`, not the ordinary
|
|
@@ -731,3 +780,7 @@ and request IDs without tokens. Tests create temporary Identities, delete them o
|
|
|
731
780
|
original Templates and record persisted Conversations because transport close cannot delete them. These entries are not
|
|
732
781
|
included in daily PAT tests until explicitly configured; offline CI validates
|
|
733
782
|
protocol behavior without network or credentials.
|
|
783
|
+
|
|
784
|
+
## Forward Webhooks
|
|
785
|
+
|
|
786
|
+
Manage webhook endpoints and verify signed event deliveries. See [Webhook usage and receiver examples](docs/webhooks.md).
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { APIResource } from '../core/resource.js';
|
|
2
|
+
import type { RequestOptions } from '../core/client.js';
|
|
3
|
+
import type { APIPromise } from '../core/api-promise.js';
|
|
4
|
+
import type { PagePromise } from '../core/pagination.js';
|
|
5
|
+
export interface DecisionChoiceParam {
|
|
6
|
+
/** Nonempty string or boolean, distinct within the question. */
|
|
7
|
+
value: string | boolean;
|
|
8
|
+
description?: string;
|
|
9
|
+
}
|
|
10
|
+
export interface DecisionLevelParam {
|
|
11
|
+
label: string;
|
|
12
|
+
/** A finite numeric score, including zero. */
|
|
13
|
+
score: number;
|
|
14
|
+
description?: string;
|
|
15
|
+
}
|
|
16
|
+
export type DecisionQuestionParam = {
|
|
17
|
+
/** Optional unique, nonempty name, up to 128 bytes. */
|
|
18
|
+
name?: string;
|
|
19
|
+
instructions: string;
|
|
20
|
+
} & ({
|
|
21
|
+
type: 'choice';
|
|
22
|
+
choices: DecisionChoiceParam[];
|
|
23
|
+
levels?: never;
|
|
24
|
+
} | {
|
|
25
|
+
type: 'score';
|
|
26
|
+
levels: DecisionLevelParam[];
|
|
27
|
+
choices?: never;
|
|
28
|
+
});
|
|
29
|
+
/** Provide exactly one input mode. No model parameter is accepted. */
|
|
30
|
+
export type DecisionCreateParams = {
|
|
31
|
+
/** One to 32 questions, each with 2-32 choices or levels. */
|
|
32
|
+
questions: DecisionQuestionParam[];
|
|
33
|
+
/** Reusing a key with identical request bytes replays the stored result. */
|
|
34
|
+
idempotency_key?: string;
|
|
35
|
+
} & ({
|
|
36
|
+
session_id: string;
|
|
37
|
+
state?: never;
|
|
38
|
+
} | {
|
|
39
|
+
session_id?: never;
|
|
40
|
+
state: Record<string, unknown>;
|
|
41
|
+
});
|
|
42
|
+
export interface DecisionListParams {
|
|
43
|
+
session_id?: string;
|
|
44
|
+
/** Page size from 1 to 100; defaults to 20. */
|
|
45
|
+
limit?: number;
|
|
46
|
+
/** Mutually exclusive with before_id. */
|
|
47
|
+
after_id?: string;
|
|
48
|
+
before_id?: string;
|
|
49
|
+
}
|
|
50
|
+
export interface DecisionChoice extends DecisionChoiceParam {
|
|
51
|
+
[key: string]: unknown;
|
|
52
|
+
}
|
|
53
|
+
export interface DecisionLevel extends DecisionLevelParam {
|
|
54
|
+
[key: string]: unknown;
|
|
55
|
+
}
|
|
56
|
+
export interface DecisionQuestion {
|
|
57
|
+
type: 'choice' | 'score';
|
|
58
|
+
name?: string;
|
|
59
|
+
instructions: string;
|
|
60
|
+
choices?: DecisionChoice[];
|
|
61
|
+
levels?: DecisionLevel[];
|
|
62
|
+
[key: string]: unknown;
|
|
63
|
+
}
|
|
64
|
+
export interface DecisionAnswer {
|
|
65
|
+
type: 'choice' | 'score' | 'refusal';
|
|
66
|
+
name?: string;
|
|
67
|
+
value?: string | boolean;
|
|
68
|
+
score?: number;
|
|
69
|
+
refusal?: string;
|
|
70
|
+
[key: string]: unknown;
|
|
71
|
+
}
|
|
72
|
+
/** Session fields and preparation metadata may be absent on running/failed records. */
|
|
73
|
+
export interface DecisionContext {
|
|
74
|
+
mode: 'state' | 'session';
|
|
75
|
+
policy_version?: string;
|
|
76
|
+
token_estimator?: string;
|
|
77
|
+
/** Estimate of the full model request, separate from billed usage. */
|
|
78
|
+
estimated_input_tokens?: number;
|
|
79
|
+
max_input_tokens?: number;
|
|
80
|
+
snapshot_at?: string;
|
|
81
|
+
anchor_event_id?: string;
|
|
82
|
+
first_event_id?: string;
|
|
83
|
+
last_event_id?: string;
|
|
84
|
+
included_segment_count?: number;
|
|
85
|
+
included_event_count?: number;
|
|
86
|
+
scan_limited?: boolean;
|
|
87
|
+
truncated?: boolean;
|
|
88
|
+
truncation_reasons?: string[];
|
|
89
|
+
[key: string]: unknown;
|
|
90
|
+
}
|
|
91
|
+
export interface DecisionError {
|
|
92
|
+
code: string;
|
|
93
|
+
message: string;
|
|
94
|
+
[key: string]: unknown;
|
|
95
|
+
}
|
|
96
|
+
export interface Decision {
|
|
97
|
+
id: string;
|
|
98
|
+
/** Null for explicit-state input. */
|
|
99
|
+
session_id: string | null;
|
|
100
|
+
source: string;
|
|
101
|
+
status: 'running' | 'completed' | 'failed';
|
|
102
|
+
questions: DecisionQuestion[];
|
|
103
|
+
answers: DecisionAnswer[];
|
|
104
|
+
context: DecisionContext;
|
|
105
|
+
usage: Record<string, unknown> | null;
|
|
106
|
+
error: DecisionError | null;
|
|
107
|
+
created_at: string;
|
|
108
|
+
completed_at: string | null;
|
|
109
|
+
[key: string]: unknown;
|
|
110
|
+
}
|
|
111
|
+
/** Evaluates explicit state or an accessible Session; uses normal PAT/SAT authentication. */
|
|
112
|
+
export declare class Decisions extends APIResource {
|
|
113
|
+
/** Synchronously evaluate and store a Decision. State must be nonempty;
|
|
114
|
+
* state.session_context is reserved for server-built history.
|
|
115
|
+
* @operation createDecision
|
|
116
|
+
*/
|
|
117
|
+
create(params: DecisionCreateParams, options?: RequestOptions): APIPromise<Decision>;
|
|
118
|
+
/** Retrieve a Decision accessible to the current caller.
|
|
119
|
+
* @operation getDecision
|
|
120
|
+
*/
|
|
121
|
+
retrieve(decisionID: string, options?: RequestOptions): APIPromise<Decision>;
|
|
122
|
+
/** List stored Decisions in server order, optionally filtered by an accessible Session.
|
|
123
|
+
* @operation listDecisions
|
|
124
|
+
*/
|
|
125
|
+
list(params?: DecisionListParams, options?: RequestOptions): PagePromise<Decision>;
|
|
126
|
+
}
|
|
127
|
+
//# sourceMappingURL=decision.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decision.d.ts","sourceRoot":"","sources":["../../../src/forward/decision.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { APIResource } from '../core/resource.js';
|
|
2
|
+
import { pathParam, requestHeaders } from './_utils.js';
|
|
3
|
+
/** Evaluates explicit state or an accessible Session; uses normal PAT/SAT authentication. */
|
|
4
|
+
export class Decisions extends APIResource {
|
|
5
|
+
/** Synchronously evaluate and store a Decision. State must be nonempty;
|
|
6
|
+
* state.session_context is reserved for server-built history.
|
|
7
|
+
* @operation createDecision
|
|
8
|
+
*/
|
|
9
|
+
create(params, options) {
|
|
10
|
+
const path = 'decisions';
|
|
11
|
+
const { idempotency_key, ...body } = params;
|
|
12
|
+
return this._client.request({
|
|
13
|
+
method: 'POST', path, body, ...options,
|
|
14
|
+
headers: requestHeaders({ 'Idempotency-Key': idempotency_key }, options?.headers),
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
/** Retrieve a Decision accessible to the current caller.
|
|
18
|
+
* @operation getDecision
|
|
19
|
+
*/
|
|
20
|
+
retrieve(decisionID, options) {
|
|
21
|
+
const path = `decisions/${pathParam(decisionID, 'decisionID')}`;
|
|
22
|
+
return this._client.request({ method: 'GET', path, ...options });
|
|
23
|
+
}
|
|
24
|
+
/** List stored Decisions in server order, optionally filtered by an accessible Session.
|
|
25
|
+
* @operation listDecisions
|
|
26
|
+
*/
|
|
27
|
+
list(params = {}, options) {
|
|
28
|
+
const path = 'decisions';
|
|
29
|
+
return this._client.getAPIList(path, params, options, 'cursor');
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=decision.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decision.js","sourceRoot":"","sources":["../../../src/forward/decision.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAIlD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAsGxD,6FAA6F;AAC7F,MAAM,OAAO,SAAU,SAAQ,WAAW;IACxC;;;OAGG;IACH,MAAM,CAAC,MAA4B,EAAE,OAAwB;QAC3D,MAAM,IAAI,GAAG,WAAW,CAAC;QACzB,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAW;YACpC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO;YACtC,OAAO,EAAE,cAAc,CAAC,EAAE,iBAAiB,EAAE,eAAe,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC;SAClF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,UAAkB,EAAE,OAAwB;QACnD,MAAM,IAAI,GAAG,aAAa,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,CAAC;QAChE,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAW,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,SAA6B,EAAE,EAAE,OAAwB;QAC5D,MAAM,IAAI,GAAG,WAAW,CAAC;QACzB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAW,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC5E,CAAC;CACF"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { Decisions } from './decision.js';
|
|
2
|
+
import { Webhooks } from './webhook.js';
|
|
1
3
|
import { APIClient, type ClientOptions } from '../core/client.js';
|
|
2
4
|
import { Templates } from './template.js';
|
|
3
5
|
import { Identities } from './identity.js';
|
|
@@ -19,6 +21,8 @@ import { Realtime } from './realtime/realtime.js';
|
|
|
19
21
|
import { ServiceAccountTokens } from './service-account-token.js';
|
|
20
22
|
export type ForwardClientOptions = ClientOptions;
|
|
21
23
|
export declare class ForwardClient extends APIClient {
|
|
24
|
+
readonly decisions: Decisions;
|
|
25
|
+
readonly webhooks: Webhooks;
|
|
22
26
|
readonly templates: Templates;
|
|
23
27
|
readonly identities: Identities;
|
|
24
28
|
readonly sessions: Sessions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"forwardClient.d.ts","sourceRoot":"","sources":["../../../src/forward/forwardClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAElE,MAAM,MAAM,oBAAoB,GAAG,aAAa,CAAC;AAEjD,qBAAa,aAAc,SAAQ,SAAS;IAC1C,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAuB;IACpD,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAwB;IACvD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAsB;IACjD,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAuB;IACpD,QAAQ,CAAC,YAAY,EAAE,YAAY,CAA0B;IAC7D,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAqB;IAC9C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAsB;IACjD,QAAQ,CAAC,eAAe,EAAE,eAAe,CAA6B;IACtE,QAAQ,CAAC,YAAY,EAAE,YAAY,CAA0B;IAC7D,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAmB;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAoB;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAoB;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAoB;IAC3C,QAAQ,CAAC,YAAY,EAAE,YAAY,CAA0B;IAC7D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAoB;IAC3C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAmB;IACxC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAsB;IAEjD,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,CAAkC;gBAEzE,OAAO,GAAE,oBAAyB;CAG/C;AAED,eAAe,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"forwardClient.d.ts","sourceRoot":"","sources":["../../../src/forward/forwardClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAElE,MAAM,MAAM,oBAAoB,GAAG,aAAa,CAAC;AAEjD,qBAAa,aAAc,SAAQ,SAAS;IAC1C,QAAQ,CAAC,SAAS,YAAuB;IACzC,QAAQ,CAAC,QAAQ,WAAsB;IACvC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAuB;IACpD,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAwB;IACvD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAsB;IACjD,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAuB;IACpD,QAAQ,CAAC,YAAY,EAAE,YAAY,CAA0B;IAC7D,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAqB;IAC9C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAsB;IACjD,QAAQ,CAAC,eAAe,EAAE,eAAe,CAA6B;IACtE,QAAQ,CAAC,YAAY,EAAE,YAAY,CAA0B;IAC7D,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAmB;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAoB;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAoB;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAoB;IAC3C,QAAQ,CAAC,YAAY,EAAE,YAAY,CAA0B;IAC7D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAoB;IAC3C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAmB;IACxC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAsB;IAEjD,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,CAAkC;gBAEzE,OAAO,GAAE,oBAAyB;CAG/C;AAED,eAAe,aAAa,CAAC"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
// Resource hierarchy mirrors the Forward API surface.
|
|
2
|
+
import { Decisions } from './decision.js';
|
|
3
|
+
import { Webhooks } from './webhook.js';
|
|
2
4
|
import { APIClient } from '../core/client.js';
|
|
3
5
|
import { Templates } from './template.js';
|
|
4
6
|
import { Identities } from './identity.js';
|
|
@@ -19,6 +21,8 @@ import { Usage } from './usage.js';
|
|
|
19
21
|
import { Realtime } from './realtime/realtime.js';
|
|
20
22
|
import { ServiceAccountTokens } from './service-account-token.js';
|
|
21
23
|
export class ForwardClient extends APIClient {
|
|
24
|
+
decisions = new Decisions(this);
|
|
25
|
+
webhooks = new Webhooks(this);
|
|
22
26
|
templates = new Templates(this);
|
|
23
27
|
identities = new Identities(this);
|
|
24
28
|
sessions = new Sessions(this);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"forwardClient.js","sourceRoot":"","sources":["../../../src/forward/forwardClient.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,OAAO,EAAE,SAAS,EAAsB,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAIlE,MAAM,OAAO,aAAc,SAAQ,SAAS;IACjC,SAAS,GAAc,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;IAC3C,UAAU,GAAe,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAC9C,QAAQ,GAAa,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;IACxC,SAAS,GAAc,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;IAC3C,YAAY,GAAiB,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IACpD,OAAO,GAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,QAAQ,GAAa,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;IACxC,eAAe,GAAoB,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;IAC7D,YAAY,GAAiB,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IACpD,KAAK,GAAU,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,GAAW,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,GAAW,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,GAAW,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IAClC,YAAY,GAAiB,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,GAAW,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IAClC,KAAK,GAAU,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,QAAQ,GAAa,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;IAExC,oBAAoB,GAAyB,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAErF,YAAY,UAAgC,EAAE;QAC5C,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC5B,CAAC;CACF;AAED,eAAe,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"forwardClient.js","sourceRoot":"","sources":["../../../src/forward/forwardClient.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,SAAS,EAAsB,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAIlE,MAAM,OAAO,aAAc,SAAQ,SAAS;IACjC,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;IAChC,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC9B,SAAS,GAAc,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;IAC3C,UAAU,GAAe,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAC9C,QAAQ,GAAa,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;IACxC,SAAS,GAAc,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;IAC3C,YAAY,GAAiB,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IACpD,OAAO,GAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,QAAQ,GAAa,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;IACxC,eAAe,GAAoB,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;IAC7D,YAAY,GAAiB,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IACpD,KAAK,GAAU,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,GAAW,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,GAAW,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,GAAW,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IAClC,YAAY,GAAiB,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,GAAW,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IAClC,KAAK,GAAU,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,QAAQ,GAAa,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;IAExC,oBAAoB,GAAyB,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAErF,YAAY,UAAgC,EAAE;QAC5C,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC5B,CAAC;CACF;AAED,eAAe,aAAa,CAAC"}
|
|
@@ -47,4 +47,7 @@ export * from './realtime/types.js';
|
|
|
47
47
|
export { ServiceAccountTokens } from './service-account-token.js';
|
|
48
48
|
export { IdentityServiceAccountTokens } from './identity-service-account-token.js';
|
|
49
49
|
export { Drives } from './drive.js';
|
|
50
|
+
export * from "./webhook.js";
|
|
51
|
+
export * from "./webhook-signature.js";
|
|
52
|
+
export * from './decision.js';
|
|
50
53
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forward/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forward/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,4 +41,7 @@ export * from './realtime/types.js';
|
|
|
41
41
|
export { ServiceAccountTokens } from './service-account-token.js';
|
|
42
42
|
export { IdentityServiceAccountTokens } from './identity-service-account-token.js';
|
|
43
43
|
export { Drives } from './drive.js';
|
|
44
|
+
export * from "./webhook.js";
|
|
45
|
+
export * from "./webhook-signature.js";
|
|
46
|
+
export * from './decision.js';
|
|
44
47
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/forward/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,IAAI,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7E,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEpC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAC;AACxF,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAGjF,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE9J,cAAc,qBAAqB,CAAC;AAEpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,4BAA4B,EAAE,MAAM,qCAAqC,CAAC;AAEnF,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/forward/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,IAAI,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7E,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEpC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAC;AACxF,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAGjF,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE9J,cAAc,qBAAqB,CAAC;AAEpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,4BAA4B,EAAE,MAAM,qCAAqC,CAAC;AAEnF,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEpC,cAAc,cAAc,CAAC;AAC7B,cAAc,wBAAwB,CAAC;AAEvC,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** Missing, invalid, expired or mismatched delivery authentication. */
|
|
2
|
+
export declare class WebhookVerificationError extends Error {
|
|
3
|
+
constructor();
|
|
4
|
+
}
|
|
5
|
+
/** Verify original body bytes before parsing JSON. Accepts any matching v1 signature
|
|
6
|
+
* within 300 seconds. Deduplicate accepted events using Webhook-ID. */
|
|
7
|
+
export declare function verifyWebhookSignature(payload: Uint8Array, headers: Headers | Record<string, string>, secret: string): Promise<void>;
|
|
8
|
+
//# sourceMappingURL=webhook-signature.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhook-signature.d.ts","sourceRoot":"","sources":["../../../src/forward/webhook-signature.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,qBAAa,wBAAyB,SAAQ,KAAK;;CAElD;AAED;uEACuE;AACvE,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA8B1I"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/** Missing, invalid, expired or mismatched delivery authentication. */
|
|
2
|
+
export class WebhookVerificationError extends Error {
|
|
3
|
+
constructor() { super('webhook signature verification failed'); this.name = 'WebhookVerificationError'; }
|
|
4
|
+
}
|
|
5
|
+
/** Verify original body bytes before parsing JSON. Accepts any matching v1 signature
|
|
6
|
+
* within 300 seconds. Deduplicate accepted events using Webhook-ID. */
|
|
7
|
+
export async function verifyWebhookSignature(payload, headers, secret) {
|
|
8
|
+
const invalid = () => new WebhookVerificationError();
|
|
9
|
+
const header = (name) => {
|
|
10
|
+
if (headers instanceof Headers)
|
|
11
|
+
return headers.get(name) ?? '';
|
|
12
|
+
const values = Object.entries(headers).filter(([k]) => k.toLowerCase() === name).map(([, v]) => v);
|
|
13
|
+
return values.length === 1 ? values[0] : '';
|
|
14
|
+
};
|
|
15
|
+
const id = header('webhook-id'), timestamp = header('webhook-timestamp');
|
|
16
|
+
if (!(payload instanceof Uint8Array) || !id || /[.\r\n]/.test(id) || !/^[0-9]{1,19}$/.test(timestamp) || !secret.startsWith('whsec_'))
|
|
17
|
+
throw invalid();
|
|
18
|
+
const ts = Number(timestamp), now = Math.floor(Date.now() / 1000);
|
|
19
|
+
if (!Number.isSafeInteger(ts) || ts < now - 300 || ts > now + 300)
|
|
20
|
+
throw invalid();
|
|
21
|
+
const decode = (value) => {
|
|
22
|
+
if (!/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(value))
|
|
23
|
+
throw invalid();
|
|
24
|
+
const raw = atob(value);
|
|
25
|
+
if (btoa(raw) !== value)
|
|
26
|
+
throw invalid();
|
|
27
|
+
return Uint8Array.from(raw, c => c.charCodeAt(0));
|
|
28
|
+
};
|
|
29
|
+
const keyBytes = decode(secret.slice(6));
|
|
30
|
+
if (keyBytes.length < 24 || keyBytes.length > 64)
|
|
31
|
+
throw invalid();
|
|
32
|
+
const prefix = new TextEncoder().encode(`${id}.${timestamp}.`);
|
|
33
|
+
const message = new Uint8Array(prefix.length + payload.length);
|
|
34
|
+
message.set(prefix);
|
|
35
|
+
message.set(payload, prefix.length);
|
|
36
|
+
const key = await globalThis.crypto.subtle.importKey('raw', keyBytes, { name: 'HMAC', hash: 'SHA-256' }, false, ['verify']);
|
|
37
|
+
for (const signature of header('webhook-signature').split(/\s+/)) {
|
|
38
|
+
if (!signature.startsWith('v1,'))
|
|
39
|
+
continue;
|
|
40
|
+
let candidate;
|
|
41
|
+
try {
|
|
42
|
+
candidate = decode(signature.slice(3));
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
continue;
|
|
46
|
+
}
|
|
47
|
+
if (await globalThis.crypto.subtle.verify('HMAC', key, candidate, message))
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
throw invalid();
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=webhook-signature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhook-signature.js","sourceRoot":"","sources":["../../../src/forward/webhook-signature.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { APIResource } from '../core/resource.js';
|
|
2
|
+
import type { RequestOptions } from '../core/client.js';
|
|
3
|
+
import type { APIPromise } from '../core/api-promise.js';
|
|
4
|
+
import type { PagePromise } from '../core/pagination.js';
|
|
5
|
+
export interface WebhookEndpoint {
|
|
6
|
+
id: string;
|
|
7
|
+
url: string;
|
|
8
|
+
events: string[];
|
|
9
|
+
description?: string;
|
|
10
|
+
metadata: Record<string, unknown>;
|
|
11
|
+
active: boolean;
|
|
12
|
+
created_at: string;
|
|
13
|
+
updated_at: string;
|
|
14
|
+
last_success_at?: string | null;
|
|
15
|
+
last_failure_at?: string | null;
|
|
16
|
+
disabled_reason?: string;
|
|
17
|
+
consecutive_fail: number;
|
|
18
|
+
[key: string]: unknown;
|
|
19
|
+
}
|
|
20
|
+
/** signing_secret is returned once. Store securely; do not log this response. */
|
|
21
|
+
export interface WebhookEndpointCreateResponse {
|
|
22
|
+
id: string;
|
|
23
|
+
url: string;
|
|
24
|
+
events: string[];
|
|
25
|
+
description?: string;
|
|
26
|
+
metadata: Record<string, unknown>;
|
|
27
|
+
active: boolean;
|
|
28
|
+
created_at: string;
|
|
29
|
+
signing_secret: string;
|
|
30
|
+
[key: string]: unknown;
|
|
31
|
+
}
|
|
32
|
+
export interface WebhookEndpointCreateParams {
|
|
33
|
+
url: string;
|
|
34
|
+
events: string[];
|
|
35
|
+
description?: string;
|
|
36
|
+
metadata?: Record<string, string>;
|
|
37
|
+
idempotency_key?: string;
|
|
38
|
+
}
|
|
39
|
+
export interface WebhookEndpointUpdateParams {
|
|
40
|
+
url?: string;
|
|
41
|
+
events?: string[];
|
|
42
|
+
description?: string;
|
|
43
|
+
active?: boolean;
|
|
44
|
+
/** Merge entries; a null value removes the key. */
|
|
45
|
+
metadata?: Record<string, string | null>;
|
|
46
|
+
}
|
|
47
|
+
export interface WebhookEndpointListParams {
|
|
48
|
+
limit?: number;
|
|
49
|
+
after_id?: string;
|
|
50
|
+
}
|
|
51
|
+
/** Accepted delivery rows; not a delivery success report. */
|
|
52
|
+
export interface WebhookEndpointTestResponse {
|
|
53
|
+
event_id: number;
|
|
54
|
+
delivery_rows: number;
|
|
55
|
+
[key: string]: unknown;
|
|
56
|
+
}
|
|
57
|
+
/** Requires a PAT or administrator SAT. */
|
|
58
|
+
export declare class Webhooks extends APIResource {
|
|
59
|
+
readonly endpoints: WebhookEndpoints;
|
|
60
|
+
}
|
|
61
|
+
export declare class WebhookEndpoints extends APIResource {
|
|
62
|
+
/** Create webhook endpoints.
|
|
63
|
+
* @operation createWebhookEndpoint
|
|
64
|
+
*/
|
|
65
|
+
create(params: WebhookEndpointCreateParams, options?: RequestOptions): APIPromise<WebhookEndpointCreateResponse>;
|
|
66
|
+
/** List webhook endpoints.
|
|
67
|
+
* @operation listWebhookEndpoints
|
|
68
|
+
*/
|
|
69
|
+
list(params?: WebhookEndpointListParams, options?: RequestOptions): PagePromise<WebhookEndpoint>;
|
|
70
|
+
/** Retrieve webhook endpoints.
|
|
71
|
+
* @operation getWebhookEndpoint
|
|
72
|
+
*/
|
|
73
|
+
retrieve(endpointID: string, options?: RequestOptions): APIPromise<WebhookEndpoint>;
|
|
74
|
+
/** Update webhook endpoints.
|
|
75
|
+
* @operation updateWebhookEndpoint
|
|
76
|
+
*/
|
|
77
|
+
update(endpointID: string, params?: WebhookEndpointUpdateParams, options?: RequestOptions): APIPromise<WebhookEndpoint>;
|
|
78
|
+
/** Delete webhook endpoints.
|
|
79
|
+
* @operation deleteWebhookEndpoint
|
|
80
|
+
*/
|
|
81
|
+
delete(endpointID: string, options?: RequestOptions): APIPromise<void>;
|
|
82
|
+
/** Enable webhook endpoints.
|
|
83
|
+
* @operation enableWebhookEndpoint
|
|
84
|
+
*/
|
|
85
|
+
enable(endpointID: string, options?: RequestOptions): APIPromise<WebhookEndpoint>;
|
|
86
|
+
/** Disable webhook endpoints.
|
|
87
|
+
* @operation disableWebhookEndpoint
|
|
88
|
+
*/
|
|
89
|
+
disable(endpointID: string, options?: RequestOptions): APIPromise<WebhookEndpoint>;
|
|
90
|
+
/** Queue a synthetic event; acceptance does not confirm delivery.
|
|
91
|
+
* @operation testWebhookEndpoint
|
|
92
|
+
*/
|
|
93
|
+
test(endpointID: string, options?: RequestOptions): APIPromise<WebhookEndpointTestResponse>;
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=webhook.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../../../src/forward/webhook.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { APIResource } from '../core/resource.js';
|
|
2
|
+
import { pathParam, requestHeaders } from './_utils.js';
|
|
3
|
+
/** Requires a PAT or administrator SAT. */
|
|
4
|
+
export class Webhooks extends APIResource {
|
|
5
|
+
endpoints = new WebhookEndpoints(this._client);
|
|
6
|
+
}
|
|
7
|
+
export class WebhookEndpoints extends APIResource {
|
|
8
|
+
/** Create webhook endpoints.
|
|
9
|
+
* @operation createWebhookEndpoint
|
|
10
|
+
*/
|
|
11
|
+
create(params, options) {
|
|
12
|
+
const path = 'webhook/endpoints';
|
|
13
|
+
const { idempotency_key, ...body } = params;
|
|
14
|
+
return this._client.request({
|
|
15
|
+
method: "POST",
|
|
16
|
+
path,
|
|
17
|
+
body,
|
|
18
|
+
...options,
|
|
19
|
+
headers: requestHeaders({ "Idempotency-Key": idempotency_key }, options?.headers)
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
/** List webhook endpoints.
|
|
23
|
+
* @operation listWebhookEndpoints
|
|
24
|
+
*/
|
|
25
|
+
list(params = {}, options) {
|
|
26
|
+
const path = 'webhook/endpoints';
|
|
27
|
+
return this._client.getAPIList(path, params, options, 'cursor');
|
|
28
|
+
}
|
|
29
|
+
/** Retrieve webhook endpoints.
|
|
30
|
+
* @operation getWebhookEndpoint
|
|
31
|
+
*/
|
|
32
|
+
retrieve(endpointID, options) {
|
|
33
|
+
const path = `webhook/endpoints/${pathParam(endpointID, "endpointID")}`;
|
|
34
|
+
return this._client.request({
|
|
35
|
+
method: "GET",
|
|
36
|
+
path,
|
|
37
|
+
...options
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
/** Update webhook endpoints.
|
|
41
|
+
* @operation updateWebhookEndpoint
|
|
42
|
+
*/
|
|
43
|
+
update(endpointID, params = {}, options) {
|
|
44
|
+
const path = `webhook/endpoints/${pathParam(endpointID, "endpointID")}`;
|
|
45
|
+
return this._client.request({
|
|
46
|
+
method: "PUT",
|
|
47
|
+
path,
|
|
48
|
+
body: params,
|
|
49
|
+
...options
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
/** Delete webhook endpoints.
|
|
53
|
+
* @operation deleteWebhookEndpoint
|
|
54
|
+
*/
|
|
55
|
+
delete(endpointID, options) {
|
|
56
|
+
const path = `webhook/endpoints/${pathParam(endpointID, "endpointID")}`;
|
|
57
|
+
return this._client.request({
|
|
58
|
+
method: "DELETE",
|
|
59
|
+
path, responseType: "void",
|
|
60
|
+
...options
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
/** Enable webhook endpoints.
|
|
64
|
+
* @operation enableWebhookEndpoint
|
|
65
|
+
*/
|
|
66
|
+
enable(endpointID, options) {
|
|
67
|
+
const path = `webhook/endpoints/${pathParam(endpointID, "endpointID")}/enable`;
|
|
68
|
+
return this._client.request({
|
|
69
|
+
method: "POST",
|
|
70
|
+
path,
|
|
71
|
+
...options
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
/** Disable webhook endpoints.
|
|
75
|
+
* @operation disableWebhookEndpoint
|
|
76
|
+
*/
|
|
77
|
+
disable(endpointID, options) {
|
|
78
|
+
const path = `webhook/endpoints/${pathParam(endpointID, "endpointID")}/disable`;
|
|
79
|
+
return this._client.request({
|
|
80
|
+
method: "POST",
|
|
81
|
+
path,
|
|
82
|
+
...options
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
/** Queue a synthetic event; acceptance does not confirm delivery.
|
|
86
|
+
* @operation testWebhookEndpoint
|
|
87
|
+
*/
|
|
88
|
+
test(endpointID, options) {
|
|
89
|
+
const path = `webhook/endpoints/${pathParam(endpointID, "endpointID")}/test`;
|
|
90
|
+
return this._client.request({
|
|
91
|
+
method: "POST",
|
|
92
|
+
path,
|
|
93
|
+
...options
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=webhook.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhook.js","sourceRoot":"","sources":["../../../src/forward/webhook.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -14,4 +14,7 @@ export { RealtimeConversations, RealtimeHistoryPage } from './forward/realtime/c
|
|
|
14
14
|
export { RealtimeConnection, RealtimeProtocolError, RealtimeConnectionClosedError, RealtimeServerError, decodeRealtimeAudio } from './forward/realtime/connection.js';
|
|
15
15
|
export type { RealtimeConnectOptions, RealtimeWaitOptions, RealtimeCloseOptions } from './forward/realtime/connection.js';
|
|
16
16
|
export * from './forward/realtime/types.js';
|
|
17
|
+
export * from "./forward/webhook.js";
|
|
18
|
+
export * from "./forward/webhook-signature.js";
|
|
19
|
+
export * from './forward/decision.js';
|
|
17
20
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAC;AACvF,cAAc,mBAAmB,CAAC;AAElC,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAChG,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACtK,YAAY,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAC1H,cAAc,6BAA6B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAC;AACvF,cAAc,mBAAmB,CAAC;AAElC,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAChG,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACtK,YAAY,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAC1H,cAAc,6BAA6B,CAAC;AAE5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAE/C,cAAc,uBAAuB,CAAC"}
|