@truepic/vision-api-types 3.85.0 → 3.87.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +419 -7
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -329,7 +329,7 @@ export interface paths {
|
|
|
329
329
|
put?: never;
|
|
330
330
|
/**
|
|
331
331
|
* Complete an inspection
|
|
332
|
-
* @description
|
|
332
|
+
* @description Submit an inspection. The inspection must be Started or In Progress, otherwise a `400` error will be returned. Submitting moves the inspection to Processing while photo/AI processing runs in the background. If no processing is needed, the inspection will be pushed to Ready-for-Review after a short delay. A Ready-for-Review, Closed, or already-Processing inspection is a no-op that returns `200` without changing status.
|
|
333
333
|
*/
|
|
334
334
|
post: {
|
|
335
335
|
parameters: {
|
|
@@ -343,7 +343,7 @@ export interface paths {
|
|
|
343
343
|
};
|
|
344
344
|
requestBody?: never;
|
|
345
345
|
responses: {
|
|
346
|
-
/** @description The inspection request was
|
|
346
|
+
/** @description The inspection was successfully submitted or the request was a no-op because the inspection was already Processing, Ready for Review, or Closed. */
|
|
347
347
|
200: {
|
|
348
348
|
headers: {
|
|
349
349
|
[name: string]: unknown;
|
|
@@ -3327,6 +3327,8 @@ export interface components {
|
|
|
3327
3327
|
* Independent of `disposition`, which reports only whether the answer is wrong or missing and never warns for low confidence alone — so `disposition: 'pass'` with `is_low_confidence: true` means "the answer looks fine but the model was unsure", and the inspection's `ai_status` and alert still flag it for review. A field can be both.
|
|
3328
3328
|
*/
|
|
3329
3329
|
is_low_confidence: boolean;
|
|
3330
|
+
/** @description True when the model answered a `found` field by selecting its configured "not present" option (VISION-2692) — the row REPORTS ABSENCE, and clients must not render it as a positive finding. Mirrors `SerializedAIItemFieldResult.not_captured_option_selected` in `serializers/ai-inspection-items.ts`. */
|
|
3331
|
+
not_captured_option_selected: boolean;
|
|
3330
3332
|
reasoning: string | null;
|
|
3331
3333
|
sources: components["schemas"]["Source"][];
|
|
3332
3334
|
status: components["schemas"]["FieldStatus"];
|
|
@@ -4464,7 +4466,7 @@ export interface components {
|
|
|
4464
4466
|
/** @enum {string} */
|
|
4465
4467
|
DeviceFlagType: "rooted_device" | "spoofed_location" | "falsified_time" | "incorrect_location" | "picture_of_photo" | "bad_photo" | "deleted_photos" | "bad_answer" | "other";
|
|
4466
4468
|
/** @enum {string} */
|
|
4467
|
-
DeviceValidationStatus: "VALID" | "REQUEST_ID_MISMATCH" | "REQUEST_ID_MISSING" | "FETCH_FROM_FINGERPRINT_FAILED" | "TIMESTAMP_TOO_FAR_IN_PAST" | "TIMESTAMP_TOO_FAR_IN_FUTURE" | "TIMESTAMP_MISSING" | "TIMESTAMP_INVALID" | "NO_FINGERPRINT_DATA" | "INVALID_FINGERPRINT_DATA" | "DECRYPT_FINGERPRINT_FAIL" | "FINGERPRINT_CONFIDENCE_LOW";
|
|
4469
|
+
DeviceValidationStatus: "VALID" | "REQUEST_ID_MISMATCH" | "REQUEST_ID_MISSING" | "FETCH_FROM_FINGERPRINT_FAILED" | "TIMESTAMP_TOO_FAR_IN_PAST" | "TIMESTAMP_TOO_FAR_IN_FUTURE" | "TIMESTAMP_MISSING" | "TIMESTAMP_INVALID" | "NO_FINGERPRINT_DATA" | "FINGERPRINT_NOT_COLLECTED" | "FINGERPRINT_SKIPPED" | "FINGERPRINT_NO_API_KEY" | "FINGERPRINT_NO_INSPECTION_ID" | "FINGERPRINT_BLOCKED" | "FINGERPRINT_REQUEST_FAILED" | "INVALID_FINGERPRINT_DATA" | "DECRYPT_FINGERPRINT_FAIL" | "FINGERPRINT_CONFIDENCE_LOW";
|
|
4468
4470
|
DiscrepanciesOutputParams: {
|
|
4469
4471
|
issue_description: string;
|
|
4470
4472
|
related_item_ids: number[];
|
|
@@ -4707,6 +4709,12 @@ export interface components {
|
|
|
4707
4709
|
* @example 2020-05-01T21:44:40.000Z
|
|
4708
4710
|
*/
|
|
4709
4711
|
expires_at?: string | null;
|
|
4712
|
+
/**
|
|
4713
|
+
* Format: date-time
|
|
4714
|
+
* @description The date/time the inspection entered Processing (was submitted). Stamped on every entry into Processing (app-user submit, request-more resubmit, or request expiry), so it repopulates on resubmit. A non-null value is the durable "already submitted" signal consumed by vision-web and the mobile apps. Reset to `null` whenever a request-more moves the inspection back to In-Progress.
|
|
4715
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
4716
|
+
*/
|
|
4717
|
+
finished_at?: string | null;
|
|
4710
4718
|
/**
|
|
4711
4719
|
* @description The id of the group this inspection is for.
|
|
4712
4720
|
* @example 23
|
|
@@ -4782,6 +4790,30 @@ export interface components {
|
|
|
4782
4790
|
photo_uploaded_at?: string;
|
|
4783
4791
|
/** @description The platform of our app that the inspection will be / has been performed on. */
|
|
4784
4792
|
platform?: components["schemas"]["InspectionPlatform"];
|
|
4793
|
+
/**
|
|
4794
|
+
* Format: date-time
|
|
4795
|
+
* @description The date/time the inspection last entered Processing. Per-round token: the finalizer carries the round it was enqueued for and only transitions while this still matches, so a stale finalizer can't finalize a newer round. `null` for legacy inspections. VISION-2718.
|
|
4796
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
4797
|
+
*/
|
|
4798
|
+
processing_started_at?: string | null;
|
|
4799
|
+
/**
|
|
4800
|
+
* Format: date-time
|
|
4801
|
+
* @description The date/time the inspection moved to Ready for Review (processing completed, terminally failed, or timed out), written by the finalizer's transition. Reset to `null` whenever a request-more moves the inspection back to In-Progress and repopulated at the next finalization.
|
|
4802
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
4803
|
+
*/
|
|
4804
|
+
ready_at?: string | null;
|
|
4805
|
+
/**
|
|
4806
|
+
* Format: date-time
|
|
4807
|
+
* @description The date/time the Ready-for-Review assignee email was enqueued by the finalizer. Durable per-channel idempotency marker: `null` means not yet sent. Reset to `null` whenever the inspection (re-)enters Processing.
|
|
4808
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
4809
|
+
*/
|
|
4810
|
+
ready_for_review_email_sent_at?: string | null;
|
|
4811
|
+
/**
|
|
4812
|
+
* Format: date-time
|
|
4813
|
+
* @description The date/time the Ready-for-Review status webhook was enqueued by the finalizer. Durable per-channel idempotency marker: `null` means not yet sent. Reset to `null` whenever the inspection (re-)enters Processing.
|
|
4814
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
4815
|
+
*/
|
|
4816
|
+
ready_for_review_webhook_sent_at?: string | null;
|
|
4785
4817
|
/**
|
|
4786
4818
|
* Format: date-time
|
|
4787
4819
|
* @description The date/time (in UTC) the inspection is scheduled to be sent to the customer
|
|
@@ -6040,6 +6072,13 @@ export interface components {
|
|
|
6040
6072
|
* @example 2020-05-01T21:44:40.000Z
|
|
6041
6073
|
*/
|
|
6042
6074
|
updated_at: string;
|
|
6075
|
+
/** @description The use case assigned to this inspection type (populated for super admins only). */
|
|
6076
|
+
use_case?: components["schemas"]["UseCase"];
|
|
6077
|
+
/**
|
|
6078
|
+
* @description The use case assigned to this inspection type by a super admin. References `use_cases.id`.
|
|
6079
|
+
* @default null
|
|
6080
|
+
*/
|
|
6081
|
+
use_case_id: number | null;
|
|
6043
6082
|
/**
|
|
6044
6083
|
* @description When true, there is only one name for the user to fill out rather than a separate first name and last name field
|
|
6045
6084
|
* @example true
|
|
@@ -6730,6 +6769,12 @@ export interface components {
|
|
|
6730
6769
|
* @example 2020-05-01T21:44:40.000Z
|
|
6731
6770
|
*/
|
|
6732
6771
|
expires_at?: string | null;
|
|
6772
|
+
/**
|
|
6773
|
+
* Format: date-time
|
|
6774
|
+
* @description The date/time the inspection entered Processing (was submitted). Stamped on every entry into Processing (app-user submit, request-more resubmit, or request expiry), so it repopulates on resubmit. A non-null value is the durable "already submitted" signal consumed by vision-web and the mobile apps. Reset to `null` whenever a request-more moves the inspection back to In-Progress.
|
|
6775
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
6776
|
+
*/
|
|
6777
|
+
finished_at?: string | null;
|
|
6733
6778
|
/**
|
|
6734
6779
|
* @description The id of the group this inspection is for.
|
|
6735
6780
|
* @example 23
|
|
@@ -6805,6 +6850,30 @@ export interface components {
|
|
|
6805
6850
|
photo_uploaded_at?: string;
|
|
6806
6851
|
/** @description The platform of our app that the inspection will be / has been performed on. */
|
|
6807
6852
|
platform?: components["schemas"]["InspectionPlatform"];
|
|
6853
|
+
/**
|
|
6854
|
+
* Format: date-time
|
|
6855
|
+
* @description The date/time the inspection last entered Processing. Per-round token: the finalizer carries the round it was enqueued for and only transitions while this still matches, so a stale finalizer can't finalize a newer round. `null` for legacy inspections. VISION-2718.
|
|
6856
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
6857
|
+
*/
|
|
6858
|
+
processing_started_at?: string | null;
|
|
6859
|
+
/**
|
|
6860
|
+
* Format: date-time
|
|
6861
|
+
* @description The date/time the inspection moved to Ready for Review (processing completed, terminally failed, or timed out), written by the finalizer's transition. Reset to `null` whenever a request-more moves the inspection back to In-Progress and repopulated at the next finalization.
|
|
6862
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
6863
|
+
*/
|
|
6864
|
+
ready_at?: string | null;
|
|
6865
|
+
/**
|
|
6866
|
+
* Format: date-time
|
|
6867
|
+
* @description The date/time the Ready-for-Review assignee email was enqueued by the finalizer. Durable per-channel idempotency marker: `null` means not yet sent. Reset to `null` whenever the inspection (re-)enters Processing.
|
|
6868
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
6869
|
+
*/
|
|
6870
|
+
ready_for_review_email_sent_at?: string | null;
|
|
6871
|
+
/**
|
|
6872
|
+
* Format: date-time
|
|
6873
|
+
* @description The date/time the Ready-for-Review status webhook was enqueued by the finalizer. Durable per-channel idempotency marker: `null` means not yet sent. Reset to `null` whenever the inspection (re-)enters Processing.
|
|
6874
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
6875
|
+
*/
|
|
6876
|
+
ready_for_review_webhook_sent_at?: string | null;
|
|
6808
6877
|
/**
|
|
6809
6878
|
* Format: date-time
|
|
6810
6879
|
* @description The date/time (in UTC) the inspection is scheduled to be sent to the customer
|
|
@@ -7019,7 +7088,8 @@ export interface components {
|
|
|
7019
7088
|
*/
|
|
7020
7089
|
test_pop: boolean;
|
|
7021
7090
|
/**
|
|
7022
|
-
* @
|
|
7091
|
+
* @deprecated
|
|
7092
|
+
* @description Whether or not to include the ris test in this alert. Reverse Image Search is deprecated and no longer runs.
|
|
7023
7093
|
* @example true
|
|
7024
7094
|
*/
|
|
7025
7095
|
test_ris: boolean;
|
|
@@ -7306,7 +7376,7 @@ export interface components {
|
|
|
7306
7376
|
* @description The possible statuses for an inspection.
|
|
7307
7377
|
* @enum {number}
|
|
7308
7378
|
*/
|
|
7309
|
-
InspectionStatusId: 1 | 2 | 3 | 4 | 5 | 6 | 7;
|
|
7379
|
+
InspectionStatusId: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8;
|
|
7310
7380
|
InspectionTruepic: {
|
|
7311
7381
|
/**
|
|
7312
7382
|
* @description The accuracy of the GPS coordinates in meters.
|
|
@@ -7605,7 +7675,8 @@ export interface components {
|
|
|
7605
7675
|
*/
|
|
7606
7676
|
processing_completed_at?: string;
|
|
7607
7677
|
/**
|
|
7608
|
-
* @
|
|
7678
|
+
* @deprecated
|
|
7679
|
+
* @description The status of a reverse-image-search test on this Truepic. Reverse Image Search is deprecated and no longer runs. New captures will have ris_status 'N' (not applicable).
|
|
7609
7680
|
* @example P
|
|
7610
7681
|
*/
|
|
7611
7682
|
ris_status: components["schemas"]["TestResult"];
|
|
@@ -7771,6 +7842,11 @@ export interface components {
|
|
|
7771
7842
|
* @example 2020-05-01T21:44:40.000Z
|
|
7772
7843
|
*/
|
|
7773
7844
|
updated_at: string;
|
|
7845
|
+
/**
|
|
7846
|
+
* @description The use case assigned to this inspection type by a super admin. References `use_cases.id`.
|
|
7847
|
+
* @default null
|
|
7848
|
+
*/
|
|
7849
|
+
use_case_id: number | null;
|
|
7774
7850
|
/**
|
|
7775
7851
|
* @description When true, there is only one name for the user to fill out rather than a separate first name and last name field
|
|
7776
7852
|
* @example true
|
|
@@ -8525,6 +8601,68 @@ export interface components {
|
|
|
8525
8601
|
*/
|
|
8526
8602
|
updated_at: string;
|
|
8527
8603
|
};
|
|
8604
|
+
/**
|
|
8605
|
+
* @description Evidence about the device taking an action, collected by the inspection app and recorded against the resulting activity log entry.
|
|
8606
|
+
*
|
|
8607
|
+
* Sent as the `metadata` property of the request body, with `fp.request_id` and `fp.sealed_result` always sent together. Endpoints without a request body instead accept the Fingerprint request ID on its own, via the `truepic-fp-request-id` header — one or the other, never both.
|
|
8608
|
+
*/
|
|
8609
|
+
Metadata: {
|
|
8610
|
+
/** @description The Fingerprint identification result for the device. */
|
|
8611
|
+
fp?: {
|
|
8612
|
+
/**
|
|
8613
|
+
* @description The ID of the Fingerprint request the sealed result was issued for.
|
|
8614
|
+
* @example 1712345678901.AbCdEf
|
|
8615
|
+
*/
|
|
8616
|
+
request_id: string;
|
|
8617
|
+
/** @description The sealed (encrypted) Fingerprint identification result, as issued by the Fingerprint client. Opaque to the caller. */
|
|
8618
|
+
sealed_result: string;
|
|
8619
|
+
};
|
|
8620
|
+
/**
|
|
8621
|
+
* @description The reason the client couldn't collect Fingerprint data, sent instead of `fp`. Known values are `skipped`, `no_api_key`, `no_inspection_id`, `blocked`, and `request_failed`; anything else is recorded as if no reason was sent. Endpoints without a request body instead accept it via the `truepic-fp-reason` header.
|
|
8622
|
+
* @example request_failed
|
|
8623
|
+
*/
|
|
8624
|
+
fp_reason?: string;
|
|
8625
|
+
/** @description The location the device reported when the action was taken. */
|
|
8626
|
+
gps?: {
|
|
8627
|
+
/**
|
|
8628
|
+
* @description The radius of uncertainty around the location, in meters.
|
|
8629
|
+
* @example 5
|
|
8630
|
+
*/
|
|
8631
|
+
accuracy: number;
|
|
8632
|
+
/**
|
|
8633
|
+
* @description The altitude of the location, in meters above sea level.
|
|
8634
|
+
* @example 17
|
|
8635
|
+
*/
|
|
8636
|
+
altitude: number;
|
|
8637
|
+
/**
|
|
8638
|
+
* @description The latitude of the location, in degrees.
|
|
8639
|
+
* @example 43.0502488
|
|
8640
|
+
*/
|
|
8641
|
+
latitude: number;
|
|
8642
|
+
/**
|
|
8643
|
+
* @description The longitude of the location, in degrees.
|
|
8644
|
+
* @example -77.5873941
|
|
8645
|
+
*/
|
|
8646
|
+
longitude: number;
|
|
8647
|
+
/**
|
|
8648
|
+
* @description The reason the location is considered spoofed. `0` means the location is not spoofed.
|
|
8649
|
+
* @example 0
|
|
8650
|
+
*/
|
|
8651
|
+
reason: number;
|
|
8652
|
+
/**
|
|
8653
|
+
* @description Where the location came from. `system` is the operating system and is most typical, `accessory` is a connected device such as Apple CarPlay, and `software` means it was mocked or simulated.
|
|
8654
|
+
* @example system
|
|
8655
|
+
* @enum {string|null}
|
|
8656
|
+
*/
|
|
8657
|
+
source?: "accessory" | "software" | "system" | null;
|
|
8658
|
+
/**
|
|
8659
|
+
* Format: datetime
|
|
8660
|
+
* @description When the device reported the location.
|
|
8661
|
+
* @example 2025-04-14T12:05:51.007Z
|
|
8662
|
+
*/
|
|
8663
|
+
timestamp: string;
|
|
8664
|
+
};
|
|
8665
|
+
};
|
|
8528
8666
|
/** @enum {string} */
|
|
8529
8667
|
ObjectDetectionAutomotiveObject: "tire" | "vin_plate" | "dashboard" | "license_plate" | "odometer" | "document";
|
|
8530
8668
|
/**
|
|
@@ -8661,6 +8799,11 @@ export interface components {
|
|
|
8661
8799
|
* @example 1413
|
|
8662
8800
|
*/
|
|
8663
8801
|
created_by_user_id: number;
|
|
8802
|
+
/**
|
|
8803
|
+
* @description The default use case assigned to this organization by a super admin.
|
|
8804
|
+
* @default null
|
|
8805
|
+
*/
|
|
8806
|
+
default_use_case_id: number | null;
|
|
8664
8807
|
/**
|
|
8665
8808
|
* @description The id of the resource.
|
|
8666
8809
|
* @example 1843
|
|
@@ -8746,7 +8889,7 @@ export interface components {
|
|
|
8746
8889
|
updated_by_user_id: number | null;
|
|
8747
8890
|
};
|
|
8748
8891
|
/** @enum {string} */
|
|
8749
|
-
OrganizationEnabledFeatureType: "ai_analysis" | "ask_for_app_review" | "inspection_device_insights" | "device_details" | "risk_network" | "external_risk_network" | "content_analysis_odometer" | "content_analysis_text_matching" | "content_analysis_vin" | "content_analysis_dot_tin" | "object_detection_auto" | "object_detection_jewelry" | "object_detection_real_estate" | "landing_pages" | "dashboard_user_feedback_forms" | "member_homepage" | "reuse_detection" | "restrict_members_to_inspection_details" | "ai_analysis_configuration" | "guided_capture" | "verisk_sso";
|
|
8892
|
+
OrganizationEnabledFeatureType: "ai_analysis" | "ask_for_app_review" | "inspection_device_insights" | "device_details" | "risk_network" | "external_risk_network" | "content_analysis_odometer" | "content_analysis_text_matching" | "content_analysis_vin" | "content_analysis_dot_tin" | "object_detection_auto" | "object_detection_jewelry" | "object_detection_real_estate" | "landing_pages" | "dashboard_user_feedback_forms" | "member_homepage" | "reuse_detection" | "restrict_members_to_inspection_details" | "ai_analysis_configuration" | "guided_capture" | "verisk_sso" | "enable_processing_status_for_inspections";
|
|
8750
8893
|
/** @description A possible outcome for an inspection */
|
|
8751
8894
|
Outcome: {
|
|
8752
8895
|
/**
|
|
@@ -9473,6 +9616,13 @@ export interface components {
|
|
|
9473
9616
|
* @example 2020-05-01T21:44:40.000Z
|
|
9474
9617
|
*/
|
|
9475
9618
|
updated_at: string;
|
|
9619
|
+
/** @description The use case assigned to this inspection type (populated for super admins only). */
|
|
9620
|
+
use_case?: components["schemas"]["UseCase"];
|
|
9621
|
+
/**
|
|
9622
|
+
* @description The use case assigned to this inspection type by a super admin. References `use_cases.id`.
|
|
9623
|
+
* @default null
|
|
9624
|
+
*/
|
|
9625
|
+
use_case_id: number | null;
|
|
9476
9626
|
/**
|
|
9477
9627
|
* @description When true, there is only one name for the user to fill out rather than a separate first name and last name field
|
|
9478
9628
|
* @example true
|
|
@@ -10059,6 +10209,12 @@ export interface components {
|
|
|
10059
10209
|
* @example 2020-05-01T21:44:40.000Z
|
|
10060
10210
|
*/
|
|
10061
10211
|
expires_at?: string | null;
|
|
10212
|
+
/**
|
|
10213
|
+
* Format: date-time
|
|
10214
|
+
* @description The date/time the inspection entered Processing (was submitted). Stamped on every entry into Processing (app-user submit, request-more resubmit, or request expiry), so it repopulates on resubmit. A non-null value is the durable "already submitted" signal consumed by vision-web and the mobile apps. Reset to `null` whenever a request-more moves the inspection back to In-Progress.
|
|
10215
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
10216
|
+
*/
|
|
10217
|
+
finished_at?: string | null;
|
|
10062
10218
|
group?: components["schemas"]["Group"];
|
|
10063
10219
|
/**
|
|
10064
10220
|
* @description The id of the group this inspection is for.
|
|
@@ -10292,6 +10448,13 @@ export interface components {
|
|
|
10292
10448
|
* @example 2020-05-01T21:44:40.000Z
|
|
10293
10449
|
*/
|
|
10294
10450
|
updated_at: string;
|
|
10451
|
+
/** @description The use case assigned to this inspection type (populated for super admins only). */
|
|
10452
|
+
use_case?: components["schemas"]["UseCase"];
|
|
10453
|
+
/**
|
|
10454
|
+
* @description The use case assigned to this inspection type by a super admin. References `use_cases.id`.
|
|
10455
|
+
* @default null
|
|
10456
|
+
*/
|
|
10457
|
+
use_case_id: number | null;
|
|
10295
10458
|
/**
|
|
10296
10459
|
* @description When true, there is only one name for the user to fill out rather than a separate first name and last name field
|
|
10297
10460
|
* @example true
|
|
@@ -10377,6 +10540,30 @@ export interface components {
|
|
|
10377
10540
|
photos: components["schemas"]["InspectionTruepic"][];
|
|
10378
10541
|
/** @description The platform of our app that the inspection will be / has been performed on. */
|
|
10379
10542
|
platform?: components["schemas"]["InspectionPlatform"];
|
|
10543
|
+
/**
|
|
10544
|
+
* Format: date-time
|
|
10545
|
+
* @description The date/time the inspection last entered Processing. Per-round token: the finalizer carries the round it was enqueued for and only transitions while this still matches, so a stale finalizer can't finalize a newer round. `null` for legacy inspections. VISION-2718.
|
|
10546
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
10547
|
+
*/
|
|
10548
|
+
processing_started_at?: string | null;
|
|
10549
|
+
/**
|
|
10550
|
+
* Format: date-time
|
|
10551
|
+
* @description The date/time the inspection moved to Ready for Review (processing completed, terminally failed, or timed out), written by the finalizer's transition. Reset to `null` whenever a request-more moves the inspection back to In-Progress and repopulated at the next finalization.
|
|
10552
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
10553
|
+
*/
|
|
10554
|
+
ready_at?: string | null;
|
|
10555
|
+
/**
|
|
10556
|
+
* Format: date-time
|
|
10557
|
+
* @description The date/time the Ready-for-Review assignee email was enqueued by the finalizer. Durable per-channel idempotency marker: `null` means not yet sent. Reset to `null` whenever the inspection (re-)enters Processing.
|
|
10558
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
10559
|
+
*/
|
|
10560
|
+
ready_for_review_email_sent_at?: string | null;
|
|
10561
|
+
/**
|
|
10562
|
+
* Format: date-time
|
|
10563
|
+
* @description The date/time the Ready-for-Review status webhook was enqueued by the finalizer. Durable per-channel idempotency marker: `null` means not yet sent. Reset to `null` whenever the inspection (re-)enters Processing.
|
|
10564
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
10565
|
+
*/
|
|
10566
|
+
ready_for_review_webhook_sent_at?: string | null;
|
|
10380
10567
|
/**
|
|
10381
10568
|
* Format: date-time
|
|
10382
10569
|
* @description The date/time (in UTC) the inspection is scheduled to be sent to the customer
|
|
@@ -11197,6 +11384,17 @@ export interface components {
|
|
|
11197
11384
|
* @example false
|
|
11198
11385
|
*/
|
|
11199
11386
|
mutual_tls: boolean;
|
|
11387
|
+
/**
|
|
11388
|
+
* @description The OAuth `client_secret` Vision presents when requesting an access token from `oauth_config.token_url`. Write-only: it is stored encrypted and is never returned by this API. To set or rotate it, provide the new secret. To remove it, set this to null. To leave it unchanged, omit this field.
|
|
11389
|
+
* @example some-oauth-client-secret
|
|
11390
|
+
*/
|
|
11391
|
+
oauth_client_secret?: string | null;
|
|
11392
|
+
/**
|
|
11393
|
+
* @description OAuth 2.0 client credentials configuration. When set, Vision obtains an access token from the configured token endpoint and presents it on the webhook request. Null means the webhook is delivered without OAuth.
|
|
11394
|
+
*
|
|
11395
|
+
* This is independent of the `truepic-signature` payload signature and of mutual TLS — any combination of the three can be used together.
|
|
11396
|
+
*/
|
|
11397
|
+
oauth_config?: components["schemas"]["TeamWebhookOAuthConfig"] | unknown;
|
|
11200
11398
|
/**
|
|
11201
11399
|
* @description The id of the organization.
|
|
11202
11400
|
* @example 1
|
|
@@ -11246,6 +11444,11 @@ export interface components {
|
|
|
11246
11444
|
* @example 2023-06-01 17:12:20.097233+00
|
|
11247
11445
|
*/
|
|
11248
11446
|
disabled_at?: string | null;
|
|
11447
|
+
/**
|
|
11448
|
+
* @description Whether or not the webhook has an OAuth `client_secret` stored.
|
|
11449
|
+
* @example true
|
|
11450
|
+
*/
|
|
11451
|
+
has_oauth_client_secret?: boolean;
|
|
11249
11452
|
/**
|
|
11250
11453
|
* @description Whether or not the webhook has a secret.
|
|
11251
11454
|
* @example true
|
|
@@ -11267,6 +11470,22 @@ export interface components {
|
|
|
11267
11470
|
* @example false
|
|
11268
11471
|
*/
|
|
11269
11472
|
mutual_tls: boolean;
|
|
11473
|
+
/**
|
|
11474
|
+
* @description The OAuth `client_secret` Vision presents when requesting an access token from `oauth_config.token_url`. Write-only: it is stored encrypted and is never returned by this API. To set or rotate it, provide the new secret. To remove it, set this to null. To leave it unchanged, omit this field.
|
|
11475
|
+
* @example some-oauth-client-secret
|
|
11476
|
+
*/
|
|
11477
|
+
oauth_client_secret?: string | null;
|
|
11478
|
+
/**
|
|
11479
|
+
* @description The encrypted OAuth `client_secret` used when requesting an access token.
|
|
11480
|
+
* @example WMHadsfgYQ+348BEPcoyucKSaerwgq34gq34grstXp62P0Svn5VyEAGCKXM+CKcaw==
|
|
11481
|
+
*/
|
|
11482
|
+
oauth_client_secret_encrypted?: string | null;
|
|
11483
|
+
/**
|
|
11484
|
+
* @description OAuth 2.0 client credentials configuration. When set, Vision obtains an access token from the configured token endpoint and presents it on the webhook request. Null means the webhook is delivered without OAuth.
|
|
11485
|
+
*
|
|
11486
|
+
* This is independent of the `truepic-signature` payload signature and of mutual TLS — any combination of the three can be used together.
|
|
11487
|
+
*/
|
|
11488
|
+
oauth_config?: components["schemas"]["TeamWebhookOAuthConfig"] | unknown;
|
|
11270
11489
|
/**
|
|
11271
11490
|
* @description The id of the organization.
|
|
11272
11491
|
* @example 1
|
|
@@ -11306,6 +11525,118 @@ export interface components {
|
|
|
11306
11525
|
*/
|
|
11307
11526
|
vision_api_version: components["schemas"]["VisionAPIVersion"];
|
|
11308
11527
|
};
|
|
11528
|
+
/**
|
|
11529
|
+
* @description OAuth 2.0 client credentials configuration for an outbound webhook.
|
|
11530
|
+
*
|
|
11531
|
+
* When present, Vision exchanges the configured credentials for a short-lived access token before delivering a webhook, and presents that token on the webhook request. The webhook payload itself is unaffected.
|
|
11532
|
+
*
|
|
11533
|
+
* The `client_secret` is not part of this object — it is supplied through the separate write-only `oauth_client_secret` field on the webhook, stored encrypted, and never returned.
|
|
11534
|
+
*
|
|
11535
|
+
* Every field other than `token_url` and `client_id` is optional; the defaults describe a standard RFC 6749 §4.4 exchange against an authorization server that returns a standard token response.
|
|
11536
|
+
*/
|
|
11537
|
+
TeamWebhookOAuthConfig: {
|
|
11538
|
+
/**
|
|
11539
|
+
* @description The field in the token response that holds the access token, for authorization servers that use a non-standard name.
|
|
11540
|
+
* @default access_token
|
|
11541
|
+
* @example access_token
|
|
11542
|
+
*/
|
|
11543
|
+
access_token_field: string;
|
|
11544
|
+
/**
|
|
11545
|
+
* @description Any additional parameters the token endpoint requires beyond the standard set. Sent alongside `grant_type` in the request body.
|
|
11546
|
+
*
|
|
11547
|
+
* `grant_type`, `client_id`, `client_secret`, `scope`, `audience`, and `resource` are rejected here — they are built from their own configuration fields, and a duplicate would silently replace the configured value.
|
|
11548
|
+
* @example {
|
|
11549
|
+
* "tenant": "cotality-prod"
|
|
11550
|
+
* }
|
|
11551
|
+
*/
|
|
11552
|
+
additional_token_parameters?: {
|
|
11553
|
+
[key: string]: string;
|
|
11554
|
+
} | unknown;
|
|
11555
|
+
/**
|
|
11556
|
+
* @description The `audience` parameter, if the authorization server requires one.
|
|
11557
|
+
* @example https://your-gateway.example.com/
|
|
11558
|
+
*/
|
|
11559
|
+
audience?: string | null;
|
|
11560
|
+
/**
|
|
11561
|
+
* @description The header the access token is presented in on the webhook request, for gateways that expect something other than `Authorization`.
|
|
11562
|
+
* @default Authorization
|
|
11563
|
+
* @example Authorization
|
|
11564
|
+
*/
|
|
11565
|
+
authorization_header_name: string;
|
|
11566
|
+
/**
|
|
11567
|
+
* @description The prefix placed before the token in the authorization header. A single space separates it from the token. Set to an empty string to send the bare token with no prefix.
|
|
11568
|
+
* @default Bearer
|
|
11569
|
+
* @example Bearer
|
|
11570
|
+
*/
|
|
11571
|
+
authorization_header_prefix: string;
|
|
11572
|
+
/**
|
|
11573
|
+
* @description Whether Vision caches the access token and reuses it across deliveries until shortly before it expires. Set to false to request a fresh token for every delivery — this makes token endpoint load proportional to event volume rather than to token lifetime.
|
|
11574
|
+
* @default true
|
|
11575
|
+
* @example true
|
|
11576
|
+
*/
|
|
11577
|
+
cache_tokens: boolean;
|
|
11578
|
+
/**
|
|
11579
|
+
* @description How the client credentials are presented on the token request: in the request body (`client_secret_post`) or as an HTTP Basic authorization header (`client_secret_basic`).
|
|
11580
|
+
* @default client_secret_post
|
|
11581
|
+
* @example client_secret_post
|
|
11582
|
+
*/
|
|
11583
|
+
client_auth_method: components["schemas"]["WebhookOAuthClientAuthMethod"];
|
|
11584
|
+
/**
|
|
11585
|
+
* @description The OAuth client identifier issued to Truepic.
|
|
11586
|
+
* @example truepic-vision-webhooks
|
|
11587
|
+
*/
|
|
11588
|
+
client_id: string;
|
|
11589
|
+
/**
|
|
11590
|
+
* @description The lifetime Vision assumes when the token response carries no expiry at all. Required in that case — without an expiry and without this, Vision cannot know when to refresh.
|
|
11591
|
+
* @example 3600
|
|
11592
|
+
*/
|
|
11593
|
+
default_token_lifetime_seconds?: number | null;
|
|
11594
|
+
/**
|
|
11595
|
+
* @description The field in the token response that holds the expiry as an absolute timestamp (epoch seconds, epoch milliseconds, or an ISO 8601 string) rather than a duration. Takes precedence over `expires_in_field` when set.
|
|
11596
|
+
* @example expires_at
|
|
11597
|
+
*/
|
|
11598
|
+
expires_at_field?: string | null;
|
|
11599
|
+
/**
|
|
11600
|
+
* @description The field in the token response that holds the token lifetime as a duration. Read as either a number or a numeric string.
|
|
11601
|
+
* @default expires_in
|
|
11602
|
+
* @example expires_in
|
|
11603
|
+
*/
|
|
11604
|
+
expires_in_field: string;
|
|
11605
|
+
/**
|
|
11606
|
+
* @description The unit of the duration in `expires_in_field`.
|
|
11607
|
+
* @default seconds
|
|
11608
|
+
* @example seconds
|
|
11609
|
+
*/
|
|
11610
|
+
expires_in_unit: components["schemas"]["WebhookOAuthExpiresInUnit"];
|
|
11611
|
+
/**
|
|
11612
|
+
* @description Whether `grant_type` is sent in the request body (per RFC 6749) or as a query parameter on the token endpoint URL.
|
|
11613
|
+
* @default body
|
|
11614
|
+
* @example body
|
|
11615
|
+
*/
|
|
11616
|
+
grant_type_placement: components["schemas"]["WebhookOAuthGrantTypePlacement"];
|
|
11617
|
+
/**
|
|
11618
|
+
* @description The `resource` parameter, if the authorization server requires one.
|
|
11619
|
+
* @example https://your-gateway.example.com/webhooks
|
|
11620
|
+
*/
|
|
11621
|
+
resource?: string | null;
|
|
11622
|
+
/**
|
|
11623
|
+
* @description Space-delimited scopes, if the authorization server requires them.
|
|
11624
|
+
* @example webhooks:write
|
|
11625
|
+
*/
|
|
11626
|
+
scope?: string | null;
|
|
11627
|
+
/**
|
|
11628
|
+
* @description How long Vision waits for the token endpoint to respond, in milliseconds.
|
|
11629
|
+
* @default 10000
|
|
11630
|
+
* @example 10000
|
|
11631
|
+
*/
|
|
11632
|
+
token_request_timeout_ms: number;
|
|
11633
|
+
/**
|
|
11634
|
+
* Format: url
|
|
11635
|
+
* @description The token endpoint Vision exchanges the client credentials at. Must be HTTPS outside of local development.
|
|
11636
|
+
* @example https://your-gateway.example.com/oauth/token
|
|
11637
|
+
*/
|
|
11638
|
+
token_url: string;
|
|
11639
|
+
};
|
|
11309
11640
|
TeamWebhookPayload: {
|
|
11310
11641
|
/**
|
|
11311
11642
|
* @description An object containing any custom headers that should be sent in the webhook POST request. If you want a unique request id header to be sent, create a header with a value of "{{ UUID }}". When the webhook is sent, this will be replaced with a unique UUID for each request.
|
|
@@ -11326,6 +11657,17 @@ export interface components {
|
|
|
11326
11657
|
* @example false
|
|
11327
11658
|
*/
|
|
11328
11659
|
mutual_tls: boolean;
|
|
11660
|
+
/**
|
|
11661
|
+
* @description The OAuth `client_secret` Vision presents when requesting an access token from `oauth_config.token_url`. Write-only: it is stored encrypted and is never returned by this API. To set or rotate it, provide the new secret. To remove it, set this to null. To leave it unchanged, omit this field.
|
|
11662
|
+
* @example some-oauth-client-secret
|
|
11663
|
+
*/
|
|
11664
|
+
oauth_client_secret?: string | null;
|
|
11665
|
+
/**
|
|
11666
|
+
* @description OAuth 2.0 client credentials configuration. When set, Vision obtains an access token from the configured token endpoint and presents it on the webhook request. Null means the webhook is delivered without OAuth.
|
|
11667
|
+
*
|
|
11668
|
+
* This is independent of the `truepic-signature` payload signature and of mutual TLS — any combination of the three can be used together.
|
|
11669
|
+
*/
|
|
11670
|
+
oauth_config?: components["schemas"]["TeamWebhookOAuthConfig"] | unknown;
|
|
11329
11671
|
/**
|
|
11330
11672
|
* @description The secret used for authenticating the webhooks. When we send webhooks to your endpoint, we will add a truepic-signature header to those requests that we generate using this secret. When your endpoint receives a webhook POST request, you can then verify that the request was signed with this secret to ensure that the request is from us. If you want to remove the secret, set this to null. If you want to set a new secret, provide the new secret string. If you don't want to change the secret, omit this field.
|
|
11331
11673
|
* @example some-secret-string
|
|
@@ -11370,6 +11712,11 @@ export interface components {
|
|
|
11370
11712
|
* @example 2023-06-01 17:12:20.097233+00
|
|
11371
11713
|
*/
|
|
11372
11714
|
disabled_at?: string | null;
|
|
11715
|
+
/**
|
|
11716
|
+
* @description Whether or not the webhook has an OAuth `client_secret` stored.
|
|
11717
|
+
* @example true
|
|
11718
|
+
*/
|
|
11719
|
+
has_oauth_client_secret?: boolean;
|
|
11373
11720
|
/**
|
|
11374
11721
|
* @description Whether or not the webhook has a secret.
|
|
11375
11722
|
* @example true
|
|
@@ -11391,6 +11738,12 @@ export interface components {
|
|
|
11391
11738
|
* @example false
|
|
11392
11739
|
*/
|
|
11393
11740
|
mutual_tls: boolean;
|
|
11741
|
+
/**
|
|
11742
|
+
* @description OAuth 2.0 client credentials configuration. When set, Vision obtains an access token from the configured token endpoint and presents it on the webhook request. Null means the webhook is delivered without OAuth.
|
|
11743
|
+
*
|
|
11744
|
+
* This is independent of the `truepic-signature` payload signature and of mutual TLS — any combination of the three can be used together.
|
|
11745
|
+
*/
|
|
11746
|
+
oauth_config?: components["schemas"]["TeamWebhookOAuthConfig"] | unknown;
|
|
11394
11747
|
/**
|
|
11395
11748
|
* @description The id of the organization.
|
|
11396
11749
|
* @example 1
|
|
@@ -12024,6 +12377,36 @@ export interface components {
|
|
|
12024
12377
|
*/
|
|
12025
12378
|
team_id?: number;
|
|
12026
12379
|
};
|
|
12380
|
+
/** @description A seeded use case belonging to an industry. */
|
|
12381
|
+
UseCase: {
|
|
12382
|
+
/**
|
|
12383
|
+
* Format: date-time
|
|
12384
|
+
* @description The date/time the resource was created
|
|
12385
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
12386
|
+
*/
|
|
12387
|
+
created_at: string;
|
|
12388
|
+
/**
|
|
12389
|
+
* @description The id of the resource.
|
|
12390
|
+
* @example 1
|
|
12391
|
+
*/
|
|
12392
|
+
id: number;
|
|
12393
|
+
/**
|
|
12394
|
+
* @description The id of the industry this use case belongs to.
|
|
12395
|
+
* @example 3
|
|
12396
|
+
*/
|
|
12397
|
+
industry_id: number;
|
|
12398
|
+
/**
|
|
12399
|
+
* @description The name of the use case.
|
|
12400
|
+
* @example Claims Processing
|
|
12401
|
+
*/
|
|
12402
|
+
name: string;
|
|
12403
|
+
/**
|
|
12404
|
+
* Format: date-time
|
|
12405
|
+
* @description The date/time the resource was last updated
|
|
12406
|
+
* @example 2020-05-01T21:44:40.000Z
|
|
12407
|
+
*/
|
|
12408
|
+
updated_at: string;
|
|
12409
|
+
};
|
|
12027
12410
|
/** @description A user of Vision. This could be a Vision website user or mobile app user. */
|
|
12028
12411
|
User: {
|
|
12029
12412
|
/**
|
|
@@ -12124,6 +12507,23 @@ export interface components {
|
|
|
12124
12507
|
/** @description URI of the page or document the model relied on. One URI per source — multiple supporting URIs become multiple `web_lookup` entries. */
|
|
12125
12508
|
uri: string;
|
|
12126
12509
|
};
|
|
12510
|
+
/**
|
|
12511
|
+
* @description How Vision presents the client credentials on the token request.
|
|
12512
|
+
*
|
|
12513
|
+
* Named after the RFC 6749 §2.3.1 client authentication methods so the value maps directly onto what an authorization server's documentation calls it.
|
|
12514
|
+
* @enum {string}
|
|
12515
|
+
*/
|
|
12516
|
+
WebhookOAuthClientAuthMethod: "client_secret_post" | "client_secret_basic";
|
|
12517
|
+
/**
|
|
12518
|
+
* @description The unit the authorization server uses for the token expiry field.
|
|
12519
|
+
* @enum {string}
|
|
12520
|
+
*/
|
|
12521
|
+
WebhookOAuthExpiresInUnit: "seconds" | "milliseconds";
|
|
12522
|
+
/**
|
|
12523
|
+
* @description Where Vision places `grant_type` on the token request.
|
|
12524
|
+
* @enum {string}
|
|
12525
|
+
*/
|
|
12526
|
+
WebhookOAuthGrantTypePlacement: "body" | "query";
|
|
12127
12527
|
WebsiteFormBearerSerialized: {
|
|
12128
12528
|
inspection_types: {
|
|
12129
12529
|
/** @description An array of custom fields that are used by this inspection type */
|
|
@@ -12427,6 +12827,18 @@ export interface components {
|
|
|
12427
12827
|
userId: number;
|
|
12428
12828
|
/** @description The unique alphanumeric identifier of the photo/video. */
|
|
12429
12829
|
verificationCode: string;
|
|
12830
|
+
/**
|
|
12831
|
+
* @description The ID of the Fingerprint request identifying the device taking the action.
|
|
12832
|
+
*
|
|
12833
|
+
* Used by endpoints that have no request body to carry a `metadata` property. Recorded against the resulting activity log entry.
|
|
12834
|
+
*/
|
|
12835
|
+
metadataFingerprintRequestId: string;
|
|
12836
|
+
/**
|
|
12837
|
+
* @description The reason the client could not collect Fingerprint data, sent instead of `truepic-fp-request-id`.
|
|
12838
|
+
*
|
|
12839
|
+
* Used by endpoints that have no request body to carry a `metadata` property. Recorded against the resulting activity log entry.
|
|
12840
|
+
*/
|
|
12841
|
+
metadataFingerprintReason: string;
|
|
12430
12842
|
/**
|
|
12431
12843
|
* @description Pagination to limit the number of results returned.
|
|
12432
12844
|
*
|