idmission-web-sdk 1.0.399 → 1.0.401

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 (83) hide show
  1. package/README.md +130 -46
  2. package/dist/components/CompositeWizard.d.ts +3 -3
  3. package/dist/components/common/debug.d.ts +3 -6
  4. package/dist/components/customer_flows/CustomerBiometricsEnrollment.d.ts +17 -2
  5. package/dist/components/customer_flows/CustomerIdAndBiometricsEnrollment.d.ts +21 -6
  6. package/dist/components/customer_flows/CustomerIdentification.d.ts +17 -2
  7. package/dist/components/customer_flows/CustomerVerification.d.ts +17 -2
  8. package/dist/components/customer_flows/DocumentCapture.d.ts +17 -6
  9. package/dist/components/customer_flows/FaceValidation.d.ts +19 -2
  10. package/dist/components/customer_flows/IdAndFaceValidation.d.ts +22 -7
  11. package/dist/components/customer_flows/IdValidation.d.ts +22 -9
  12. package/dist/components/customer_flows/SignatureKYC.d.ts +21 -2
  13. package/dist/components/customer_flows/VideoIdValidation.d.ts +21 -2
  14. package/dist/components/document_capture/DocumentCaptureStateProvider.d.ts +1 -1
  15. package/dist/components/id_capture/CapturedDocuments.d.ts +3 -5
  16. package/dist/components/id_capture/HighPerformanceObjectDetectionModelsProvider.d.ts +36 -0
  17. package/dist/components/id_capture/IdCapture.d.ts +6 -6
  18. package/dist/components/id_capture/IdCaptureModelsProvider.d.ts +35 -21
  19. package/dist/components/id_capture/IdCaptureStateProvider.d.ts +3 -7
  20. package/dist/components/id_capture/IdCaptureWizard.d.ts +2 -2
  21. package/dist/components/selfie_capture/HighPerformanceSelfieGuidanceModelsProvider.d.ts +42 -0
  22. package/dist/components/selfie_capture/SelfieCapture.d.ts +1 -1
  23. package/dist/components/selfie_capture/SelfieGuidanceModelsProvider.d.ts +3 -21
  24. package/dist/components/submission/AuthUrlNotAllowedOverlay.d.ts +2 -0
  25. package/dist/components/submission/Errors.d.ts +1 -1
  26. package/dist/components/submission/SessionIdMissingOverlay.d.ts +2 -0
  27. package/dist/components/submission/SessionValidationErrorOverlay.d.ts +6 -0
  28. package/dist/components/submission/SessionValidationFailedOverlay.d.ts +2 -0
  29. package/dist/components/submission/SubmissionProvider.d.ts +26 -5
  30. package/dist/contexts/AuthStateContext.d.ts +33 -0
  31. package/dist/contexts/SelfieGuidanceModelsContext.d.ts +15 -0
  32. package/dist/contexts/SubmissionContext.d.ts +12 -5
  33. package/dist/index.d.ts +7 -1
  34. package/dist/lib/barcode/Scan.d.ts +1 -2
  35. package/dist/lib/models/DocumentDetection.d.ts +25 -64
  36. package/dist/lib/models/FaceDetection.d.ts +4 -33
  37. package/dist/lib/models/Focus.d.ts +9 -33
  38. package/dist/lib/models/preloadModels.d.ts +2 -9
  39. package/dist/lib/utils/cropping.d.ts +2 -3
  40. package/dist/lib/utils/dataUrlToBase64.d.ts +2 -0
  41. package/dist/lib/utils/logger.d.ts +0 -2
  42. package/dist/sdk2.cjs.development.js +9276 -2709
  43. package/dist/sdk2.cjs.development.js.map +1 -1
  44. package/dist/sdk2.cjs.production.js +1 -1
  45. package/dist/sdk2.cjs.production.js.map +1 -1
  46. package/dist/sdk2.esm.js +9276 -2713
  47. package/dist/sdk2.esm.js.map +1 -1
  48. package/dist/sdk2.umd.development.js +9290 -2722
  49. package/dist/sdk2.umd.development.js.map +1 -1
  50. package/dist/sdk2.umd.production.js +1 -1
  51. package/dist/sdk2.umd.production.js.map +1 -1
  52. package/dist/stories/Auth.stories.d.ts +8 -0
  53. package/dist/stories/Components/CompositeWizard/FaceLivenessAndIdCapture.stories.d.ts +0 -9
  54. package/dist/stories/Components/HighPerformanceFaceDetection/Minimal.stories.d.ts +12 -12
  55. package/dist/stories/Components/HighPerformanceFaceDetection/Original.stories.d.ts +8 -0
  56. package/dist/stories/CustomerFlows/CustomerBiometricsEnrollment.stories.d.ts +5 -1
  57. package/dist/stories/CustomerFlows/CustomerIdAndBiometricsEnrollment.stories.d.ts +5 -1
  58. package/dist/stories/CustomerFlows/CustomerIdentification.stories.d.ts +5 -1
  59. package/dist/stories/CustomerFlows/CustomerVerification.stories.d.ts +5 -1
  60. package/dist/stories/CustomerFlows/DocumentCapture.stories.d.ts +5 -1
  61. package/dist/stories/CustomerFlows/FaceValidation.stories.d.ts +5 -1
  62. package/dist/stories/CustomerFlows/IdAndFaceValidation.stories.d.ts +5 -2
  63. package/dist/stories/CustomerFlows/IdValidation.stories.d.ts +14 -19
  64. package/dist/stories/CustomerFlows/SignatureKYC.stories.d.ts +5 -1
  65. package/dist/stories/CustomerFlows/VideoIdValidation.stories.d.ts +15 -2
  66. package/dist/stories/Experiments/BarcodeReader.stories.d.ts +7 -0
  67. package/dist/stories/Experiments/VideoCapture.stories.d.ts +1 -1
  68. package/dist/stories/{Experiments/SpeedTest.stories.d.ts → models/DocumentDetection.stories.d.ts} +2 -2
  69. package/dist/stories/models/FocusModel.stories.d.ts +1 -1
  70. package/dist/stories/utils/sessions.d.ts +13 -0
  71. package/dist/stories/utils/useLocalStorage.d.ts +1 -0
  72. package/dist/version.d.ts +1 -1
  73. package/package.json +1 -1
  74. package/dist/components/id_capture/DocumentDetectionModelProvider.d.ts +0 -29
  75. package/dist/components/id_capture/FocusModelProvider.d.ts +0 -22
  76. package/dist/components/submission/TokenIssuerNotAllowedErrorOverlay.d.ts +0 -2
  77. package/dist/components/submission/TokenMissingErrorOverlay.d.ts +0 -2
  78. package/dist/components/submission/TokenPublicKeyErrorOverlay.d.ts +0 -5
  79. package/dist/lib/models/CapabilityProbing.d.ts +0 -14
  80. package/dist/lib/models/FrameLoop.d.ts +0 -7
  81. package/dist/lib/models/VisionRuntime.d.ts +0 -2
  82. package/dist/lib/models/helpers.d.ts +0 -9
  83. package/dist/lib/utils/isMobile.d.ts +0 -1
package/README.md CHANGED
@@ -6,21 +6,16 @@ Storybook: https://websdk2test.idmission.com
6
6
 
7
7
  ## Getting Started
8
8
 
