# Retrieve KYC settings

Retrieves KYC settings.

Endpoint: GET /kyc-settings
Version: latest
Security: SecretApiKey, JWT

## Security:

  - `SecretApiKey` (unknown)
    apiKey in header REB-APIKEY

  - `JWT` (unknown)
    http bearer JWT

## Response 200:

  - `200` (unknown)
    KYC settings retrieved.

## Response 200 fields (application/json):

  - `identityProof` (object)
    Identity proof settings.

  - `identityProof.weights` (object)
    Property weights that are used for the KYC document verification process.
All KYC documents start the verification process with a score of 100.
If a check fails, the score is reduced by the corresponding weight.
For example, if the `firstName` check weight is set to `5`, and the check fails,
the KYC document score becomes `95`.

  - `identityProof.weights.containsImage` (integer)
    Weight added if the document does not include an image that contains a face.

  - `identityProof.weights.isIdentityDocument` (integer)
    Weight added if the document does not resemble an ID.

  - `identityProof.weights.isPublishedOnline` (integer)
    Weight added if an exact match of the document is not found online.

  - `identityProof.weights.firstName` (integer)
    Weight added if the customer's first name is not matched.

  - `identityProof.weights.lastName` (integer)
    Weight added if the customer's last name is not matched.

  - `identityProof.weights.expirationDate` (integer)
    Weight added if an expiration date is not detected on the document.

  - `identityProof.weights.dateOfBirth` (integer)
    Weight added if a date of birth is not detected on the document, or if the date of birth detected on the document is not matched.

  - `identityProof.weights.issueDate` (integer)
    Weight added if an issue date is not detected on the document.

  - `identityProof.weights.hasMinimalAge` (integer)
    Weight added if the document does not verify the minimal age limit.
Minimal age is 21+ the for USA and 18+ for all other countries.

  - `identityProof.weights.hasMatchingFaceProof` (integer)
    Weight added if an identity document does not have matching face proof.

  - `identityProof.weights.nationality` (integer)
    Weight added if a nationality is not detected on the document.

  - `identityProof.weights.documentSubtype` (integer)
    Weight added if the document is not one of the recognized document subtypes.

  - `identityProof.weights.isTampered` (integer)
    Weight added if the document has been tampered with.

  - `identityProof.weights.isPhotocopy` (integer)
    Weight added if the document is detected as a photocopy.

  - `identityProof.weights.mrzChecksum` (integer)
    Weight added when MRZ check digits fail validation.

  - `identityProof.weights.documentNumber` (integer)
    Weight added if a document number is not detected on the document.

  - `identityProof.weights.issuanceCountry` (integer)
    Weight added if the country that issued the document is not detected.

  - `identityProof.weights.issuanceRegion` (integer)
    Weight added if the region, state, province, or territory that issued the document is not detected.

  - `identityProof.thresholds` (object)
    Pass and fail threshold definition for the document verification process.

  - `identityProof.thresholds.rejectBelow` (integer)
    Overall score by which an identity proof document fails the verification process.

  - `identityProof.thresholds.acceptAbove` (integer)
    Overall score by which an identity proof document passes the verification process.

  - `identityProof.minimumAgeSettings` (object)
    Minimum age settings for identity proof documents.

  - `identityProof.minimumAgeSettings.defaultMinimumAge` (integer)
    Default minimum age requirement for identity proof documents.
This is used when no location-specific override is configured.

  - `identityProof.minimumAgeSettings.locationOverrides` (array)
    Location-specific minimum age.
Each item specifies a minimum age for a specific location.
For country-wide rules, omit the state field.
For state-specific rules, include the state field.
    Example: [{"country":"US","minimumAge":21},{"country":"US","state":"AL","minimumAge":19}]

  - `identityProof.minimumAgeSettings.locationOverrides.country` (string, required)
    Country code in ISO 3166 alpha-2 format.
    Example: US

  - `identityProof.minimumAgeSettings.locationOverrides.state` (string)
    Name or code of the state or region.
    Example: AZ

  - `identityProof.minimumAgeSettings.locationOverrides.minimumAge` (integer, required)
    Minimum age requirement for this location.
    Example: 21

  - `addressProof` (object)
    Address proof settings.

  - `addressProof.weights` (object)
    Property weights that are used for the KYC document verification process.
