didit-sdk 1.0.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.
- checksums.yaml +7 -0
- data/CHANGELOG.md +25 -0
- data/LICENSE +21 -0
- data/README.md +277 -0
- data/lib/didit/authentication/base64_url.rb +34 -0
- data/lib/didit/authentication/cache.rb +201 -0
- data/lib/didit/authentication/http.rb +150 -0
- data/lib/didit/authentication/issuer.rb +115 -0
- data/lib/didit/authentication/jws.rb +231 -0
- data/lib/didit/authentication/key_set.rb +89 -0
- data/lib/didit/authentication/pkce.rb +64 -0
- data/lib/didit/authentication/types.rb +175 -0
- data/lib/didit/authentication.rb +546 -0
- data/lib/didit/client.rb +211 -0
- data/lib/didit/errors.rb +153 -0
- data/lib/didit/file_part.rb +85 -0
- data/lib/didit/internal/config.rb +94 -0
- data/lib/didit/internal/errors.rb +83 -0
- data/lib/didit/internal/log.rb +41 -0
- data/lib/didit/internal/multipart.rb +60 -0
- data/lib/didit/internal/request.rb +322 -0
- data/lib/didit/internal/transport.rb +198 -0
- data/lib/didit/internal/util.rb +76 -0
- data/lib/didit/internal.rb +15 -0
- data/lib/didit/model.rb +199 -0
- data/lib/didit/page.rb +130 -0
- data/lib/didit/raw_response.rb +57 -0
- data/lib/didit/resource.rb +15 -0
- data/lib/didit/resources/account.rb +309 -0
- data/lib/didit/resources/address_validation.rb +73 -0
- data/lib/didit/resources/age_estimation.rb +110 -0
- data/lib/didit/resources/aml.rb +166 -0
- data/lib/didit/resources/aml_monitoring.rb +30 -0
- data/lib/didit/resources/analytics.rb +87 -0
- data/lib/didit/resources/bank.rb +65 -0
- data/lib/didit/resources/billing.rb +61 -0
- data/lib/didit/resources/biometric_templates.rb +234 -0
- data/lib/didit/resources/blocklist.rb +130 -0
- data/lib/didit/resources/business_sessions.rb +29 -0
- data/lib/didit/resources/businesses.rb +471 -0
- data/lib/didit/resources/cases.rb +2116 -0
- data/lib/didit/resources/customization.rb +153 -0
- data/lib/didit/resources/database_validation.rb +327 -0
- data/lib/didit/resources/document_ai.rb +145 -0
- data/lib/didit/resources/email.rb +254 -0
- data/lib/didit/resources/face_match.rb +103 -0
- data/lib/didit/resources/face_search.rb +103 -0
- data/lib/didit/resources/fraud_checks.rb +130 -0
- data/lib/didit/resources/id_verification.rb +163 -0
- data/lib/didit/resources/id_wallets.rb +1468 -0
- data/lib/didit/resources/investigator.rb +419 -0
- data/lib/didit/resources/ip.rb +68 -0
- data/lib/didit/resources/kyb.rb +256 -0
- data/lib/didit/resources/lists.rb +332 -0
- data/lib/didit/resources/monitoring_events.rb +466 -0
- data/lib/didit/resources/networks.rb +427 -0
- data/lib/didit/resources/passive_liveness.rb +103 -0
- data/lib/didit/resources/phone.rb +271 -0
- data/lib/didit/resources/pricing.rb +40 -0
- data/lib/didit/resources/proof_of_address.rb +167 -0
- data/lib/didit/resources/questionnaires.rb +170 -0
- data/lib/didit/resources/regulatory_reports.rb +314 -0
- data/lib/didit/resources/report_templates.rb +146 -0
- data/lib/didit/resources/sessions.rb +2820 -0
- data/lib/didit/resources/transactions.rb +981 -0
- data/lib/didit/resources/travel_rule.rb +1202 -0
- data/lib/didit/resources/users.rb +521 -0
- data/lib/didit/resources/wallet_screening.rb +190 -0
- data/lib/didit/resources/webhooks.rb +396 -0
- data/lib/didit/resources/workflows.rb +214 -0
- data/lib/didit/resources.rb +263 -0
- data/lib/didit/types/account.rb +11 -0
- data/lib/didit/types/account_components.rb +105 -0
- data/lib/didit/types/address_validation.rb +8 -0
- data/lib/didit/types/age_estimation.rb +89 -0
- data/lib/didit/types/aml.rb +193 -0
- data/lib/didit/types/aml_monitoring.rb +73 -0
- data/lib/didit/types/analytics.rb +62 -0
- data/lib/didit/types/bank.rb +8 -0
- data/lib/didit/types/billing.rb +18 -0
- data/lib/didit/types/biometric_templates.rb +292 -0
- data/lib/didit/types/blocklist.rb +31 -0
- data/lib/didit/types/businesses.rb +45 -0
- data/lib/didit/types/cases.rb +368 -0
- data/lib/didit/types/components.rb +12206 -0
- data/lib/didit/types/customization.rb +8 -0
- data/lib/didit/types/database_validation.rb +177 -0
- data/lib/didit/types/document_ai.rb +135 -0
- data/lib/didit/types/email.rb +116 -0
- data/lib/didit/types/face_match.rb +93 -0
- data/lib/didit/types/face_search.rb +129 -0
- data/lib/didit/types/fraud_checks.rb +8 -0
- data/lib/didit/types/id_verification.rb +231 -0
- data/lib/didit/types/id_wallets.rb +8 -0
- data/lib/didit/types/investigator.rb +221 -0
- data/lib/didit/types/ip.rb +8 -0
- data/lib/didit/types/kyb.rb +1391 -0
- data/lib/didit/types/lists.rb +111 -0
- data/lib/didit/types/monitoring_events.rb +235 -0
- data/lib/didit/types/networks.rb +120 -0
- data/lib/didit/types/passive_liveness.rb +95 -0
- data/lib/didit/types/phone.rb +69 -0
- data/lib/didit/types/proof_of_address.rb +166 -0
- data/lib/didit/types/questionnaires.rb +29 -0
- data/lib/didit/types/regulatory_reports.rb +100 -0
- data/lib/didit/types/report_templates.rb +41 -0
- data/lib/didit/types/sessions.rb +1441 -0
- data/lib/didit/types/transactions.rb +245 -0
- data/lib/didit/types/travel_rule.rb +168 -0
- data/lib/didit/types/users.rb +180 -0
- data/lib/didit/types/wallet_screening.rb +49 -0
- data/lib/didit/types/webhooks.rb +355 -0
- data/lib/didit/types/workflows.rb +32 -0
- data/lib/didit/types.rb +1681 -0
- data/lib/didit/version.rb +5 -0
- data/lib/didit/webhooks/canonical_json.rb +187 -0
- data/lib/didit/webhooks/client_methods.rb +23 -0
- data/lib/didit/webhooks/events.rb +221 -0
- data/lib/didit/webhooks/headers.rb +83 -0
- data/lib/didit/webhooks/verifier.rb +260 -0
- data/lib/didit/webhooks.rb +99 -0
- data/lib/didit-sdk.rb +4 -0
- data/lib/didit.rb +31 -0
- data/sig/didit/authentication/base64_url.rbs +10 -0
- data/sig/didit/authentication/cache.rbs +60 -0
- data/sig/didit/authentication/http.rbs +37 -0
- data/sig/didit/authentication/issuer.rbs +17 -0
- data/sig/didit/authentication/jws.rbs +41 -0
- data/sig/didit/authentication/jwt.rbs +14 -0
- data/sig/didit/authentication/key_set.rbs +25 -0
- data/sig/didit/authentication/pkce.rbs +20 -0
- data/sig/didit/authentication/types.rbs +114 -0
- data/sig/didit/authentication.rbs +81 -0
- data/sig/didit/client.rbs +61 -0
- data/sig/didit/errors.rbs +80 -0
- data/sig/didit/file_part.rbs +19 -0
- data/sig/didit/internal.rbs +199 -0
- data/sig/didit/model.rbs +42 -0
- data/sig/didit/page.rbs +34 -0
- data/sig/didit/raw_response.rbs +20 -0
- data/sig/didit/resource.rbs +8 -0
- data/sig/didit/resources/account.rbs +23 -0
- data/sig/didit/resources/address_validation.rbs +9 -0
- data/sig/didit/resources/age_estimation.rbs +9 -0
- data/sig/didit/resources/aml.rbs +10 -0
- data/sig/didit/resources/aml_monitoring.rbs +9 -0
- data/sig/didit/resources/analytics.rbs +9 -0
- data/sig/didit/resources/bank.rbs +9 -0
- data/sig/didit/resources/billing.rbs +10 -0
- data/sig/didit/resources/biometric_templates.rbs +13 -0
- data/sig/didit/resources/blocklist.rbs +11 -0
- data/sig/didit/resources/business_sessions.rbs +9 -0
- data/sig/didit/resources/businesses.rbs +22 -0
- data/sig/didit/resources/cases.rbs +103 -0
- data/sig/didit/resources/customization.rbs +10 -0
- data/sig/didit/resources/database_validation.rbs +9 -0
- data/sig/didit/resources/document_ai.rbs +9 -0
- data/sig/didit/resources/email.rbs +11 -0
- data/sig/didit/resources/face_match.rbs +9 -0
- data/sig/didit/resources/face_search.rbs +9 -0
- data/sig/didit/resources/fraud_checks.rbs +11 -0
- data/sig/didit/resources/id_verification.rbs +9 -0
- data/sig/didit/resources/id_wallets.rbs +37 -0
- data/sig/didit/resources/investigator.rbs +23 -0
- data/sig/didit/resources/ip.rbs +9 -0
- data/sig/didit/resources/kyb.rbs +12 -0
- data/sig/didit/resources/lists.rbs +20 -0
- data/sig/didit/resources/monitoring_events.rbs +16 -0
- data/sig/didit/resources/networks.rbs +25 -0
- data/sig/didit/resources/passive_liveness.rbs +9 -0
- data/sig/didit/resources/phone.rbs +11 -0
- data/sig/didit/resources/pricing.rbs +9 -0
- data/sig/didit/resources/proof_of_address.rbs +9 -0
- data/sig/didit/resources/questionnaires.rbs +13 -0
- data/sig/didit/resources/regulatory_reports.rbs +16 -0
- data/sig/didit/resources/report_templates.rbs +13 -0
- data/sig/didit/resources/sessions.rbs +78 -0
- data/sig/didit/resources/transactions.rbs +43 -0
- data/sig/didit/resources/travel_rule.rbs +62 -0
- data/sig/didit/resources/users.rbs +21 -0
- data/sig/didit/resources/wallet_screening.rbs +11 -0
- data/sig/didit/resources/webhooks.rbs +23 -0
- data/sig/didit/resources/workflows.rbs +13 -0
- data/sig/didit/resources.rbs +50 -0
- data/sig/didit/types/account.rbs +22 -0
- data/sig/didit/types/account_components.rbs +94 -0
- data/sig/didit/types/address_validation.rbs +7 -0
- data/sig/didit/types/age_estimation.rbs +80 -0
- data/sig/didit/types/aml.rbs +174 -0
- data/sig/didit/types/aml_monitoring.rbs +67 -0
- data/sig/didit/types/analytics.rbs +57 -0
- data/sig/didit/types/bank.rbs +9 -0
- data/sig/didit/types/billing.rbs +19 -0
- data/sig/didit/types/biometric_templates.rbs +268 -0
- data/sig/didit/types/blocklist.rbs +33 -0
- data/sig/didit/types/businesses.rbs +54 -0
- data/sig/didit/types/cases.rbs +414 -0
- data/sig/didit/types/components.rbs +10920 -0
- data/sig/didit/types/customization.rbs +7 -0
- data/sig/didit/types/database_validation.rbs +152 -0
- data/sig/didit/types/document_ai.rbs +123 -0
- data/sig/didit/types/email.rbs +112 -0
- data/sig/didit/types/face_match.rbs +86 -0
- data/sig/didit/types/face_search.rbs +112 -0
- data/sig/didit/types/fraud_checks.rbs +9 -0
- data/sig/didit/types/id_verification.rbs +196 -0
- data/sig/didit/types/id_wallets.rbs +55 -0
- data/sig/didit/types/investigator.rbs +212 -0
- data/sig/didit/types/ip.rbs +7 -0
- data/sig/didit/types/kyb.rbs +1254 -0
- data/sig/didit/types/lists.rbs +106 -0
- data/sig/didit/types/monitoring_events.rbs +234 -0
- data/sig/didit/types/networks.rbs +113 -0
- data/sig/didit/types/passive_liveness.rbs +87 -0
- data/sig/didit/types/phone.rbs +65 -0
- data/sig/didit/types/proof_of_address.rbs +144 -0
- data/sig/didit/types/questionnaires.rbs +30 -0
- data/sig/didit/types/regulatory_reports.rbs +101 -0
- data/sig/didit/types/report_templates.rbs +42 -0
- data/sig/didit/types/sessions.rbs +1349 -0
- data/sig/didit/types/transactions.rbs +273 -0
- data/sig/didit/types/travel_rule.rbs +188 -0
- data/sig/didit/types/users.rbs +181 -0
- data/sig/didit/types/wallet_screening.rbs +40 -0
- data/sig/didit/types/webhooks.rbs +311 -0
- data/sig/didit/types/workflows.rbs +30 -0
- data/sig/didit/webhooks/canonical_json.rbs +25 -0
- data/sig/didit/webhooks/client_methods.rbs +11 -0
- data/sig/didit/webhooks/events.rbs +125 -0
- data/sig/didit/webhooks/headers.rbs +22 -0
- data/sig/didit/webhooks/verifier.rbs +54 -0
- data/sig/didit/webhooks.rbs +37 -0
- data/sig/didit.rbs +20 -0
- metadata +300 -0
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
# Code generated by codegen from openapi/*.json. DO NOT EDIT.
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
module Didit
|
|
5
|
+
module Types
|
|
6
|
+
# What to do when a critical printed field was physically covered on the capture
|
|
7
|
+
# (`CRITICAL_FIELD_OCCLUSION_DETECTED`) - an identity number, a name, the date of birth, or the expiry date.
|
|
8
|
+
# Declines by default, like this endpoint's other document-integrity risks: covering the numbers a report is
|
|
9
|
+
# reconciled against is what a redacted document looks like. The value read for a covered field is dropped from
|
|
10
|
+
# the extraction either way, so the matching `*_NOT_DETECTED` warning usually accompanies it. `REVIEW` is not
|
|
11
|
+
# supported on this endpoint and returns `400`.
|
|
12
|
+
module IdVerificationVerifyParamsCriticalFieldOcclusionAction
|
|
13
|
+
NO_ACTION = "NO_ACTION"
|
|
14
|
+
DECLINE = "DECLINE"
|
|
15
|
+
|
|
16
|
+
VALUES = [NO_ACTION, DECLINE].freeze
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
# What to do when a number does not match the format its issuing authority uses for that document type
|
|
20
|
+
# (`DOCUMENT_NUMBER_FORMAT_MISMATCH`, `PERSONAL_NUMBER_FORMAT_MISMATCH`). Default `NO_ACTION`, which reports the
|
|
21
|
+
# warning without changing the status. `REVIEW` is not supported on this endpoint and returns `400`.
|
|
22
|
+
module IdVerificationVerifyParamsDocumentOrPersonalNumberFormatMismatchAction
|
|
23
|
+
NO_ACTION = "NO_ACTION"
|
|
24
|
+
DECLINE = "DECLINE"
|
|
25
|
+
|
|
26
|
+
VALUES = [NO_ACTION, DECLINE].freeze
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
# What to do when no expiration date can be read (`EXPIRATION_DATE_NOT_DETECTED`). Default `NO_ACTION` because
|
|
30
|
+
# many identity documents print no expiry date. Note: a *detected and past* expiry date always declines
|
|
31
|
+
# (`DOCUMENT_EXPIRED`), regardless of this option.
|
|
32
|
+
module IdVerificationVerifyParamsExpirationDateNotDetectedAction
|
|
33
|
+
NO_ACTION = "NO_ACTION"
|
|
34
|
+
DECLINE = "DECLINE"
|
|
35
|
+
|
|
36
|
+
VALUES = [NO_ACTION, DECLINE].freeze
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
# What to do when extracted data is internally inconsistent: `DATA_INCONSISTENT`,
|
|
40
|
+
# `MRZ_AND_DATA_EXTRACTED_FROM_OCR_NOT_SAME` (visual zone disagrees with the MRZ), or
|
|
41
|
+
# `DOCUMENT_NAME_DIFFERENT_FROM_OTHER_APPROVED_DOCUMENTS`.
|
|
42
|
+
module IdVerificationVerifyParamsInconsistentDataAction
|
|
43
|
+
NO_ACTION = "NO_ACTION"
|
|
44
|
+
DECLINE = "DECLINE"
|
|
45
|
+
|
|
46
|
+
VALUES = [NO_ACTION, DECLINE].freeze
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
# What to do when the extracted MRZ fails check-digit validation (`MRZ_VALIDATION_FAILED`). A missing MRZ raises
|
|
50
|
+
# no warning on this endpoint. Only relevant for documents that carry an MRZ. `REVIEW` is not supported on this
|
|
51
|
+
# endpoint and returns `400`.
|
|
52
|
+
module IdVerificationVerifyParamsInvalidMrzAction
|
|
53
|
+
NO_ACTION = "NO_ACTION"
|
|
54
|
+
DECLINE = "DECLINE"
|
|
55
|
+
|
|
56
|
+
VALUES = [NO_ACTION, DECLINE].freeze
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
# Preferred script for name/address fields on documents that print both Latin and non-Latin text (Arabic,
|
|
60
|
+
# Cyrillic, CJK, …). `latin` returns transliterated/Latin values; `non_latin` prefers the native script.
|
|
61
|
+
module IdVerificationVerifyParamsPreferredCharacters
|
|
62
|
+
LATIN = "latin"
|
|
63
|
+
NON_LATIN = "non_latin"
|
|
64
|
+
|
|
65
|
+
VALUES = [LATIN, NON_LATIN].freeze
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
# `Approved` when no warning resolves to a decline and the requested document-liveness check produced a usable
|
|
69
|
+
# result; `In Review` when that requested check produced no usable result (`DOCUMENT_LIVENESS_NOT_COMPUTED`);
|
|
70
|
+
# `Declined` when a warning resolves to a decline - the `warnings` list explains why.
|
|
71
|
+
module IdVerificationVerifyResponseIdVerificationStatus
|
|
72
|
+
APPROVED = "Approved"
|
|
73
|
+
DECLINED = "Declined"
|
|
74
|
+
IN_REVIEW = "In Review"
|
|
75
|
+
|
|
76
|
+
VALUES = [APPROVED, DECLINED, IN_REVIEW].freeze
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
# Feature that raised the warning. Always `ID_VERIFICATION` on this endpoint.
|
|
80
|
+
module IdVerificationVerifyResponseIdVerificationWarningsFeature
|
|
81
|
+
ID_VERIFICATION = "ID_VERIFICATION"
|
|
82
|
+
|
|
83
|
+
VALUES = [ID_VERIFICATION].freeze
|
|
84
|
+
end
|
|
85
|
+
|
|
86
|
+
# Severity. `error` warnings drive `status` to `Declined`; `warning` (only `DOCUMENT_LIVENESS_NOT_COMPUTED`, when
|
|
87
|
+
# the requested forgery check produced no usable score) drives `status` to `In Review`; `information` entries are
|
|
88
|
+
# advisory and never change the status.
|
|
89
|
+
module IdVerificationVerifyResponseIdVerificationWarningsLogType
|
|
90
|
+
ERROR = "error"
|
|
91
|
+
WARNING = "warning"
|
|
92
|
+
INFORMATION = "information"
|
|
93
|
+
|
|
94
|
+
VALUES = [ERROR, WARNING, INFORMATION].freeze
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
class IdVerificationVerifyResponse < Didit::Model
|
|
98
|
+
field :request_id, "request_id", :string
|
|
99
|
+
field :id_verification, "id_verification", "IdVerificationVerifyResponseIdVerification"
|
|
100
|
+
field :vendor_data, "vendor_data", :string
|
|
101
|
+
field :metadata, "metadata", :any
|
|
102
|
+
field :created_at, "created_at", :datetime
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
class IdVerificationVerifyResponseIdVerification < Didit::Model
|
|
106
|
+
field :status, "status", :string
|
|
107
|
+
field :document_type, "document_type", :string
|
|
108
|
+
field :document_subtype, "document_subtype", :string
|
|
109
|
+
field :document_number, "document_number", :string
|
|
110
|
+
field :personal_number, "personal_number", :string
|
|
111
|
+
field :portrait_image, "portrait_image", :string
|
|
112
|
+
field :front_image, "front_image", :string
|
|
113
|
+
field :back_image, "back_image", :string
|
|
114
|
+
field :front_image_camera_front, "front_image_camera_front", :string
|
|
115
|
+
field :back_image_camera_front, "back_image_camera_front", :string
|
|
116
|
+
field :front_image_camera_front_face_match_score, "front_image_camera_front_face_match_score", :float
|
|
117
|
+
field :back_image_camera_front_face_match_score, "back_image_camera_front_face_match_score", :float
|
|
118
|
+
field :front_image_quality_score, "front_image_quality_score", "IdVerificationVerifyResponseIdVerificationFrontImageQualityScore"
|
|
119
|
+
field :back_image_quality_score, "back_image_quality_score", "IdVerificationVerifyResponseIdVerificationBackImageQualityScore"
|
|
120
|
+
field :date_of_birth, "date_of_birth", :date
|
|
121
|
+
field :age, "age", :integer
|
|
122
|
+
field :expiration_date, "expiration_date", :date
|
|
123
|
+
field :date_of_issue, "date_of_issue", :date
|
|
124
|
+
field :issuing_state, "issuing_state", :string
|
|
125
|
+
field :issuing_state_name, "issuing_state_name", :string
|
|
126
|
+
field :first_name, "first_name", :string
|
|
127
|
+
field :last_name, "last_name", :string
|
|
128
|
+
field :full_name, "full_name", :string
|
|
129
|
+
field :gender, "gender", :string
|
|
130
|
+
field :address, "address", :string
|
|
131
|
+
field :formatted_address, "formatted_address", :string
|
|
132
|
+
field :place_of_birth, "place_of_birth", :string
|
|
133
|
+
field :marital_status, "marital_status", :string
|
|
134
|
+
field :nationality, "nationality", :string
|
|
135
|
+
field :extra_fields, "extra_fields", :any
|
|
136
|
+
field :mrz, "mrz", "IdVerificationVerifyResponseIdVerificationMrz"
|
|
137
|
+
field :parsed_address, "parsed_address", "IdVerificationVerifyResponseIdVerificationParsedAddress"
|
|
138
|
+
field :warnings, "warnings", [:array, "IdVerificationVerifyResponseIdVerificationWarnings"]
|
|
139
|
+
field :barcodes, "barcodes", [:array, "IdVerificationVerifyResponseIdVerificationBarcodes"]
|
|
140
|
+
end
|
|
141
|
+
|
|
142
|
+
# Capture-quality diagnostics for the uploaded image (`null` when the side was not provided or scoring failed).
|
|
143
|
+
# All scores are 0-100.
|
|
144
|
+
class IdVerificationVerifyResponseIdVerificationBackImageQualityScore < Didit::Model
|
|
145
|
+
field :focus_score, "focus_score", :float
|
|
146
|
+
field :brightness_score, "brightness_score", :float
|
|
147
|
+
field :brightness_issue, "brightness_issue", :string
|
|
148
|
+
field :is_document_fully_visible, "is_document_fully_visible", :boolean
|
|
149
|
+
field :resolution_score, "resolution_score", :float
|
|
150
|
+
field :overall_score, "overall_score", :float
|
|
151
|
+
end
|
|
152
|
+
|
|
153
|
+
class IdVerificationVerifyResponseIdVerificationBarcodes < Didit::Model
|
|
154
|
+
field :type, "type", :string
|
|
155
|
+
field :position, "position", :any
|
|
156
|
+
field :data, "data", :string
|
|
157
|
+
field :data_raw, "data_raw", :string
|
|
158
|
+
field :side, "side", :string
|
|
159
|
+
end
|
|
160
|
+
|
|
161
|
+
# Capture-quality diagnostics for the uploaded image (`null` when the side was not provided or scoring failed).
|
|
162
|
+
# All scores are 0-100.
|
|
163
|
+
class IdVerificationVerifyResponseIdVerificationFrontImageQualityScore < Didit::Model
|
|
164
|
+
field :focus_score, "focus_score", :float
|
|
165
|
+
field :brightness_score, "brightness_score", :float
|
|
166
|
+
field :brightness_issue, "brightness_issue", :string
|
|
167
|
+
field :is_document_fully_visible, "is_document_fully_visible", :boolean
|
|
168
|
+
field :resolution_score, "resolution_score", :float
|
|
169
|
+
field :overall_score, "overall_score", :float
|
|
170
|
+
end
|
|
171
|
+
|
|
172
|
+
# Parsed machine-readable zone. An **empty object** (`{}`) when the document has no MRZ or it could not be read -
|
|
173
|
+
# also check the `warnings` list in that case. Dates inside the MRZ use the raw `YYMMDD` format.
|
|
174
|
+
class IdVerificationVerifyResponseIdVerificationMrz < Didit::Model
|
|
175
|
+
field :surname, "surname", :string
|
|
176
|
+
field :name, "name", :string
|
|
177
|
+
field :country, "country", :string
|
|
178
|
+
field :nationality, "nationality", :string
|
|
179
|
+
field :birth_date, "birth_date", :string
|
|
180
|
+
field :expiry_date, "expiry_date", :string
|
|
181
|
+
field :sex, "sex", :string
|
|
182
|
+
field :document_type, "document_type", :string
|
|
183
|
+
field :document_number, "document_number", :string
|
|
184
|
+
field :optional_data, "optional_data", :string
|
|
185
|
+
field :optional_data_2, "optional_data_2", :string
|
|
186
|
+
field :birth_date_hash, "birth_date_hash", :string
|
|
187
|
+
field :expiry_date_hash, "expiry_date_hash", :string
|
|
188
|
+
field :document_number_hash, "document_number_hash", :string
|
|
189
|
+
field :final_hash, "final_hash", :string
|
|
190
|
+
field :personal_number, "personal_number", :string
|
|
191
|
+
field :warnings, "warnings", [:array, :string]
|
|
192
|
+
field :errors, "errors", [:array, :string]
|
|
193
|
+
field :mrz_type, "mrz_type", :string
|
|
194
|
+
field :mrz_string, "mrz_string", :string
|
|
195
|
+
field :mrz_key, "mrz_key", :string
|
|
196
|
+
end
|
|
197
|
+
|
|
198
|
+
# Structured, geocoded breakdown of `address`. `null` when the document carries no address or it could not be
|
|
199
|
+
# parsed.
|
|
200
|
+
class IdVerificationVerifyResponseIdVerificationParsedAddress < Didit::Model
|
|
201
|
+
field :street_1, "street_1", :string
|
|
202
|
+
field :street_2, "street_2", :string
|
|
203
|
+
field :city, "city", :string
|
|
204
|
+
field :region, "region", :string
|
|
205
|
+
field :country, "country", :string
|
|
206
|
+
field :postal_code, "postal_code", :string
|
|
207
|
+
field :address_type, "address_type", :string
|
|
208
|
+
field :formatted_address, "formatted_address", :string
|
|
209
|
+
field :raw_results, "raw_results", :any
|
|
210
|
+
field :document_location, "document_location", "IdVerificationVerifyResponseIdVerificationParsedAddressDocumentLocation"
|
|
211
|
+
field :label, "label", :string
|
|
212
|
+
field :is_verified, "is_verified", :boolean
|
|
213
|
+
field :category, "category", :string
|
|
214
|
+
end
|
|
215
|
+
|
|
216
|
+
# Geocoded coordinates of the document address.
|
|
217
|
+
class IdVerificationVerifyResponseIdVerificationParsedAddressDocumentLocation < Didit::Model
|
|
218
|
+
field :latitude, "latitude", :float
|
|
219
|
+
field :longitude, "longitude", :float
|
|
220
|
+
end
|
|
221
|
+
|
|
222
|
+
class IdVerificationVerifyResponseIdVerificationWarnings < Didit::Model
|
|
223
|
+
field :risk, "risk", :string
|
|
224
|
+
field :feature, "feature", :string
|
|
225
|
+
field :additional_data, "additional_data", :any
|
|
226
|
+
field :log_type, "log_type", :string
|
|
227
|
+
field :short_description, "short_description", :string
|
|
228
|
+
field :long_description, "long_description", :string
|
|
229
|
+
end
|
|
230
|
+
end
|
|
231
|
+
end
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
# Code generated by codegen from openapi/*.json. DO NOT EDIT.
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
module Didit
|
|
5
|
+
module Types
|
|
6
|
+
# Known values of an open enum: the API may send others.
|
|
7
|
+
module InvestigatorExportActivityParamsGroup
|
|
8
|
+
AGENT = "agent"
|
|
9
|
+
DECISIONS = "decisions"
|
|
10
|
+
OVERRIDES = "overrides"
|
|
11
|
+
AUTONOMY = "autonomy"
|
|
12
|
+
|
|
13
|
+
VALUES = [AGENT, DECISIONS, OVERRIDES, AUTONOMY].freeze
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
# Known values of an open enum: the API may send others.
|
|
17
|
+
module InvestigatorExportActivityParamsScope
|
|
18
|
+
ALL = "all"
|
|
19
|
+
IDENTITY = "identity"
|
|
20
|
+
TRANSACTIONS = "transactions"
|
|
21
|
+
|
|
22
|
+
VALUES = [ALL, IDENTITY, TRANSACTIONS].freeze
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
# Known values of an open enum: the API may send others.
|
|
26
|
+
module InvestigatorListActivityParamsGroup
|
|
27
|
+
AGENT = "agent"
|
|
28
|
+
DECISIONS = "decisions"
|
|
29
|
+
OVERRIDES = "overrides"
|
|
30
|
+
AUTONOMY = "autonomy"
|
|
31
|
+
|
|
32
|
+
VALUES = [AGENT, DECISIONS, OVERRIDES, AUTONOMY].freeze
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
# Known values of an open enum: the API may send others.
|
|
36
|
+
module InvestigatorListActivityParamsScope
|
|
37
|
+
ALL = "all"
|
|
38
|
+
IDENTITY = "identity"
|
|
39
|
+
TRANSACTIONS = "transactions"
|
|
40
|
+
|
|
41
|
+
VALUES = [ALL, IDENTITY, TRANSACTIONS].freeze
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# Known values of an open enum: the API may send others.
|
|
45
|
+
module InvestigatorListGuardrailsResponseResultsKey
|
|
46
|
+
SANCTIONS_TO_PERSON = "sanctions_to_person"
|
|
47
|
+
NO_TIPPING_OFF = "no_tipping_off"
|
|
48
|
+
NO_PROTECTED_CHARACTERISTICS = "no_protected_characteristics"
|
|
49
|
+
NEVER_FILES_REPORTS = "never_files_reports"
|
|
50
|
+
EVERY_DECISION_LOGGED = "every_decision_logged"
|
|
51
|
+
|
|
52
|
+
VALUES = [SANCTIONS_TO_PERSON, NO_TIPPING_OFF, NO_PROTECTED_CHARACTERISTICS, NEVER_FILES_REPORTS, EVERY_DECISION_LOGGED].freeze
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
# Known values of an open enum: the API may send others.
|
|
56
|
+
module InvestigatorListQueueParamsConfidence
|
|
57
|
+
HIGH = "high"
|
|
58
|
+
MODERATE = "moderate"
|
|
59
|
+
LOW = "low"
|
|
60
|
+
|
|
61
|
+
VALUES = [HIGH, MODERATE, LOW].freeze
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
# Known values of an open enum: the API may send others.
|
|
65
|
+
module InvestigatorListQueueParamsQueue
|
|
66
|
+
KYC = "kyc"
|
|
67
|
+
KYB = "kyb"
|
|
68
|
+
AML = "aml"
|
|
69
|
+
TRANSACTIONS = "transactions"
|
|
70
|
+
CASES = "cases"
|
|
71
|
+
|
|
72
|
+
VALUES = [KYC, KYB, AML, TRANSACTIONS, CASES].freeze
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
# Known values of an open enum: the API may send others.
|
|
76
|
+
module InvestigatorListQueueParamsRecommendation
|
|
77
|
+
APPROVE = "approve"
|
|
78
|
+
DECLINE = "decline"
|
|
79
|
+
ESCALATE = "escalate"
|
|
80
|
+
REQUEST = "request"
|
|
81
|
+
|
|
82
|
+
VALUES = [APPROVE, DECLINE, ESCALATE, REQUEST].freeze
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
# Known values of an open enum: the API may send others.
|
|
86
|
+
module InvestigatorListQueueParamsScope
|
|
87
|
+
ALL = "all"
|
|
88
|
+
IDENTITY = "identity"
|
|
89
|
+
TRANSACTIONS = "transactions"
|
|
90
|
+
|
|
91
|
+
VALUES = [ALL, IDENTITY, TRANSACTIONS].freeze
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
# Known values of an open enum: the API may send others.
|
|
95
|
+
module InvestigatorOverrideRunParamsAction
|
|
96
|
+
APPROVE = "approve"
|
|
97
|
+
DECLINE = "decline"
|
|
98
|
+
ESCALATE = "escalate"
|
|
99
|
+
REQUEST = "request"
|
|
100
|
+
|
|
101
|
+
VALUES = [APPROVE, DECLINE, ESCALATE, REQUEST].freeze
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
# Known values of an open enum: the API may send others.
|
|
105
|
+
module InvestigatorOverrideRunParamsCategory
|
|
106
|
+
MISSING_CONTEXT = "missing_context"
|
|
107
|
+
NEEDS_INFORMATION = "needs_information"
|
|
108
|
+
POLICY_DIFFERS = "policy_differs"
|
|
109
|
+
EVIDENCE_MISREAD = "evidence_misread"
|
|
110
|
+
OTHER = "other"
|
|
111
|
+
|
|
112
|
+
VALUES = [MISSING_CONTEXT, NEEDS_INFORMATION, POLICY_DIFFERS, EVIDENCE_MISREAD, OTHER].freeze
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
# Known values of an open enum: the API may send others.
|
|
116
|
+
module InvestigatorRetrieveDashboardParamsScope
|
|
117
|
+
ALL = "all"
|
|
118
|
+
IDENTITY = "identity"
|
|
119
|
+
TRANSACTIONS = "transactions"
|
|
120
|
+
|
|
121
|
+
VALUES = [ALL, IDENTITY, TRANSACTIONS].freeze
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
# Known values of an open enum: the API may send others.
|
|
125
|
+
module InvestigatorRetrievePerformanceParamsPeriod
|
|
126
|
+
V_7 = "7"
|
|
127
|
+
V_30 = "30"
|
|
128
|
+
V_90 = "90"
|
|
129
|
+
|
|
130
|
+
VALUES = [V_7, V_30, V_90].freeze
|
|
131
|
+
end
|
|
132
|
+
|
|
133
|
+
# Known values of an open enum: the API may send others.
|
|
134
|
+
module InvestigatorRetrievePerformanceParamsScope
|
|
135
|
+
ALL = "all"
|
|
136
|
+
IDENTITY = "identity"
|
|
137
|
+
TRANSACTIONS = "transactions"
|
|
138
|
+
|
|
139
|
+
VALUES = [ALL, IDENTITY, TRANSACTIONS].freeze
|
|
140
|
+
end
|
|
141
|
+
|
|
142
|
+
# Known values of an open enum: the API may send others.
|
|
143
|
+
module InvestigatorRetrieveSummaryParamsScope
|
|
144
|
+
ALL = "all"
|
|
145
|
+
IDENTITY = "identity"
|
|
146
|
+
TRANSACTIONS = "transactions"
|
|
147
|
+
|
|
148
|
+
VALUES = [ALL, IDENTITY, TRANSACTIONS].freeze
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
# Known values of an open enum: the API may send others.
|
|
152
|
+
module InvestigatorUpdateSettingsParamsStage
|
|
153
|
+
NONE = "none"
|
|
154
|
+
SHADOW = "shadow"
|
|
155
|
+
LIVE = "live"
|
|
156
|
+
|
|
157
|
+
VALUES = [NONE, SHADOW, LIVE].freeze
|
|
158
|
+
end
|
|
159
|
+
|
|
160
|
+
class InvestigatorListActivityResponse < Didit::Model
|
|
161
|
+
field :count, "count", :integer
|
|
162
|
+
field :next, "next", :string
|
|
163
|
+
field :previous, "previous", :string
|
|
164
|
+
field :counts, "counts", :any
|
|
165
|
+
field :actors, "actors", [:array, :any]
|
|
166
|
+
field :results, "results", [:array, :any]
|
|
167
|
+
end
|
|
168
|
+
|
|
169
|
+
class InvestigatorListGuardrailsResponse < Didit::Model
|
|
170
|
+
field :results, "results", [:array, "InvestigatorListGuardrailsResponseResults"]
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
class InvestigatorListGuardrailsResponseResults < Didit::Model
|
|
174
|
+
field :key, "key", :string
|
|
175
|
+
field :title, "title", :string
|
|
176
|
+
field :description, "description", :string
|
|
177
|
+
field :locked, "locked", :boolean
|
|
178
|
+
end
|
|
179
|
+
|
|
180
|
+
class InvestigatorListQueueResponse < Didit::Model
|
|
181
|
+
field :count, "count", :integer
|
|
182
|
+
field :next, "next", :string
|
|
183
|
+
field :previous, "previous", :string
|
|
184
|
+
field :counts, "counts", :any
|
|
185
|
+
field :results, "results", [:array, "InvestigatorQueueRow"]
|
|
186
|
+
end
|
|
187
|
+
|
|
188
|
+
class InvestigatorRetrieveDashboardResponse < Didit::Model
|
|
189
|
+
field :stage, "stage", :string
|
|
190
|
+
field :window_days, "window_days", :integer
|
|
191
|
+
field :reviews, "reviews", :integer
|
|
192
|
+
field :decided, "decided", :integer
|
|
193
|
+
field :automated, "automated", :integer
|
|
194
|
+
field :automation_rate, "automation_rate", :float
|
|
195
|
+
field :hours_saved, "hours_saved", :float
|
|
196
|
+
end
|
|
197
|
+
|
|
198
|
+
class InvestigatorRetrievePerformanceResponse < Didit::Model
|
|
199
|
+
field :period, "period", :integer
|
|
200
|
+
field :start, "start", :date
|
|
201
|
+
field :end, "end", :date
|
|
202
|
+
field :investigated, "investigated", :integer
|
|
203
|
+
end
|
|
204
|
+
|
|
205
|
+
class InvestigatorRetrieveSummaryResponse < Didit::Model
|
|
206
|
+
field :stage, "stage", :string
|
|
207
|
+
field :last_report_at, "last_report_at", :datetime
|
|
208
|
+
field :prepared_today, "prepared_today", :integer
|
|
209
|
+
field :ready_to_accept, "ready_to_accept", :integer
|
|
210
|
+
field :open, "open", :integer
|
|
211
|
+
field :decided_today, "decided_today", :integer
|
|
212
|
+
field :automation_rate_month, "automation_rate_month", :float
|
|
213
|
+
field :preparing, "preparing", :integer
|
|
214
|
+
end
|
|
215
|
+
|
|
216
|
+
class InvestigatorRetrieveTransactionResponse < Didit::Model
|
|
217
|
+
field :transaction_id, "transaction_id", :string
|
|
218
|
+
field :investigator, "investigator", "InvestigatorBlock"
|
|
219
|
+
end
|
|
220
|
+
end
|
|
221
|
+
end
|