9
- Before using the IDmission WebSDK, you should make sure you can fetch a token. New customers receive their token generation credentials via email. If you haven't received them, reach out to support@idmission.com.
9
+ Before using the IDmission WebSDK, you will need to obtain an API key. New customers receive their API credentials via email. If you haven't received them, reach out to support@idmission.com.
10
10
 
11
11
  To test that your credentials are valid:
12
12
  ```bash
13
- curl --location --request POST 'https://auth.idmission.com/auth/realms/identity/protocol/openid-connect/token' \
14
- --header 'Content-Type: application/x-www-form-urlencoded' \
15
- --data-urlencode 'grant_type=password' \
16
- --data-urlencode 'client_id=' \
17
- --data-urlencode 'client_secret=' \
18
- --data-urlencode 'username=' \
19
- --data-urlencode 'password=' \
20
- --data-urlencode 'scope=api_access'
13
+ curl -s -H "Content-Type: application/json" \
14
+ -d '{"api_key_id": "your-api-key-id", "api_key_secret": "your-api-secret"}' \
15
+ https://portal-api.idmission.com/portal.sessions.v1.SessionsService/CreateSession
21
16
  ```
22
17
 
23
- Prior to initializing the WebSDK on the client, you should generate a token on your server using these credentials. Be careful not to leak them on the client side! The generated token is safe to pass to the client, but the secrets used to generate them are not. If you have inadvertently leaked your client secret, react out to support@idmission.com to rotate your credentials.
18
+ Prior to initializing the WebSDK on the client, you should generate a session on your server using these credentials. Be careful not to leak them on the client side! The generated session id is safe to pass to the client, but the secrets used to generate them are not. If you have inadvertently leaked your credentials, react out to support@idmission.com to rotate them.
24
19
 
