@facesignai/api 1.0.9 → 1.0.28
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 +105 -0
- package/README.md +3 -3
- package/build/package.json +1 -1
- package/build/src/api-endpoints.d.ts +66 -64
- package/build/src/api-endpoints.d.ts.map +1 -1
- package/build/src/api-endpoints.js +61 -29
- package/build/src/client.d.ts +8 -4
- package/build/src/client.d.ts.map +1 -1
- package/build/src/client.js +38 -1
- package/build/src/types/customization.d.ts +22 -0
- package/build/src/types/customization.d.ts.map +1 -0
- package/build/src/types/customization.js +8 -0
- package/build/src/types/deviceDetails.d.ts +17 -7
- package/build/src/types/deviceDetails.d.ts.map +1 -1
- package/build/src/types/docScanning.d.ts +265 -0
- package/build/src/types/docScanning.d.ts.map +1 -0
- package/build/src/types/docScanning.js +2 -0
- package/build/src/types/nodeReports.d.ts +80 -0
- package/build/src/types/nodeReports.d.ts.map +1 -0
- package/build/src/types/nodeReports.js +2 -0
- package/build/src/types/nodes.d.ts +135 -0
- package/build/src/types/nodes.d.ts.map +1 -0
- package/build/src/types/nodes.js +63 -0
- package/build/src/types/videoAIAnalysis.d.ts +23 -0
- package/build/src/types/videoAIAnalysis.d.ts.map +1 -0
- package/build/src/types/videoAIAnalysis.js +21 -0
- package/build/src/types/webhooks.d.ts +25 -0
- package/build/src/types/webhooks.d.ts.map +1 -0
- package/build/src/types/webhooks.js +14 -0
- package/package.json +1 -1
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to the Facesign API will be documented in this file.
|
|
4
|
+
|
|
5
|
+
## [Unreleased]
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
## [1.0.16] - 2025-01-29
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
- Two-Factor Authentication node support:
|
|
12
|
+
- `FSTwoFactorChannel` enum with EMAIL and SMS channel options
|
|
13
|
+
- `FSTwoFactorContactSource` enum for session_data, module_settings, and recognition_match sources
|
|
14
|
+
- `FSTwoFactorOutcome` enum with verified, delivery_failed, failed_unverified, cancelled, and error outcomes
|
|
15
|
+
- `FSTwoFactorNode` interface with comprehensive configuration options including:
|
|
16
|
+
- Multi-channel delivery (Email via Resend, SMS via Twilio)
|
|
17
|
+
- Contact source configuration with field mapping
|
|
18
|
+
- Template system with variable support ({{userName}}, {{code}}, {{companyName}})
|
|
19
|
+
- Verification settings (OTP length, expiry, max attempts, resend delay)
|
|
20
|
+
- `FSPhraseAction.START_TWO_FACTOR_VERIFICATION` action for conversation flow integration
|
|
21
|
+
- `FSClientEvent.TWO_FACTOR_CODE_SPOKEN` event for spoken code verification
|
|
22
|
+
|
|
23
|
+
## [1.0.15] - 2025-01-28
|
|
24
|
+
|
|
25
|
+
### Added
|
|
26
|
+
|
|
27
|
+
- Advanced configuration options for Face Scan node:
|
|
28
|
+
- `captureDelay` - Configurable countdown before capture (0 for immediate)
|
|
29
|
+
- `detectionInterval` - How often to check for faces (performance tuning)
|
|
30
|
+
- `qualityThreshold` - Overall face quality score requirement
|
|
31
|
+
- `blurThreshold` - Clarity detection threshold (lower = stricter)
|
|
32
|
+
- `minFaceSize` / `maxFaceSize` - Acceptable face size range in pixels
|
|
33
|
+
- `enableSound` - Toggle audio feedback
|
|
34
|
+
- `enableHaptics` - Toggle haptic feedback on mobile
|
|
35
|
+
- `useWebGL` - Control WebGL acceleration usage
|
|
36
|
+
- `maxRetries` - Maximum capture attempts allowed
|
|
37
|
+
|
|
38
|
+
## [1.0.14] - 2025-01-28
|
|
39
|
+
|
|
40
|
+
### Added
|
|
41
|
+
|
|
42
|
+
- Localization support for permissions screen text:
|
|
43
|
+
- `permissionsButtonTextTranslates` - Localized button text per language
|
|
44
|
+
- `permissionsMainHeadingTranslates` - Localized main heading per language
|
|
45
|
+
- `permissionsSubheadingTranslates` - Localized subheading per language
|
|
46
|
+
|
|
47
|
+
### Changed
|
|
48
|
+
|
|
49
|
+
- Kept original non-localized fields for backward compatibility
|
|
50
|
+
|
|
51
|
+
## [1.0.13] - 2025-01-28
|
|
52
|
+
|
|
53
|
+
### Added
|
|
54
|
+
|
|
55
|
+
- Face Scan mode enum (`FSFaceScanMode`) with CAPTURE and COMPARE modes
|
|
56
|
+
- Enhanced `FSFaceScanNode` interface with mode-based configuration
|
|
57
|
+
- `saveToField` option for capture-only mode to store face image URL
|
|
58
|
+
- `CAPTURED` outcome for capture-only face scan mode
|
|
59
|
+
|
|
60
|
+
### Changed
|
|
61
|
+
|
|
62
|
+
- Reorganized `FSFaceScanOutcome` enum to separate capture and compare mode outcomes
|
|
63
|
+
- Updated `FSFaceScanNode` to support both capture-only and capture+compare modes
|
|
64
|
+
|
|
65
|
+
## [1.0.12] - 2025-01-27
|
|
66
|
+
|
|
67
|
+
### Added
|
|
68
|
+
|
|
69
|
+
- Face Scan node type (`FACE_SCAN`) for 1:1 biometric face matching
|
|
70
|
+
- `FSFaceScanOutcome` enum with match outcomes (match, noMatch, noFace, error)
|
|
71
|
+
- `FSFaceScanNode` interface with configuration for reference image sources and matching threshold
|
|
72
|
+
|
|
73
|
+
## [1.0.11] - 2025-01-27
|
|
74
|
+
|
|
75
|
+
### Added
|
|
76
|
+
|
|
77
|
+
- Permissions screen customization options to `SessionSettings`:
|
|
78
|
+
- `permissionsButtonText` - Custom text for the permissions request button
|
|
79
|
+
- `permissionsBackgroundType` - Choose between 'avatar' or 'color' background
|
|
80
|
+
- `permissionsBackgroundColor` - Custom color when using solid color background
|
|
81
|
+
- `permissionsMainHeading` - Custom main heading text (e.g., "You're about to chat with a digital assistant.")
|
|
82
|
+
- `permissionsSubheading` - Custom subheading text (e.g., "Allow FaceSign to use your camera and microphone?")
|
|
83
|
+
|
|
84
|
+
## [1.0.10] - 2024-05-20
|
|
85
|
+
|
|
86
|
+
### Added
|
|
87
|
+
|
|
88
|
+
- Document Scanning node type (`DOCUMENT_SCAN`) to support Microblink document scanning integration
|
|
89
|
+
- New `MicroblinkDocumentType` enum with supported document types
|
|
90
|
+
- `FSDocumentScanOutcome` enum for tracking scan outcomes
|
|
91
|
+
- `FSDocumentScanNode` interface with configuration options for document scanning
|
|
92
|
+
|
|
93
|
+
### Changed
|
|
94
|
+
|
|
95
|
+
- Updated `FSNode` union type to include the new DocumentScan node type
|
|
96
|
+
|
|
97
|
+
## [1.0.9] - Previous version
|
|
98
|
+
|
|
99
|
+
Initial version with support for:
|
|
100
|
+
|
|
101
|
+
- Start/End nodes
|
|
102
|
+
- Conversation nodes
|
|
103
|
+
- Liveness Detection nodes
|
|
104
|
+
- Email Input nodes
|
|
105
|
+
- Data Validation nodes
|
package/README.md
CHANGED
|
@@ -9,8 +9,8 @@
|
|
|
9
9
|
## Installation
|
|
10
10
|
|
|
11
11
|
```
|
|
12
|
-
npm install @
|
|
13
|
-
yarn add @
|
|
12
|
+
npm install @facesignai/api
|
|
13
|
+
yarn add @facesignai/api
|
|
14
14
|
```
|
|
15
15
|
|
|
16
16
|
## Usage
|
|
@@ -18,7 +18,7 @@ yarn add @facesign/api
|
|
|
18
18
|
Import and initialize a client using an **integration token**
|
|
19
19
|
|
|
20
20
|
```js
|
|
21
|
-
const { Client } = require(
|
|
21
|
+
const { Client } = require("@facesignai/api")
|
|
22
22
|
|
|
23
23
|
// Initializing a client
|
|
24
24
|
const facesignClient = new Client({
|
package/build/package.json
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
|
-
import { Device } from
|
|
2
|
-
import { Location } from
|
|
1
|
+
import { Device } from "./types/deviceDetails";
|
|
2
|
+
import { Location } from "./types/location";
|
|
3
|
+
import { FSNode } from "./types/nodes";
|
|
4
|
+
import { Customization } from "./types/customization";
|
|
5
|
+
import { NodeReport } from "./types/nodeReports";
|
|
6
|
+
import { VideoAIAnalysis } from "./types/videoAIAnalysis";
|
|
7
|
+
export * from "./types/deviceDetails";
|
|
8
|
+
export * from "./types/location";
|
|
9
|
+
export * from "./types/nodes";
|
|
10
|
+
export * from "./types/customization";
|
|
11
|
+
export * from "./types/nodeReports";
|
|
12
|
+
export * from "./types/docScanning";
|
|
13
|
+
export * from "./types/webhooks";
|
|
14
|
+
export * from "./types/videoAIAnalysis";
|
|
3
15
|
export declare enum ILogLevel {
|
|
4
16
|
TRACE = "TRACE",
|
|
5
17
|
DEBUG = " DEBUG",
|
|
@@ -38,9 +50,9 @@ export interface Phrase {
|
|
|
38
50
|
isAvatar: boolean;
|
|
39
51
|
}
|
|
40
52
|
export declare enum SessionStatus {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
53
|
+
Created = "created",
|
|
54
|
+
InProgress = "inProgress",
|
|
55
|
+
Incomplete = "incomplete",
|
|
44
56
|
Complete = "complete"
|
|
45
57
|
}
|
|
46
58
|
export interface ClientSecret {
|
|
@@ -57,8 +69,8 @@ export type SessionReportAIAnalysisSection = {
|
|
|
57
69
|
export type SessionReportAIAnalysis = {
|
|
58
70
|
ageMin: number;
|
|
59
71
|
ageMax: number;
|
|
60
|
-
sex:
|
|
61
|
-
realPersonOrVirtual:
|
|
72
|
+
sex: "male" | "female";
|
|
73
|
+
realPersonOrVirtual: "real" | "virtual" | "noface";
|
|
62
74
|
overallSummary: string;
|
|
63
75
|
analysis: SessionReportAIAnalysisSection[];
|
|
64
76
|
};
|
|
@@ -67,15 +79,9 @@ export interface SessionReport {
|
|
|
67
79
|
aiAnalysis?: SessionReportAIAnalysis;
|
|
68
80
|
location?: Location;
|
|
69
81
|
device?: Device;
|
|
70
|
-
livenessDetected?: boolean;
|
|
71
82
|
lang?: string;
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
videos?: {
|
|
75
|
-
avatarVideoUrl?: string;
|
|
76
|
-
userVideoUrl?: string;
|
|
77
|
-
};
|
|
78
|
-
isVerified?: boolean;
|
|
83
|
+
nodeReports?: NodeReport[];
|
|
84
|
+
videoAIAnalysis?: VideoAIAnalysis;
|
|
79
85
|
}
|
|
80
86
|
export interface Session {
|
|
81
87
|
id: string;
|
|
@@ -95,64 +101,29 @@ export type Lang = {
|
|
|
95
101
|
id: string;
|
|
96
102
|
title: string;
|
|
97
103
|
};
|
|
98
|
-
export
|
|
99
|
-
langs: Lang[];
|
|
100
|
-
}
|
|
101
|
-
export type Zone = 'es' | 'eu';
|
|
102
|
-
export declare enum ModuleType {
|
|
103
|
-
EmailVerification = "emailVerification",
|
|
104
|
-
SmsVerification = "smsVerification",
|
|
105
|
-
IdentityVerification = "identityVerification",
|
|
106
|
-
DocumentAuthentication = "documentAuthentication",
|
|
107
|
-
AgeEstimation = "ageEstimation",
|
|
108
|
-
ProofOfIntent = "proofOfIntent",
|
|
109
|
-
KnowledgeVerify = "knowledgeVerify"
|
|
110
|
-
}
|
|
111
|
-
export type EmailVerification = {
|
|
112
|
-
type: ModuleType.EmailVerification;
|
|
113
|
-
name?: string;
|
|
114
|
-
email?: string;
|
|
115
|
-
publicRecognitionEnabled?: boolean;
|
|
116
|
-
};
|
|
117
|
-
export type SmsVerification = {
|
|
118
|
-
type: ModuleType.SmsVerification;
|
|
119
|
-
phone?: string;
|
|
120
|
-
};
|
|
121
|
-
export type IdentityVerification = {
|
|
122
|
-
type: ModuleType.IdentityVerification;
|
|
123
|
-
};
|
|
124
|
-
export type DocumentAuthentication = {
|
|
125
|
-
type: ModuleType.DocumentAuthentication;
|
|
126
|
-
};
|
|
127
|
-
export type AgeEstimation = {
|
|
128
|
-
type: ModuleType.AgeEstimation;
|
|
129
|
-
age: number;
|
|
130
|
-
};
|
|
131
|
-
export type ProofOfIntent = {
|
|
132
|
-
type: ModuleType.ProofOfIntent;
|
|
133
|
-
requestedData: RequestedData[];
|
|
134
|
-
};
|
|
135
|
-
export type KnowledgeVerify = {
|
|
136
|
-
type: ModuleType.KnowledgeVerify;
|
|
137
|
-
};
|
|
104
|
+
export type Zone = "us" | "eu";
|
|
138
105
|
export type Avatar = {
|
|
139
106
|
id: string;
|
|
140
107
|
name: string;
|
|
141
|
-
gender:
|
|
108
|
+
gender: "male" | "female" | "unknown";
|
|
142
109
|
imageUrl: string;
|
|
143
110
|
};
|
|
144
|
-
export type
|
|
111
|
+
export type ProvidedData = Record<string, string> & {
|
|
112
|
+
name?: string;
|
|
113
|
+
email?: string;
|
|
114
|
+
phone?: string;
|
|
115
|
+
};
|
|
145
116
|
export interface SessionSettings {
|
|
146
|
-
clientReferenceId
|
|
117
|
+
clientReferenceId?: string;
|
|
147
118
|
metadata: object;
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
providedData?: Record<string, string>;
|
|
119
|
+
flow: FSNode[];
|
|
120
|
+
providedData?: ProvidedData;
|
|
151
121
|
avatarId?: string;
|
|
152
122
|
langs?: string[];
|
|
153
123
|
defaultLang?: string;
|
|
154
124
|
zone?: Zone;
|
|
155
|
-
|
|
125
|
+
customization?: Customization;
|
|
126
|
+
videoAIAnalysisEnabled?: boolean;
|
|
156
127
|
}
|
|
157
128
|
export interface CreateSessionResponse {
|
|
158
129
|
session: Session;
|
|
@@ -162,7 +133,7 @@ export declare const createSessionEndpoint: {
|
|
|
162
133
|
readonly method: Method.POST;
|
|
163
134
|
readonly pathParams: readonly [];
|
|
164
135
|
readonly queryParams: readonly [];
|
|
165
|
-
readonly bodyParams: readonly ["clientReferenceId", "metadata", "
|
|
136
|
+
readonly bodyParams: readonly ["clientReferenceId", "metadata", "providedData", "avatarId", "langs", "defaultLang", "zone", "flow", "customization", "videoAIAnalysisEnabled"];
|
|
166
137
|
readonly path: () => string;
|
|
167
138
|
};
|
|
168
139
|
type GetSessionPathParameters = {
|
|
@@ -175,6 +146,9 @@ export declare const getSessionEndpoint: {
|
|
|
175
146
|
readonly bodyParams: readonly [];
|
|
176
147
|
readonly path: (p: GetSessionPathParameters) => string;
|
|
177
148
|
};
|
|
149
|
+
export interface GetLangsResponse {
|
|
150
|
+
langs: Lang[];
|
|
151
|
+
}
|
|
178
152
|
export declare const getLangsEndpoint: {
|
|
179
153
|
readonly method: Method.GET;
|
|
180
154
|
readonly pathParams: readonly [];
|
|
@@ -182,6 +156,9 @@ export declare const getLangsEndpoint: {
|
|
|
182
156
|
readonly bodyParams: readonly [];
|
|
183
157
|
readonly path: () => string;
|
|
184
158
|
};
|
|
159
|
+
export interface GetAvatarsResponse {
|
|
160
|
+
avatars: Avatar[];
|
|
161
|
+
}
|
|
185
162
|
export declare const getAvatarsEndpoint: {
|
|
186
163
|
readonly method: Method.GET;
|
|
187
164
|
readonly pathParams: readonly [];
|
|
@@ -196,5 +173,30 @@ export declare const createClientSecretEndpoint: {
|
|
|
196
173
|
readonly bodyParams: readonly [];
|
|
197
174
|
readonly path: (p: GetSessionPathParameters) => string;
|
|
198
175
|
};
|
|
199
|
-
export {
|
|
176
|
+
export interface GetSessionsParameters {
|
|
177
|
+
limit?: number;
|
|
178
|
+
cursor?: string;
|
|
179
|
+
flowId?: string;
|
|
180
|
+
clientReferenceId?: string;
|
|
181
|
+
status?: SessionStatus | SessionStatus[];
|
|
182
|
+
fromDate?: number;
|
|
183
|
+
toDate?: number;
|
|
184
|
+
sortBy?: "createdAt" | "status" | "finishedAt";
|
|
185
|
+
sortOrder?: "asc" | "desc";
|
|
186
|
+
search?: string;
|
|
187
|
+
includeTotal?: boolean;
|
|
188
|
+
}
|
|
189
|
+
export interface GetSessionsResponse {
|
|
190
|
+
sessions: Session[];
|
|
191
|
+
nextCursor?: string;
|
|
192
|
+
totalCount?: number;
|
|
193
|
+
hasMore: boolean;
|
|
194
|
+
}
|
|
195
|
+
export declare const getSessionsEndpoint: {
|
|
196
|
+
readonly method: Method.GET;
|
|
197
|
+
readonly pathParams: readonly [];
|
|
198
|
+
readonly queryParams: readonly ["limit", "cursor", "flowId", "clientReferenceId", "status", "fromDate", "toDate", "sortBy", "sortOrder", "search", "includeTotal"];
|
|
199
|
+
readonly bodyParams: readonly [];
|
|
200
|
+
readonly path: () => string;
|
|
201
|
+
};
|
|
200
202
|
//# sourceMappingURL=api-endpoints.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-endpoints.d.ts","sourceRoot":"","sources":["../../src/api-endpoints.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"api-endpoints.d.ts","sourceRoot":"","sources":["../../src/api-endpoints.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createClientSecretEndpoint = exports.getAvatarsEndpoint = exports.getLangsEndpoint = exports.getSessionEndpoint = exports.createSessionEndpoint = exports.
|
|
17
|
+
exports.getSessionsEndpoint = exports.createClientSecretEndpoint = exports.getAvatarsEndpoint = exports.getLangsEndpoint = exports.getSessionEndpoint = exports.createSessionEndpoint = exports.SessionStatus = exports.Method = exports.ILogLevel = void 0;
|
|
18
|
+
__exportStar(require("./types/deviceDetails"), exports);
|
|
19
|
+
__exportStar(require("./types/location"), exports);
|
|
20
|
+
__exportStar(require("./types/nodes"), exports);
|
|
21
|
+
__exportStar(require("./types/customization"), exports);
|
|
22
|
+
__exportStar(require("./types/nodeReports"), exports);
|
|
23
|
+
__exportStar(require("./types/docScanning"), exports);
|
|
24
|
+
__exportStar(require("./types/webhooks"), exports);
|
|
25
|
+
__exportStar(require("./types/videoAIAnalysis"), exports);
|
|
4
26
|
var ILogLevel;
|
|
5
27
|
(function (ILogLevel) {
|
|
6
28
|
ILogLevel["TRACE"] = "TRACE";
|
|
@@ -19,42 +41,32 @@ var Method;
|
|
|
19
41
|
})(Method = exports.Method || (exports.Method = {}));
|
|
20
42
|
var SessionStatus;
|
|
21
43
|
(function (SessionStatus) {
|
|
22
|
-
SessionStatus["
|
|
23
|
-
SessionStatus["
|
|
24
|
-
SessionStatus["
|
|
44
|
+
SessionStatus["Created"] = "created";
|
|
45
|
+
SessionStatus["InProgress"] = "inProgress";
|
|
46
|
+
SessionStatus["Incomplete"] = "incomplete";
|
|
25
47
|
SessionStatus["Complete"] = "complete";
|
|
26
48
|
})(SessionStatus = exports.SessionStatus || (exports.SessionStatus = {}));
|
|
27
|
-
var ModuleType;
|
|
28
|
-
(function (ModuleType) {
|
|
29
|
-
ModuleType["EmailVerification"] = "emailVerification";
|
|
30
|
-
ModuleType["SmsVerification"] = "smsVerification";
|
|
31
|
-
ModuleType["IdentityVerification"] = "identityVerification";
|
|
32
|
-
ModuleType["DocumentAuthentication"] = "documentAuthentication";
|
|
33
|
-
ModuleType["AgeEstimation"] = "ageEstimation";
|
|
34
|
-
ModuleType["ProofOfIntent"] = "proofOfIntent";
|
|
35
|
-
ModuleType["KnowledgeVerify"] = "knowledgeVerify";
|
|
36
|
-
})(ModuleType = exports.ModuleType || (exports.ModuleType = {}));
|
|
37
49
|
exports.createSessionEndpoint = {
|
|
38
50
|
method: Method.POST,
|
|
39
51
|
pathParams: [],
|
|
40
52
|
queryParams: [],
|
|
41
53
|
bodyParams: [
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
54
|
+
"clientReferenceId",
|
|
55
|
+
"metadata",
|
|
56
|
+
"providedData",
|
|
57
|
+
"avatarId",
|
|
58
|
+
"langs",
|
|
59
|
+
"defaultLang",
|
|
60
|
+
"zone",
|
|
61
|
+
"flow",
|
|
62
|
+
"customization",
|
|
63
|
+
"videoAIAnalysisEnabled",
|
|
52
64
|
],
|
|
53
|
-
path: () =>
|
|
65
|
+
path: () => "/sessions",
|
|
54
66
|
};
|
|
55
67
|
exports.getSessionEndpoint = {
|
|
56
68
|
method: Method.GET,
|
|
57
|
-
pathParams: [
|
|
69
|
+
pathParams: ["sessionId"],
|
|
58
70
|
queryParams: [],
|
|
59
71
|
bodyParams: [],
|
|
60
72
|
path: (p) => `/sessions/${p.sessionId}`,
|
|
@@ -64,19 +76,39 @@ exports.getLangsEndpoint = {
|
|
|
64
76
|
pathParams: [],
|
|
65
77
|
queryParams: [],
|
|
66
78
|
bodyParams: [],
|
|
67
|
-
path: () =>
|
|
79
|
+
path: () => "/langs",
|
|
68
80
|
};
|
|
69
81
|
exports.getAvatarsEndpoint = {
|
|
70
82
|
method: Method.GET,
|
|
71
83
|
pathParams: [],
|
|
72
84
|
queryParams: [],
|
|
73
85
|
bodyParams: [],
|
|
74
|
-
path: () =>
|
|
86
|
+
path: () => "/avatars",
|
|
75
87
|
};
|
|
76
88
|
exports.createClientSecretEndpoint = {
|
|
77
89
|
method: Method.GET,
|
|
78
|
-
pathParams: [
|
|
90
|
+
pathParams: ["sessionId"],
|
|
79
91
|
queryParams: [],
|
|
80
92
|
bodyParams: [],
|
|
81
93
|
path: (p) => `/sessions/${p.sessionId}/refresh`,
|
|
82
94
|
};
|
|
95
|
+
// List sessions endpoint
|
|
96
|
+
exports.getSessionsEndpoint = {
|
|
97
|
+
method: Method.GET,
|
|
98
|
+
pathParams: [],
|
|
99
|
+
queryParams: [
|
|
100
|
+
"limit",
|
|
101
|
+
"cursor",
|
|
102
|
+
"flowId",
|
|
103
|
+
"clientReferenceId",
|
|
104
|
+
"status",
|
|
105
|
+
"fromDate",
|
|
106
|
+
"toDate",
|
|
107
|
+
"sortBy",
|
|
108
|
+
"sortOrder",
|
|
109
|
+
"search",
|
|
110
|
+
"includeTotal",
|
|
111
|
+
],
|
|
112
|
+
bodyParams: [],
|
|
113
|
+
path: () => "/sessions",
|
|
114
|
+
};
|
package/build/src/client.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
import { SessionSettings, CreateSessionResponse, Method, ClientOptions, GetSessionParameters, GetSessionResponse, CreateClientSecretParameters, ClientSecret, GetLangsResponse } from './api-endpoints';
|
|
1
|
+
import { SessionSettings, CreateSessionResponse, Method, ClientOptions, GetSessionParameters, GetSessionResponse, CreateClientSecretParameters, ClientSecret, GetLangsResponse, GetAvatarsResponse, GetSessionsParameters, GetSessionsResponse } from './api-endpoints';
|
|
3
2
|
type QueryParams = Record<string, string | number | string[]> | URLSearchParams;
|
|
4
3
|
export interface RequestParameters {
|
|
5
4
|
path: string;
|
|
@@ -11,6 +10,7 @@ export interface RequestParameters {
|
|
|
11
10
|
declare class Client {
|
|
12
11
|
#private;
|
|
13
12
|
constructor(options?: ClientOptions);
|
|
13
|
+
private getServerUrlFromApiKey;
|
|
14
14
|
private setLogLevel;
|
|
15
15
|
private request;
|
|
16
16
|
readonly session: {
|
|
@@ -26,6 +26,10 @@ declare class Client {
|
|
|
26
26
|
* Generate client secret for the specified session
|
|
27
27
|
*/
|
|
28
28
|
createClientSecret: (args: CreateClientSecretParameters) => Promise<ClientSecret>;
|
|
29
|
+
/**
|
|
30
|
+
* List sessions with filtering and pagination
|
|
31
|
+
*/
|
|
32
|
+
list: (args?: GetSessionsParameters) => Promise<GetSessionsResponse>;
|
|
29
33
|
apiVersion: string;
|
|
30
34
|
};
|
|
31
35
|
readonly langs: {
|
|
@@ -36,9 +40,9 @@ declare class Client {
|
|
|
36
40
|
};
|
|
37
41
|
readonly avatars: {
|
|
38
42
|
/**
|
|
39
|
-
* Retrieve supported
|
|
43
|
+
* Retrieve supported avatars
|
|
40
44
|
*/
|
|
41
|
-
retrieve: () => Promise<
|
|
45
|
+
retrieve: () => Promise<GetAvatarsResponse>;
|
|
42
46
|
};
|
|
43
47
|
}
|
|
44
48
|
export default Client;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,qBAAqB,EACrB,MAAM,EAEN,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,4BAA4B,EAE5B,YAAY,EAEZ,gBAAgB,EAGhB,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EAEpB,MAAM,iBAAiB,CAAA;AAIxB,KAAK,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,eAAe,CAAA;AAE/E,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,cAAM,MAAM;;gBAOS,OAAO,CAAC,EAAE,aAAa;IAiB1C,OAAO,CAAC,sBAAsB;IAY9B,OAAO,CAAC,WAAW;YA6BL,OAAO;IA2ErB,SAAgB,OAAO;QACrB;;WAEG;uBACY,eAAe,KAAG,QAAQ,qBAAqB,CAAC;QAQ/D;;WAEG;yBACc,oBAAoB,KAAG,QAAQ,kBAAkB,CAAC;QAQnE;;WAEG;mCACwB,4BAA4B;QAQvD;;WAEG;sBACW,qBAAqB,KAAG,QAAQ,mBAAmB,CAAC;;MAqBnE;IAED,SAAgB,KAAK;QACnB;;WAEG;wBACW,QAAQ,gBAAgB,CAAC;MAQxC;IAED,SAAgB,OAAO;QACrB;;WAEG;wBACW,QAAQ,kBAAkB,CAAC;MAQ1C;CACF;AAED,eAAe,MAAM,CAAA"}
|
package/build/src/client.js
CHANGED
|
@@ -63,6 +63,29 @@ class Client {
|
|
|
63
63
|
body: (0, utils_1.pick)(args, api_endpoints_1.createClientSecretEndpoint.bodyParams),
|
|
64
64
|
});
|
|
65
65
|
},
|
|
66
|
+
/**
|
|
67
|
+
* List sessions with filtering and pagination
|
|
68
|
+
*/
|
|
69
|
+
list: (args) => {
|
|
70
|
+
return this.request({
|
|
71
|
+
path: api_endpoints_1.getSessionsEndpoint.path(),
|
|
72
|
+
method: api_endpoints_1.getSessionsEndpoint.method,
|
|
73
|
+
query: args ? {
|
|
74
|
+
...(args.limit !== undefined && { limit: args.limit }),
|
|
75
|
+
...(args.cursor && { cursor: args.cursor }),
|
|
76
|
+
...(args.flowId && { flowId: args.flowId }),
|
|
77
|
+
...(args.clientReferenceId && { clientReferenceId: args.clientReferenceId }),
|
|
78
|
+
...(args.status && { status: args.status }),
|
|
79
|
+
...(args.fromDate !== undefined && { fromDate: args.fromDate }),
|
|
80
|
+
...(args.toDate !== undefined && { toDate: args.toDate }),
|
|
81
|
+
...(args.sortBy && { sortBy: args.sortBy }),
|
|
82
|
+
...(args.sortOrder && { sortOrder: args.sortOrder }),
|
|
83
|
+
...(args.search && { search: args.search }),
|
|
84
|
+
...(args.includeTotal !== undefined && { includeTotal: String(args.includeTotal) }),
|
|
85
|
+
} : {},
|
|
86
|
+
body: {},
|
|
87
|
+
});
|
|
88
|
+
},
|
|
66
89
|
apiVersion: package_json_1.default.version,
|
|
67
90
|
};
|
|
68
91
|
this.langs = {
|
|
@@ -80,7 +103,7 @@ class Client {
|
|
|
80
103
|
};
|
|
81
104
|
this.avatars = {
|
|
82
105
|
/**
|
|
83
|
-
* Retrieve supported
|
|
106
|
+
* Retrieve supported avatars
|
|
84
107
|
*/
|
|
85
108
|
retrieve: () => {
|
|
86
109
|
return this.request({
|
|
@@ -96,6 +119,9 @@ class Client {
|
|
|
96
119
|
if (options === null || options === void 0 ? void 0 : options.serverUrl) {
|
|
97
120
|
__classPrivateFieldSet(this, _Client_serverUrl, options.serverUrl, "f");
|
|
98
121
|
}
|
|
122
|
+
else if (options === null || options === void 0 ? void 0 : options.auth) {
|
|
123
|
+
__classPrivateFieldSet(this, _Client_serverUrl, this.getServerUrlFromApiKey(options.auth), "f");
|
|
124
|
+
}
|
|
99
125
|
if (options && options.logLevel) {
|
|
100
126
|
this.setLogLevel(options.logLevel);
|
|
101
127
|
}
|
|
@@ -103,6 +129,17 @@ class Client {
|
|
|
103
129
|
loglevel_1.default.disableAll();
|
|
104
130
|
}
|
|
105
131
|
}
|
|
132
|
+
getServerUrlFromApiKey(apiKey) {
|
|
133
|
+
if (apiKey.startsWith('sk_live_')) {
|
|
134
|
+
return 'https://api.facesign.ai';
|
|
135
|
+
}
|
|
136
|
+
else if (apiKey.startsWith('sk_test_')) {
|
|
137
|
+
return 'https://api.dev.facesign.ai';
|
|
138
|
+
}
|
|
139
|
+
// Default fallback for keys without prefix (backward compatibility)
|
|
140
|
+
loglevel_1.default.warn('API key does not have a recognized prefix (sk_live_ or sk_test_). Using default production URL.');
|
|
141
|
+
return 'https://api.facesign.ai';
|
|
142
|
+
}
|
|
106
143
|
setLogLevel(logLevel) {
|
|
107
144
|
switch (logLevel) {
|
|
108
145
|
case api_endpoints_1.ILogLevel.DEBUG: {
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export declare enum BackgroundType {
|
|
2
|
+
AVATAR = "AVATAR",
|
|
3
|
+
COLOR = "COLOR"
|
|
4
|
+
}
|
|
5
|
+
export type PermissionsPageCustomization = {
|
|
6
|
+
buttonText?: string;
|
|
7
|
+
backgroundType?: BackgroundType;
|
|
8
|
+
backgroundColor?: string;
|
|
9
|
+
mainHeading?: string;
|
|
10
|
+
subheading?: string;
|
|
11
|
+
buttonTextTranslates?: Record<string, string>;
|
|
12
|
+
mainHeadingTranslates?: Record<string, string>;
|
|
13
|
+
subheadingTranslates?: Record<string, string>;
|
|
14
|
+
};
|
|
15
|
+
export type ControlsCustomization = {
|
|
16
|
+
showUxControls?: boolean;
|
|
17
|
+
};
|
|
18
|
+
export type Customization = {
|
|
19
|
+
permissionsPage?: PermissionsPageCustomization;
|
|
20
|
+
controls?: ControlsCustomization;
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=customization.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"customization.d.ts","sourceRoot":"","sources":["../../../src/types/customization.ts"],"names":[],"mappings":"AAAA,oBAAY,cAAc;IACxB,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB;AAED,MAAM,MAAM,4BAA4B,GAAG;IACzC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC7C,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9C,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC9C,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,eAAe,CAAC,EAAE,4BAA4B,CAAA;IAC9C,QAAQ,CAAC,EAAE,qBAAqB,CAAA;CACjC,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BackgroundType = void 0;
|
|
4
|
+
var BackgroundType;
|
|
5
|
+
(function (BackgroundType) {
|
|
6
|
+
BackgroundType["AVATAR"] = "AVATAR";
|
|
7
|
+
BackgroundType["COLOR"] = "COLOR";
|
|
8
|
+
})(BackgroundType = exports.BackgroundType || (exports.BackgroundType = {}));
|