All KYC documents start the verification process with a score of 100.
If a check fails, the score is reduced by the corresponding weight.
For example, if the `firstName` check weight is set to `5`, and the check fails,
the KYC document score becomes `95`.

  - `addressProof.weights.firstName` (integer)
    Weight added if the customer's first name is not matched.

  - `addressProof.weights.lastName` (integer)
    Weight added if the customer's last name is not matched.

  - `addressProof.weights.line1` (integer)
    Weight added if the customer's address is not matched.

  - `addressProof.weights.city` (integer)
    Weight added if the customer's city is not matched.

  - `addressProof.weights.region` (integer)
    Weight added if the customer's region is not matched.

  - `addressProof.weights.postalCode` (integer)
    Weight added if the customer's postal code is not matched.

  - `addressProof.weights.date` (integer)
    Weight added if a date is not detected on the document.

  - `addressProof.weights.phone` (integer)
    Weight added if a phone number is not detected on the document.

  - `addressProof.weights.documentSubtype` (integer)
    Weight added if the document is not one of the recognized document subtypes.

  - `addressProof.weights.isTampered` (integer)
    Weight added if the document has been tampered with.

  - `addressProof.thresholds` (object)
    Pass and fail threshold definition for the document verification process.

  - `addressProof.thresholds.rejectBelow` (integer)
    Overall score by which an identity proof document fails the verification process.

  - `addressProof.thresholds.acceptAbove` (integer)
    Overall score by which an identity proof document passes the verification process.

  - `uiVersion` (string | null)
    Version of the KYC document gatherer UI.
    Enum: "1", "2"

## Response 401:

  - `401` (unknown)
    Unauthorized access.
Invalid credentials used.

## Response 401 fields (application/json):

  - `status` (integer)
    HTTP status code.

  - `type` (string)
    Problem type in the form of a [URI](https://tools.ietf.org/html/rfc3986) reference.
It should provide human-readable documentation for the problem type.
When this member is not present, its value is assumed to be "about:blank".

  - `title` (string)
    Short, human-readable summary of the problem type.
Other than for the purposes of localization, this should not change from occurrence to occurrence of the problem.

  - `detail` (string)
    Human-readable explanation that is specific to this occurrence of the problem.

  - `instance` (string)
    URI reference that identifies the specific occurrence of the problem.
It may or may not yield further information if dereferenced.

## Response 403:

  - `403` (unknown)
    Access forbidden.

## Response 403 fields (application/json):

  - `status` (integer)
    HTTP status code.

  - `type` (string)
    Problem type in the form of a [URI](https://tools.ietf.org/html/rfc3986) reference.
It should provide human-readable documentation for the problem type.
When this member is not present, its value is assumed to be "about:blank".

  - `title` (string)
    Short, human-readable summary of the problem type.
Other than for the purposes of localization, this should not change from occurrence to occurrence of the problem.

  - `detail` (string)
    Human-readable explanation that is specific to this occurrence of the problem.

  - `instance` (string)
    URI reference that identifies the specific occurrence of the problem.
It may or may not yield further information if dereferenced.

## Response 404:

  - `404` (unknown)
    Resource not found.

## Response 404 fields (application/json):

  - `status` (integer)
    HTTP status code.

  - `type` (string)
    Problem type in the form of a [URI](https://tools.ietf.org/html/rfc3986) reference.
It should provide human-readable documentation for the problem type.
When this member is not present, its value is assumed to be "about:blank".

  - `title` (string)
    Short, human-readable summary of the problem type.
Other than for the purposes of localization, this should not change from occurrence to occurrence of the problem.

  - `detail` (string)
    Human-readable explanation that is specific to this occurrence of the problem.

  - `instance` (string)
    URI reference that identifies the specific occurrence of the problem.
It may or may not yield further information if dereferenced.