25
20
  If you are using NodeJS, check out our [auth client for server-side JavaScript](https://www.npmjs.com/package/idmission-auth-client).
26
21
 
@@ -35,7 +30,7 @@ import React from 'react'
35
30
  import { render } from 'react-dom'
36
31
  import { IdValidation } from 'idmission-web-sdk'
37
32
 
38
- render(<IdValidation submissionToken={YOUR_TOKEN} />, document.getElementById('root'))
33
+ render(<IdValidation sessionId={YOUR_SESSION_ID} />, document.getElementById('root'))
39
34
  ```
40
35
 
41
36
  ## Basic Usage in HTML
@@ -58,7 +53,7 @@ You may subscribe to the `idmission-web-sdk.ready` event to be notified when loa
58
53
  Then you may call any render method below, for example `renderIdValidation`, like so:
59
54
  ```html
60
55
  <script type="module">
61
- IDmissionSDK.renderIdValidation('#target-element', { submissionToken: 'my-idmission-token' });
56
+ IDmissionSDK.renderIdValidation('#target-element', { sessionId: 'my-idmission-session-id' });
62
57
  </script>
63
58
  ```
64
59
 
@@ -71,8 +66,14 @@ Render a fullscreen ID capture component that instructs the user to photograph b
71
66
  **Props**
72
67
 
73
68
  <table>
74
- <tr><td><code>submissionToken</code></td><td>a token generated with your IDmission credentials.</td></tr>
75
- <tr><td><code>submissionUrl</code> (optional)</td><td>URL to hit with all API requests. Default: https://api.idmission.com</td></tr>
69
+ <tr><td><code>sessionId</code></td><td>a session id generated with your IDmission credentials, or an async function that resolves to one.</td></tr>
70
+ <tr><td><code>authUrl</code> (optional)</td><td>URL to authenticate against. Default: https://portal-api.idmission.com</td></tr>
71
+ <tr><td><code>submissionUrl</code> (optional)</td><td>URL to submit data to. Default: https://portal-api.idmission.com/swagger</td></tr>
72
+ <tr><td><code>documentServiceUrl</code> (optional)</td><td>URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/</td></tr>
73
+ <tr><td><code>onBeforeDocumentUpload</code> (optional)</td><td>callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded.</td></tr>
74
+ <tr><td><code>onDocumentUploadProgress</code> (optional)</td><td>callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters.</td></tr>
75
+ <tr><td><code>onDocumentUploaded</code> (optional)</td><td>callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters.</td></tr>
76
+ <tr><td><code>onDocumentUploadFailed</code> (optional)</td><td>callback function that fires when a document failed to upload. The error and metadata are passed in as parameters.</td></tr>
76
77
  <tr><td><code>onBeforeSubmit</code> (optional)</td><td>callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
77
78
  <tr><td><code>onComplete</code> (optional)</td><td>callback function that fires when the user completes the IDValidation flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user.</td></tr>
78
79
  <tr><td><code>onApproved</code> (optional)</td><td>callback function that fires when the user completes the IDValidation flow with a valid ID. Arguments: same as onComplete.</td></tr>
@@ -84,14 +85,19 @@ Render a fullscreen ID capture component that instructs the user to photograph b
84
85
  <tr><td><code>captureSignature</code> (optional)</td><td>boolean indicating whether the user should be prompted to sign the screen before submission. Defaults to false.</td></tr>
85
86
  <tr><td><code>captureSignatureVideo</code> (optional)</td><td>boolean indicating whether the user should be prompted to record themselves signing the screen before submission. Defaults to false.</td></tr>
86
87
  <tr><td><code>captureAdditionalDocuments</code> (optional)</td><td>array of additional documents to be captured. Each element includes a name and description.</td></tr>
87
- <tr><td><code>idCaptureRequirement</code> (optional)</td><td>string to indicate which types of documents should be captured. Valid values: idCard, passport, idCardOrPassport, idCardAndPassport. Default is idCardOrPassport.</td></tr>
88
+ <tr><td><code>loadingOverlayMode</code> (optional)</td><td>string indicating which ID capture loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
88
89
  <tr><td><code>idCaptureRequirement</code> (optional)</td><td>string to indicate which types of documents should be captured. Valid values: idCard, passport, idCardOrPassport, idCardAndPassport. Default is idCardOrPassport.</td></tr>
89
90
  <tr><td><code>idAutoCaptureEnabled</code> (optional)</td><td>boolean to indicate whether photos should be captured automatically when guidance conditions are met. Default is `true`.</td></tr>
90
91
  <tr><td><code>idCardAutoCaptureScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which document detection guidance score condition is considered to be met for ID cards. Defaults to 0.8.</td></tr>
91
92
  <tr><td><code>passportAutoCaptureScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which document detection guidance score condition is considered to be met for passports. Defaults to 0.75.</td></tr>
92
- <tr><td><code>idCardFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for ID cards.</td></tr>
93
- <tr><td><code>passportFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for passports.</td></tr>
93
+ <tr><td><code>idCardFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for ID cards. Defaults to 0.3.</td></tr>
94
+ <tr><td><code>passportFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for passports. Defaults to 0.3.</td></tr>
94
95
  <tr><td><code>skipSuccessScreen</code> (optional)</td><td>boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false.</td></tr>
96
+ <tr><td><code>instructions</code> (optional)</td><td>React element or string to render on the instructions screen.</td></tr>
97
+ <tr><td><code>guideType</code> (optional)</td><td>string to indicate what type of guides to use during capture. Using fit is highly recommended in order to capture the best quality image. Valid values: fit, overlay. Defaults to fit.</td></tr>
98
+ <tr><td><code>portraitGuidesOnMobile</code> (optional)</td><td>boolean to indicate whether guide images should be rotated on mobile. Defaults to false.</td></tr>
99
+ <tr><td><code>rotateLoadingOverlayImageWhenPortrait</code> (optional)</td><td>boolean to indicate whether loading overlay image should be rotated on when mobile guides are rotated. Defaults to true.</td></tr>
100
+ <tr><td><code>precapturedDocuments</code> (optional)</td><td>object to allow documents that have been previously captured to be submitted. Valid keys: idCardFront, idCardBack, passport.</td></tr>
95
101
  <tr><td><code>companyId</code> (optional)</td><td>company identifier to include with submission.</td></tr>
96
102
  <tr><td><code>needImmediateResponse</code> (optional)</td><td>boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true.</td></tr>
97
103
  <tr><td><code>manualReviewRequired</code> (optional)</td><td>boolean flag to indicate whether responses should always be reviewed by a human. Defaults to false.</td></tr>
@@ -108,8 +114,10 @@ Render a fullscreen ID capture component that instructs the user to photograph b
108
114
  <tr><td><code>webhooksSendInputImages</code> (optional)</td><td>boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
109
115
  <tr><td><code>webhooksSendProcessedImages</code> (optional)</td><td>boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
110
116
  <tr><td><code>webhooksFireOnReview</code> (optional)</td><td>boolean flag to indicate whether customer-configured webhooks should be invoked upon ID being marked for manual review. Defaults to false.</td></tr>
117
+ <tr><td><code>sendBase64DocumentsInSwaggerProxy</code> (optional)</td><td>boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false.</td></tr>
111
118
  <tr><td><code>assets</code> (optional)</td><td>object containing any asset overrides, for available options consult the Assets table below.</td></tr>
112
119
  <tr><td><code>colors</code> (optional)</td><td>object containing any color overrides, for available options consult the Colors table below.</td></tr>
120
+ <tr><td><code>theme</code> (optional)</td><td>name of an included theme or object containing theme properties.</td></tr>
113
121
  <tr><td><code>verbiage</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the Verbiage table below.</td></tr>
114
122
  <tr><td><code>geolocationEnabled</code> (optional)</td><td>boolean flag to indicate whether users should be prompted to share their location. Defaults to true.</td></tr>
115
123
  <tr><td><code>geolocationRequired</code> (optional)</td><td>boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false.</td></tr>
@@ -200,7 +208,7 @@ Render a fullscreen ID capture component that instructs the user to photograph b
200
208
 
201
209
  ```js
202
210
  IDmissionSDK.renderIdValidation('#target-element', {
203
- submissionToken: 'my-idmission-token',
211
+ sessionId: 'my-idmission-session-id',
204
212
  onApproved: (submissionResponse) => {
205
213
  alert('Your ID has been validated, proceed to the next checkpoint.')
206
214
  },
@@ -217,8 +225,14 @@ Render a fullscreen capture component that analyzes frames from the user's front
217
225
  **Props**
218
226
 
219
227
  <table>
220
- <tr><td><code>submissionToken</code></td><td>a token generated with your IDmission credentials.</td></tr>
221
- <tr><td><code>submissionUrl</code> (optional)</td><td>URL to hit with all API requests. Default: https://api.idmission.com</td></tr>
228
+ <tr><td><code>sessionId</code></td><td>a session id generated with your IDmission credentials, or an async function that resolves to one.</td></tr>
229
+ <tr><td><code>authUrl</code> (optional)</td><td>URL to authenticate against. Default: https://portal-api.idmission.com</td></tr>
230
+ <tr><td><code>submissionUrl</code> (optional)</td><td>URL to submit data to. Default: https://portal-api.idmission.com/swagger</td></tr>
231
+ <tr><td><code>documentServiceUrl</code> (optional)</td><td>URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/</td></tr>
232
+ <tr><td><code>onBeforeDocumentUpload</code> (optional)</td><td>callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded.</td></tr>
233
+ <tr><td><code>onDocumentUploadProgress</code> (optional)</td><td>callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters.</td></tr>
234
+ <tr><td><code>onDocumentUploaded</code> (optional)</td><td>callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters.</td></tr>
235
+ <tr><td><code>onDocumentUploadFailed</code> (optional)</td><td>callback function that fires when a document failed to upload. The error and metadata are passed in as parameters.</td></tr>
222
236
  <tr><td><code>onBeforeSubmit</code> (optional)</td><td>callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
223
237
  <tr><td><code>onComplete</code> (optional)</td><td>callback function that fires when the user has completed the FaceValidation flow, regardless of whether they are approved or denied. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user.</td></tr>
224
238
  <tr><td><code>onApproved</code> (optional)</td><td>callback function that fires when the user completes the FaceValidation flow and passes the realness check. Arguments: same as onComplete.</td></tr>
@@ -228,6 +242,7 @@ Render a fullscreen capture component that analyzes frames from the user's front
228
242
  <tr><td><code>onUserCancel</code> (optional)</td><td>callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay.</td></tr>
229
243
  <tr><td><code>onCameraAccessDenied</code> (optional)</td><td>callback function that fires when camera access is denied or lost.</td></tr>
230
244
  <tr><td><code>lang</code> (optional)</td><td>language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto.</td></tr>
245
+ <tr><td><code>loadingOverlayMode</code> (optional)</td><td>string indicating which loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
231
246
  <tr><td><code>timeoutDurationMs</code> (optional)</td><td>the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds).</td></tr>
232
247
  <tr><td><code>skipSuccessScreen</code> (optional)</td><td>boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false.</td></tr>
233
248
  <tr><td><code>companyId</code> (optional)</td><td>company identifier to include with submission.</td></tr>
@@ -237,13 +252,13 @@ Render a fullscreen capture component that analyzes frames from the user's front
237
252
  <tr><td><code>webhooksStripSpecialCharacters</code> (optional)</td><td>boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true.</td></tr>
238
253
  <tr><td><code>webhooksSendInputImages</code> (optional)</td><td>boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
239
254
  <tr><td><code>webhooksSendProcessedImages</code> (optional)</td><td>boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
255
+ <tr><td><code>sendBase64DocumentsInSwaggerProxy</code> (optional)</td><td>boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false.</td></tr>
240
256
  <tr><td><code>assets</code> (optional)</td><td>object containing any asset overrides, for available options consult the Assets table below.</td></tr>
241
257
  <tr><td><code>colors</code> (optional)</td><td>object containing any color overrides, for available options consult the Colors table below.</td></tr>
258
+ <tr><td><code>theme</code> (optional)</td><td>name of an included theme or object containing theme properties.</td></tr>
242
259
  <tr><td><code>verbiage</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the Verbiage table below.</td></tr>
243
260
  <tr><td><code>geolocationEnabled</code> (optional)</td><td>boolean flag to indicate whether users should be prompted to share their location. Defaults to true.</td></tr>
244
261
  <tr><td><code>geolocationRequired</code> (optional)</td><td>boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false.</td></tr>
245
- <tr><td><code>geolocationEnabled</code> (optional)</td><td>boolean flag to indicate whether users should be prompted to share their location. Defaults to true.</td></tr>
246
- <tr><td><code>geolocationRequired</code> (optional)</td><td>boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false.</td></tr>
247
262
  <tr><td><code>debugMode</code> (optional)</td><td>boolean flag to enable on-screen prediction information output. Defaults to false.</td></tr>
248
263
  </table>
249
264
 
@@ -313,7 +328,7 @@ Render a fullscreen capture component that analyzes frames from the user's front
313
328
 
314
329
  ```js
315
330
  IDmissionSDK.renderFaceValidation('#target-element', {
316
- submissionToken: 'my-idmission-token',
331
+ sessionId: 'my-idmission-session-id',
317
332
  onApproved: (submissionResponse) => {
318
333
  alert('Your face is real, proceed to the next checkpoint.')
319
334
  },
@@ -330,8 +345,14 @@ Render a fullscreen capture component that performs IDValidation and FaceValidat
330
345
  **Props**
331
346
 
332
347
  <table>
333
- <tr><td><code>submissionToken</code></td><td>a token generated with your IDmission credentials.</td></tr>
334
- <tr><td><code>submissionUrl</code> (optional)</td><td>URL to hit with all API requests. Default: https://api.idmission.com</td></tr>
348
+ <tr><td><code>sessionId</code></td><td>a session id generated with your IDmission credentials, or an async function that resolves to one.</td></tr>
349
+ <tr><td><code>authUrl</code> (optional)</td><td>URL to authenticate against. Default: https://portal-api.idmission.com</td></tr>
350
+ <tr><td><code>submissionUrl</code> (optional)</td><td>URL to submit data to. Default: https://portal-api.idmission.com/swagger</td></tr>
351
+ <tr><td><code>documentServiceUrl</code> (optional)</td><td>URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/</td></tr>
352
+ <tr><td><code>onBeforeDocumentUpload</code> (optional)</td><td>callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded.</td></tr>
353
+ <tr><td><code>onDocumentUploadProgress</code> (optional)</td><td>callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters.</td></tr>
354
+ <tr><td><code>onDocumentUploaded</code> (optional)</td><td>callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters.</td></tr>
355
+ <tr><td><code>onDocumentUploadFailed</code> (optional)</td><td>callback function that fires when a document failed to upload. The error and metadata are passed in as parameters.</td></tr>
335
356
  <tr><td><code>onBeforeLivenessCheck</code> (optional)</td><td>callback function that fires immediately prior to liveness check, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The liveness check request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
336
357
  <tr><td><code>onBeforeSubmit</code> (optional)</td><td>callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
337
358
  <tr><td><code>onComplete</code> (optional)</td><td>callback function that fires when the user has completed both flows. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user.</td></tr>
@@ -345,15 +366,21 @@ Render a fullscreen capture component that performs IDValidation and FaceValidat
345
366
  <tr><td><code>captureSignatureVideo</code> (optional)</td><td>boolean indicating whether the user should be prompted to record themselves signing the screen before submission. Defaults to false.</td></tr>
346
367
  <tr><td><code>captureAdditionalDocuments</code> (optional)</td><td>array of additional documents to be captured. Each element includes a name and description.</td></tr>
347
368
  <tr><td><code>lang</code> (optional)</td><td>language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto.</td></tr>
348
- <tr><td><code>idCaptureRequirement</code> (optional)</td><td>string to indicate which types of documents should be captured. Valid values: idCard, passport, idCardOrPassport, idCardAndPassport. Default is idCardOrPassport.</td></tr>
369
+ <tr><td><code>precapturedDocuments</code> (optional)</td><td>object to allow documents that have been previously captured to be submitted. Valid keys: idCardFront, idCardBack, passport.</td></tr>
370
+ <tr><td><code>idCaptureLoadingOverlayMode</code> (optional)</td><td>string indicating which ID capture loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
349
371
  <tr><td><code>idCaptureRequirement</code> (optional)</td><td>string to indicate which types of documents should be captured. Valid values: idCard, passport, idCardOrPassport, idCardAndPassport. Default is idCardOrPassport.</td></tr>
350
372
  <tr><td><code>idAutoCaptureEnabled</code> (optional)</td><td>boolean to indicate whether photos should be captured automatically when guidance conditions are met. Default is `true`.</td></tr>
351
373
  <tr><td><code>idCardAutoCaptureScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which document detection guidance score condition is considered to be met for ID cards. Defaults to 0.8.</td></tr>
352
374
  <tr><td><code>passportAutoCaptureScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which document detection guidance score condition is considered to be met for passports. Defaults to 0.75.</td></tr>
353
- <tr><td><code>idCardFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for ID cards.</td></tr>
354
- <tr><td><code>passportFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for passports.</td></tr>
375
+ <tr><td><code>idCardFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for ID cards. Defaults to 0.3.</td></tr>
376
+ <tr><td><code>passportFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for passports. Defaults to 0.3.</td></tr>
377
+ <tr><td><code>faceLivenessLoadingOverlayMode</code> (optional)</td><td>string indicating which face liveness loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
355
378
  <tr><td><code>faceLivenessTimeoutDurationMs</code> (optional)</td><td>the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds).</td></tr>
356
379
  <tr><td><code>skipSuccessScreen</code> (optional)</td><td>boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false.</td></tr>
380
+ <tr><td><code>idCaptureInstructions</code> (optional)</td><td>React element or string to render on the instructions screen.</td></tr>
381
+ <tr><td><code>idCaptureGuideType</code> (optional)</td><td>string to indicate what type of guides to use during capture. Using fit is highly recommended in order to capture the best quality image. Valid values: fit, overlay. Defaults to fit.</td></tr>
382
+ <tr><td><code>idCapturePortraitGuidesOnMobile</code> (optional)</td><td>boolean to indicate whether guide images should be rotated on mobile. Defaults to false.</td></tr>
383
+ <tr><td><code>idCaptureRotateLoadingOverlayImageWhenPortrait</code> (optional)</td><td>boolean to indicate whether loading overlay image should be rotated on when mobile guides are rotated. Defaults to true.</td></tr>
357
384
  <tr><td><code>companyId</code> (optional)</td><td>company identifier to include with submission.</td></tr>
358
385
  <tr><td><code>needImmediateResponse</code> (optional)</td><td>boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true.</td></tr>
359
386
  <tr><td><code>manualReviewRequired</code> (optional)</td><td>boolean flag to indicate whether responses should always be reviewed by a human. Defaults to false.</td></tr>
@@ -370,6 +397,8 @@ Render a fullscreen capture component that performs IDValidation and FaceValidat
370
397
  <tr><td><code>webhooksSendInputImages</code> (optional)</td><td>boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
371
398
  <tr><td><code>webhooksSendProcessedImages</code> (optional)</td><td>boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
372
399
  <tr><td><code>webhooksFireOnReview</code> (optional)</td><td>boolean flag to indicate whether customer-configured webhooks should be invoked upon ID being marked for manual review. Defaults to false.</td></tr>
400
+ <tr><td><code>sendBase64DocumentsInSwaggerProxy</code> (optional)</td><td>boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false.</td></tr>
401
+ <tr><td><code>theme</code> (optional)</td><td>name of an included theme or object containing theme properties.</td></tr>
373
402
  <tr><td><code>assets.idCapture</code> (optional)</td><td>object containing any asset overrides, for available options consult the ID Capture Assets table above.</td></tr>
374
403
  <tr><td><code>assets.faceLiveness</code> (optional)</td><td>object containing any asset overrides, for available options consult the Face Liveness Assets table above.</td></tr>
375
404
  <tr><td><code>colors.idCapture</code> (optional)</td><td>object containing any color overrides, for available options consult the ID Capture Colors table above.</td></tr>
@@ -387,7 +416,7 @@ Render a fullscreen capture component that performs IDValidation and FaceValidat
387
416
 
388
417
  ```js
389
418
  IDmissionSDK.renderIdAndFaceValidation('#target-element', {
390
- submissionToken: 'my-idmission-token',
419
+ sessionId: 'my-idmission-session-id',
391
420
  onApproved: (submissionResponse) => {
392
421
  alert('Your ID has been validated and your face is real, proceed to the next checkpoint.')
393
422
  },
@@ -404,8 +433,14 @@ Render a fullscreen capture component that performs IDValidation and FaceValidat
404
433
  **Props**
405
434
 
406
435
  <table>
407
- <tr><td><code>submissionToken</code></td><td>a token generated with your IDmission credentials.</td></tr>
408
- <tr><td><code>submissionUrl</code> (optional)</td><td>URL to hit with all API requests. Default: https://api.idmission.com</td></tr>
436
+ <tr><td><code>sessionId</code></td><td>a session id generated with your IDmission credentials, or an async function that resolves to one.</td></tr>
437
+ <tr><td><code>authUrl</code> (optional)</td><td>URL to authenticate against. Default: https://portal-api.idmission.com</td></tr>
438
+ <tr><td><code>submissionUrl</code> (optional)</td><td>URL to submit data to. Default: https://portal-api.idmission.com/swagger</td></tr>
439
+ <tr><td><code>documentServiceUrl</code> (optional)</td><td>URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/</td></tr>
440
+ <tr><td><code>onBeforeDocumentUpload</code> (optional)</td><td>callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded.</td></tr>
441
+ <tr><td><code>onDocumentUploadProgress</code> (optional)</td><td>callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters.</td></tr>
442
+ <tr><td><code>onDocumentUploaded</code> (optional)</td><td>callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters.</td></tr>
443
+ <tr><td><code>onDocumentUploadFailed</code> (optional)</td><td>callback function that fires when a document failed to upload. The error and metadata are passed in as parameters.</td></tr>
409
444
  <tr><td><code>enrollmentId</code></td><td>the unique identifier to use for the customer to be enrolled. Overrides <code>personalData.uniqueNumber</code> if both are specified.</td></tr>
410
445
  <tr><td><code>onBeforeSubmit</code> (optional)</td><td>callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
411
446
  <tr><td><code>onComplete</code> (optional)</td><td>callback function that fires when the user has completed the CustomerIdAndBiometricsEnrollment flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user.</td></tr>
@@ -419,14 +454,20 @@ Render a fullscreen capture component that performs IDValidation and FaceValidat
419
454
  <tr><td><code>captureSignatureVideo</code> (optional)</td><td>boolean indicating whether the user should be prompted to record themselves signing the screen before submission. Defaults to false.</td></tr>
420
455
  <tr><td><code>captureAdditionalDocuments</code> (optional)</td><td>array of additional documents to be captured. Each element includes a name and description.</td></tr>
421
456
  <tr><td><code>lang</code> (optional)</td><td>language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto.</td></tr>
457
+ <tr><td><code>idCaptureLoadingOverlayMode</code> (optional)</td><td>string indicating which ID capture loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
422
458
  <tr><td><code>idCaptureRequirement</code> (optional)</td><td>string to indicate which types of documents should be captured. Valid values: idCard, passport, idCardOrPassport, idCardAndPassport. Default is idCardOrPassport.</td></tr>
423
459
  <tr><td><code>idAutoCaptureEnabled</code> (optional)</td><td>boolean to indicate whether photos should be captured automatically when guidance conditions are met. Default is `true`.</td></tr>
424
460
  <tr><td><code>idCardAutoCaptureScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which document detection guidance score condition is considered to be met for ID cards. Defaults to 0.8.</td></tr>
425
461
  <tr><td><code>passportAutoCaptureScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which document detection guidance score condition is considered to be met for passports. Defaults to 0.75.</td></tr>
426
- <tr><td><code>idCardFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for ID cards.</td></tr>
427
- <tr><td><code>passportFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for passports.</td></tr>
462
+ <tr><td><code>idCardFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for ID cards. Defaults to 0.3.</td></tr>
463
+ <tr><td><code>passportFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for passports. Defaults to 0.3.</td></tr>
464
+ <tr><td><code>faceLivenessLoadingOverlayMode</code> (optional)</td><td>string indicating which face liveness loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
428
465
  <tr><td><code>faceLivenessTimeoutDurationMs</code> (optional)</td><td>the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds).</td></tr>
429
466
  <tr><td><code>skipSuccessScreen</code> (optional)</td><td>boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false.</td></tr>
467
+ <tr><td><code>idCaptureInstructions</code> (optional)</td><td>React element or string to render on the instructions screen.</td></tr>
468
+ <tr><td><code>idCaptureGuideType</code> (optional)</td><td>string to indicate what type of guides to use during capture. Using fit is highly recommended in order to capture the best quality image. Valid values: fit, overlay. Defaults to fit.</td></tr>
469
+ <tr><td><code>idCapturePortraitGuidesOnMobile</code> (optional)</td><td>boolean to indicate whether guide images should be rotated on mobile. Defaults to false.</td></tr>
470
+ <tr><td><code>idCaptureRotateLoadingOverlayImageWhenPortrait</code> (optional)</td><td>boolean to indicate whether loading overlay image should be rotated on when mobile guides are rotated. Defaults to true.</td></tr>
430
471
  <tr><td><code>companyId</code> (optional)</td><td>company identifier to include with submission.</td></tr>
431
472
  <tr><td><code>needImmediateResponse</code> (optional)</td><td>boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true.</td></tr>
432
473
  <tr><td><code>manualReviewRequired</code> (optional)</td><td>boolean flag to indicate whether responses should always be reviewed by a human. Defaults to false.</td></tr>
@@ -445,6 +486,8 @@ Render a fullscreen capture component that performs IDValidation and FaceValidat
445
486
  <tr><td><code>webhooksSendInputImages</code> (optional)</td><td>boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
446
487
  <tr><td><code>webhooksSendProcessedImages</code> (optional)</td><td>boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
447
488
  <tr><td><code>webhooksFireOnReview</code> (optional)</td><td>boolean flag to indicate whether customer-configured webhooks should be invoked upon ID being marked for manual review. Defaults to false.</td></tr>
489
+ <tr><td><code>sendBase64DocumentsInSwaggerProxy</code> (optional)</td><td>boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false.</td></tr>
490
+ <tr><td><code>theme</code> (optional)</td><td>name of an included theme or object containing theme properties.</td></tr>
448
491
  <tr><td><code>assets.idCapture</code> (optional)</td><td>object containing any asset overrides, for available options consult the ID Capture Assets table above.</td></tr>
449
492
  <tr><td><code>assets.faceLiveness</code> (optional)</td><td>object containing any asset overrides, for available options consult the Face Liveness Assets table above.</td></tr>
450
493
  <tr><td><code>colors.idCapture</code> (optional)</td><td>object containing any color overrides, for available options consult the ID Capture Colors table above.</td></tr>
@@ -464,7 +507,7 @@ Render a fullscreen capture component that performs IDValidation and FaceValidat
464
507
 
465
508
  ```js
466
509
  IDmissionSDK.renderCustomerIdAndBiometricsEnrollment('#target-element', {
467
- submissionToken: 'my-idmission-token',
510
+ sessionId: 'my-idmission-session-id',
468
511
  enrollmentId: 'some-guy',
469
512
  });
470
513
  ```
@@ -476,8 +519,14 @@ Render a fullscreen capture component that performs FaceValidation, and then sto
476
519
  **Props**
477
520
 
478
521
  <table>
479
- <tr><td><code>submissionToken</code></td><td>a token generated with your IDmission credentials.</td></tr>
480
- <tr><td><code>submissionUrl</code> (optional)</td><td>URL to hit with all API requests. Default: https://api.idmission.com</td></tr>
522
+ <tr><td><code>sessionId</code></td><td>a session id generated with your IDmission credentials, or an async function that resolves to one.</td></tr>
523
+ <tr><td><code>authUrl</code> (optional)</td><td>URL to authenticate against. Default: https://portal-api.idmission.com</td></tr>
524
+ <tr><td><code>submissionUrl</code> (optional)</td><td>URL to submit data to. Default: https://portal-api.idmission.com/swagger</td></tr>
525
+ <tr><td><code>documentServiceUrl</code> (optional)</td><td>URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/</td></tr>
526
+ <tr><td><code>onBeforeDocumentUpload</code> (optional)</td><td>callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded.</td></tr>
527
+ <tr><td><code>onDocumentUploadProgress</code> (optional)</td><td>callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters.</td></tr>
528
+ <tr><td><code>onDocumentUploaded</code> (optional)</td><td>callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters.</td></tr>
529
+ <tr><td><code>onDocumentUploadFailed</code> (optional)</td><td>callback function that fires when a document failed to upload. The error and metadata are passed in as parameters.</td></tr>
481
530
  <tr><td><code>enrollmentId</code></td><td>the unique identifier to use for the customer to be enrolled. Overrides <code>personalData.uniqueNumber</code> if both are specified.</td></tr>
482
531
  <tr><td><code>onBeforeSubmit</code> (optional)</td><td>callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
483
532
  <tr><td><code>onComplete</code> (optional)</td><td>callback function that fires when the user has completed the CustomerBiometricsEnrollment flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user.</td></tr>
@@ -491,6 +540,7 @@ Render a fullscreen capture component that performs FaceValidation, and then sto
491
540
  <tr><td><code>captureSignatureVideo</code> (optional)</td><td>boolean indicating whether the user should be prompted to record themselves signing the screen before submission. Defaults to false.</td></tr>
492
541
  <tr><td><code>captureAdditionalDocuments</code> (optional)</td><td>array of additional documents to be captured. Each element includes a name and description.</td></tr>
493
542
  <tr><td><code>lang</code> (optional)</td><td>language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto.</td></tr>
543
+ <tr><td><code>loadingOverlayMode</code> (optional)</td><td>string indicating which loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
494
544
  <tr><td><code>timeoutDurationMs</code> (optional)</td><td>the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds).</td></tr>
495
545
  <tr><td><code>skipSuccessScreen</code> (optional)</td><td>boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false.</td></tr>
496
546
  <tr><td><code>companyId</code> (optional)</td><td>company identifier to include with submission.</td></tr>
@@ -502,6 +552,8 @@ Render a fullscreen capture component that performs FaceValidation, and then sto
502
552
  <tr><td><code>webhooksStripSpecialCharacters</code> (optional)</td><td>boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true.</td></tr>
503
553
  <tr><td><code>webhooksSendInputImages</code> (optional)</td><td>boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
504
554
  <tr><td><code>webhooksSendProcessedImages</code> (optional)</td><td>boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
555
+ <tr><td><code>sendBase64DocumentsInSwaggerProxy</code> (optional)</td><td>boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false.</td></tr>
556
+ <tr><td><code>theme</code> (optional)</td><td>name of an included theme or object containing theme properties.</td></tr>
505
557
  <tr><td><code>assets.faceLiveness</code> (optional)</td><td>object containing any asset overrides, for available options consult the Face Liveness Assets table above.</td></tr>
506
558
  <tr><td><code>colors.faceLiveness</code> (optional)</td><td>object containing any color overrides, for available options consult the Face Liveness Colors table above.</td></tr>
507
559
  <tr><td><code>colors.videoSignatureCapture</code> (optional)</td><td>object containing any color overrides, for available options consult the videoSignatureCapture fields in the ID Capture Colors table above.</td></tr>
@@ -518,7 +570,7 @@ Render a fullscreen capture component that performs FaceValidation, and then sto
518
570
 
519
571
  ```js
520
572
  IDmissionSDK.renderCustomerBiometricsEnrollment('#target-element', {
521
- submissionToken: 'my-idmission-token',
573
+ sessionId: 'my-idmission-session-id',
522
574
  enrollmentId: 'some-guy',
523
575
  });
524
576
  ```
@@ -530,8 +582,14 @@ Render a fullscreen capture component that analyzes frames from the user's front
530
582
  **Props**
531
583
 
532
584
  <table>
533
- <tr><td><code>submissionToken</code></td><td>a token generated with your IDmission credentials.</td></tr>
534
- <tr><td><code>submissionUrl</code> (optional)</td><td>URL to hit with all API requests. Default: https://api.idmission.com</td></tr>
585
+ <tr><td><code>sessionId</code></td><td>a session id generated with your IDmission credentials, or an async function that resolves to one.</td></tr>
586
+ <tr><td><code>authUrl</code> (optional)</td><td>URL to authenticate against. Default: https://portal-api.idmission.com</td></tr>
587
+ <tr><td><code>submissionUrl</code> (optional)</td><td>URL to submit data to. Default: https://portal-api.idmission.com/swagger</td></tr>
588
+ <tr><td><code>documentServiceUrl</code> (optional)</td><td>URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/</td></tr>
589
+ <tr><td><code>onBeforeDocumentUpload</code> (optional)</td><td>callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded.</td></tr>
590
+ <tr><td><code>onDocumentUploadProgress</code> (optional)</td><td>callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters.</td></tr>
591
+ <tr><td><code>onDocumentUploaded</code> (optional)</td><td>callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters.</td></tr>
592
+ <tr><td><code>onDocumentUploadFailed</code> (optional)</td><td>callback function that fires when a document failed to upload. The error and metadata are passed in as parameters.</td></tr>
535
593
  <tr><td><code>enrollmentId</code></td><td>the unique identifier to match from previously enrolled customers.</td></tr>
536
594
  <tr><td><code>onBeforeSubmit</code> (optional)</td><td>callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
537
595
  <tr><td><code>onComplete</code> (optional)</td><td>callback function that fires when the user has completed the CustomerVerification flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user.</td></tr>
@@ -542,6 +600,7 @@ Render a fullscreen capture component that analyzes frames from the user's front
542
600
  <tr><td><code>onUserCancel</code> (optional)</td><td>callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay.</td></tr>
543
601
  <tr><td><code>onCameraAccessDenied</code> (optional)</td><td>callback function that fires when camera access is denied or lost.</td></tr>
544
602
  <tr><td><code>lang</code> (optional)</td><td>language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto.</td></tr>
603
+ <tr><td><code>loadingOverlayMode</code> (optional)</td><td>string indicating which loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
545
604
  <tr><td><code>timeoutDurationMs</code> (optional)</td><td>the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds).</td></tr>
546
605
  <tr><td><code>skipSuccessScreen</code> (optional)</td><td>boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false.</td></tr>
547
606
  <tr><td><code>companyId</code> (optional)</td><td>company identifier to include with submission.</td></tr>
@@ -551,6 +610,8 @@ Render a fullscreen capture component that analyzes frames from the user's front
551
610
  <tr><td><code>webhooksStripSpecialCharacters</code> (optional)</td><td>boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true.</td></tr>
552
611
  <tr><td><code>webhooksSendInputImages</code> (optional)</td><td>boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
553
612
  <tr><td><code>webhooksSendProcessedImages</code> (optional)</td><td>boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
613
+ <tr><td><code>sendBase64DocumentsInSwaggerProxy</code> (optional)</td><td>boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false.</td></tr>
614
+ <tr><td><code>theme</code> (optional)</td><td>name of an included theme or object containing theme properties.</td></tr>
554
615
  <tr><td><code>assets</code> (optional)</td><td>object containing any asset overrides, for available options consult the Face Liveness Assets table above.</td></tr>
555
616
  <tr><td><code>colors</code> (optional)</td><td>object containing any color overrides, for available options consult the Face Liveness Colors table above.</td></tr>
556
617
  <tr><td><code>verbiage</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the Face Liveness Verbiage table above.</td></tr>
@@ -563,7 +624,7 @@ Render a fullscreen capture component that analyzes frames from the user's front
563
624
 
564
625
  ```js
565
626
  IDmissionSDK.renderCustomerVerification('#target-element', {
566
- submissionToken: 'my-idmission-token',
627
+ sessionId: 'my-idmission-session-id',
567
628
  enrollmentId: 'some-guy',
568
629
  });
569
630
  ```
@@ -575,8 +636,14 @@ Render a fullscreen capture component that analyzes frames from the user's front
575
636
  **Props**
576
637
 
577
638
  <table>
578
- <tr><td><code>submissionToken</code></td><td>a token generated with your IDmission credentials.</td></tr>
579
- <tr><td><code>submissionUrl</code> (optional)</td><td>URL to hit with all API requests. Default: https://api.idmission.com</td></tr>
639
+ <tr><td><code>sessionId</code></td><td>a session id generated with your IDmission credentials, or an async function that resolves to one.</td></tr>
640
+ <tr><td><code>authUrl</code> (optional)</td><td>URL to authenticate against. Default: https://portal-api.idmission.com</td></tr>
641
+ <tr><td><code>submissionUrl</code> (optional)</td><td>URL to submit data to. Default: https://portal-api.idmission.com/swagger</td></tr>
642
+ <tr><td><code>documentServiceUrl</code> (optional)</td><td>URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/</td></tr>
643
+ <tr><td><code>onBeforeDocumentUpload</code> (optional)</td><td>callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded.</td></tr>
644
+ <tr><td><code>onDocumentUploadProgress</code> (optional)</td><td>callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters.</td></tr>
645
+ <tr><td><code>onDocumentUploaded</code> (optional)</td><td>callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters.</td></tr>
646
+ <tr><td><code>onDocumentUploadFailed</code> (optional)</td><td>callback function that fires when a document failed to upload. The error and metadata are passed in as parameters.</td></tr>
580
647
  <tr><td><code>onBeforeSubmit</code> (optional)</td><td>callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
581
648
  <tr><td><code>onComplete</code> (optional)</td><td>callback function that fires when the user has completed the CustomerIdentification flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user.</td></tr>
582
649
  <tr><td><code>onCustomerMatched</code> (optional)</td><td>callback function that fires when the user has completed the CustomerIdentification flow and matches a pre-registered customer <code>enrollmentId</code> in IDmission's database. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check.</td></tr>
@@ -585,6 +652,8 @@ Render a fullscreen capture component that analyzes frames from the user's front
585
652
  <tr><td><code>onExitAfterFailure</code> (optional)</td><td>callback function that fires when the user clicks the exit button after failing the realness check.</td></tr>
586
653
  <tr><td><code>onUserCancel</code> (optional)</td><td>callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay.</td></tr>
587
654
  <tr><td><code>onCameraAccessDenied</code> (optional)</td><td>callback function that fires when camera access is denied or lost.</td></tr>
655
+ <tr><td><code>loadingOverlayMode</code> (optional)</td><td>string indicating which loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
656
+ <tr><td><code>timeoutDurationMs</code> (optional)</td><td>the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds).</td></tr>
588
657
  <tr><td><code>skipSuccessScreen</code> (optional)</td><td>boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false.</td></tr>
589
658
  <tr><td><code>lang</code> (optional)</td><td>language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto.</td></tr>
590
659
  <tr><td><code>companyId</code> (optional)</td><td>company identifier to include with submission.</td></tr>
@@ -594,6 +663,8 @@ Render a fullscreen capture component that analyzes frames from the user's front
594
663
  <tr><td><code>webhooksStripSpecialCharacters</code> (optional)</td><td>boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true.</td></tr>
595
664
  <tr><td><code>webhooksSendInputImages</code> (optional)</td><td>boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
596
665
  <tr><td><code>webhooksSendProcessedImages</code> (optional)</td><td>boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
666
+ <tr><td><code>sendBase64DocumentsInSwaggerProxy</code> (optional)</td><td>boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false.</td></tr>
667
+ <tr><td><code>theme</code> (optional)</td><td>name of an included theme or object containing theme properties.</td></tr>
597
668
  <tr><td><code>assets</code> (optional)</td><td>object containing any asset overrides, for available options consult the Assets table below.</td></tr>
598
669
  <tr><td><code>colors</code> (optional)</td><td>object containing any asset overrides, for available options consult the Colors table below.</td></tr>
599
670
  <tr><td><code>verbiage</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the Verbiage table below.</td></tr>
@@ -664,7 +735,7 @@ Render a fullscreen capture component that analyzes frames from the user's front
664
735
  **Example**
665
736
 
666
737
  ```js
667
- IDmissionSDK.renderCustomerIdentification('#target-element', { submissionToken: 'my-idmission-token' });
738
+ IDmissionSDK.renderCustomerIdentification('#target-element', { sessionId: 'my-idmission-session-id' });
668
739
  ```
669
740
 
670
741
  ### VideoIdValidation
@@ -674,8 +745,14 @@ Render a fullscreen capture component that performs IDValidation and FaceValidat
674
745
  **Props**
675
746
 
676
747
  <table>
677
- <tr><td><code>submissionToken</code></td><td>a token generated with your IDmission credentials.</td></tr>
678
- <tr><td><code>submissionUrl</code> (optional)</td><td>URL to hit with all API requests. Default: https://api.idmission.com</td></tr>
748
+ <tr><td><code>sessionId</code></td><td>a session id generated with your IDmission credentials, or an async function that resolves to one.</td></tr>
749
+ <tr><td><code>authUrl</code> (optional)</td><td>URL to authenticate against. Default: https://portal-api.idmission.com</td></tr>
750
+ <tr><td><code>submissionUrl</code> (optional)</td><td>URL to submit data to. Default: https://portal-api.idmission.com/swagger</td></tr>
751
+ <tr><td><code>documentServiceUrl</code> (optional)</td><td>URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/</td></tr>
752
+ <tr><td><code>onBeforeDocumentUpload</code> (optional)</td><td>callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded.</td></tr>
753
+ <tr><td><code>onDocumentUploadProgress</code> (optional)</td><td>callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters.</td></tr>
754
+ <tr><td><code>onDocumentUploaded</code> (optional)</td><td>callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters.</td></tr>
755
+ <tr><td><code>onDocumentUploadFailed</code> (optional)</td><td>callback function that fires when a document failed to upload. The error and metadata are passed in as parameters.</td></tr>
679
756
  <tr><td><code>onBeforeSubmit</code> (optional)</td><td>callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
680
757
  <tr><td><code>onSubmit</code> (optional)</td><td>callback function that fires when the user has completed the flow instead of making a call to IDmission's servers, allowing customers to specify their own submission logic. Arguments: the request payload that would have been dispatched to IDmission's API, which contains the images/documents/video submitted by the user. Note that when this parameter is supplied, `onComplete` will never fire, and the customer will need to implement their own error handling/retry logic. Use at your own risk!</td></tr>
681
758
  <tr><td><code>onComplete</code> (optional)</td><td>callback function that fires when the user has completed the VideoIdValidation flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user.</td></tr>
@@ -716,6 +793,13 @@ Render a fullscreen capture component that performs IDValidation and FaceValidat
716
793
  <tr><td><code>skipSuccessScreen</code> (optional)</td><td>boolean or async function to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false.</td></tr>
717
794
  <tr><td><code>skipIdCapture</code> (optional)</td><td>boolean to indicate whether to skip the initial ID capture flow. Note that when this flag is set, submission to IDmission's servers will not be attempted; it should be used in tandem with onSubmit. Defaults to false.</td></tr>
718
795
  <tr><td><code>skipShowIdCardBack</code> (optional)</td><td>boolean or async function to indicate whether to instruct the user to show the back of their ID card during video capture. If an async function is supplied returning a boolean, it will be evaluated at the time of ID front video capture completion. Defaults to false.</td></tr>
796
+ <tr><td><code>idCaptureLoadingOverlayMode</code> (optional)</td><td>string indicating which ID capture loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
797
+ <tr><td><code>idCaptureGuideType</code> (optional)</td><td>string to indicate what type of guides to use during capture. Using fit is highly recommended in order to capture the best quality image. Valid values: fit, overlay. Defaults to fit.</td></tr>
798
+ <tr><td><code>idCapturePortraitGuidesOnMobile</code> (optional)</td><td>boolean to indicate whether guide images should be rotated on mobile. Defaults to false.</td></tr>
799
+ <tr><td><code>idCaptureRotateLoadingOverlayImageWhenPortrait</code> (optional)</td><td>boolean to indicate whether loading overlay image should be rotated on when mobile guides are rotated. Defaults to true.</td></tr>
800
+ <tr><td><code>faceLivenessLoadingOverlayMode</code> (optional)</td><td>string indicating which face liveness loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
801
+ <tr><td><code>sendBase64DocumentsInSwaggerProxy</code> (optional)</td><td>boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false.</td></tr>
802
+ <tr><td><code>theme</code> (optional)</td><td>name of an included theme or object containing theme properties.</td></tr>
719
803
  <tr><td><code>assets</code> (optional)</td><td>object containing any asset overrides, for available options consult the Assets table below.</td></tr>
720
804
  <tr><td><code>colors</code> (optional)</td><td>object containing any asset overrides, for available options consult the Colors table below.</td></tr>
721
805
  <tr><td><code>verbiage</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the Verbiage table below.</td></tr>
@@ -766,7 +850,7 @@ Render a fullscreen capture component that performs IDValidation and FaceValidat
766
850
  **Example**
767
851
 
768
852
  ```js
769
- IDmissionSDK.renderVideoIdValidation('#target-element', { submissionToken: 'my-idmission-token' });
853
+ IDmissionSDK.renderVideoIdValidation('#target-element', { sessionId: 'my-idmission-session-id' });
770
854
  ```
771
855
 
772
856
  ## Other Functionality
@@ -1,7 +1,7 @@
1
1
  import { ReactElement } from 'react';
2
2
  import { IdCaptureWizardProps } from './id_capture/IdCaptureWizard';
3
3
  import { FaceLivenessWizardProps } from './face_liveness/FaceLivenessWizard';
4
- import { SubmissionAction, SubmissionEnvironment, SubmissionResponse } from '../contexts/SubmissionContext';
4
+ import { SubmissionAction, SubmissionResponse } from '../contexts/SubmissionContext';
5
5
  import { AdditionalDocumentCaptureWizardProps } from './additional_document_capture/AdditionalDocumentCaptureWizard';
6
6
  import { SignatureCaptureProps } from './signature_capture/SignatureCapture';
7
7
  import { VideoSignatureWizardProps } from './video_signature_capture/VideoSignatureWizard';
@@ -22,10 +22,10 @@ export type CompositeWizardComponentProps = {
22
22
  debugMode?: boolean;
23
23
  };
24
24
  export type CompositeWizardProps = CompositeWizardComponentProps & {
25
- submissionToken: string;
25
+ sessionId: string;
26
26
  submissionAction?: SubmissionAction;
27
- submissionEnvironment?: SubmissionEnvironment;
28
27
  submissionUrl?: string;
28
+ authUrl?: string;
29
29
  onComplete?: (submissionResponse: SubmissionResponse) => void;
30
30
  };
31
31
  export declare const CompositeWizard: (props: CompositeWizardProps) => ReactElement;
@@ -1,10 +1,7 @@
1
1
  import React, { ReactElement, ReactNode } from 'react';
2
2
  import { DetectedObject } from '../../lib/models/DocumentDetection';
3
- import { Face, FaceKeypoint } from '../../lib/models/FaceDetection';
4
- export declare function DebugStatsPane({ children }: {
5
- children: ReactNode;
6
- }): React.JSX.Element;
7
- export declare const DebugStatsPaneDiv: import("styled-components").IStyledComponent<"web", {
3
+ import { Face, FaceKeypoint } from '../selfie_capture/HighPerformanceSelfieGuidanceModelsProvider';
4
+ export declare const DebugStatsPane: import("styled-components").IStyledComponent<"web", {
8
5
  ref?: React.LegacyRef<HTMLSpanElement> | undefined;
9
6
  key?: React.Key | null | undefined;
10
7
  defaultChecked?: boolean | undefined;
@@ -316,7 +313,7 @@ export type DetectedObjectDebugBoxProps = {
316
313
  flipX?: boolean;
317
314
  color?: string;
318
315
  };
319
- export declare function IdCaptureDetectedObjectDebugBox({ obj, flipX, color, scaling, }: DetectedObjectDebugBoxProps): ReactElement;
316
+ export declare function IdCaptureDetectedObjectDebugBox({ obj, flipX, color, }: DetectedObjectDebugBoxProps): ReactElement;
320
317
  export type SelfieCaptureFaceDebugBoxProps = {
321
318
  face: Face;
322
319
  scaling: DebugScalingDetails;