# Retrieve a KYC request Retrieves a KYC request with a specified ID. Endpoint: GET /kyc-requests/{id} Version: latest Security: SecretApiKey, JWT ## Path parameters: - `id` (string, required) ID of the resource. ## Response 200 fields (application/json): - `id` (string) ID of the KYC request. Example: "kyc_req_0YV7JMJ3DBCGRBR7K9D4HVGPP5" - `customerId` (string, required) ID of the customer resource. - `documents` (array, required) Documents to request from the customer. - `documents.type` (string, required) Type of document to request from the customer. Enum: "identity-proof", "address-proof", "funds-proof", "purchase-proof", "credit-file-proof" - `documents.subtypes` (array,null) Permitted document subtype. Enum: "passport", "id-card", "driver-license", "birth-certificate", "utility-bill", "rental-receipt", "lease-agreement", "copy-credit-card", "credit-card-statement", "bank-statement", "inheritance-documentation", "tax-return", "salary-slip", "sale-of-assets", "public-health-card", "proof-of-age-card", "reverse-of-id", "public-service", "ewallet-holder-details", "ewallet-transaction-statement", "marriage-certificate", "firearms-license", "insurance-letter", "income-statement", "debtors-letter", "other", null - `documents.maxAttempts` (integer) Total number of allowed document upload attempts. Use to allow unlimited upload attempts. - `documents.faceProofRequired` (boolean) Specifies if the customer must upload a photo of their face (selfie) that matches a provided KYC document. - `documents.faceLivenessRequired` (boolean) Specifies if the customer must use the face liveness feature when uploading a selfie. For more information, see [Facial recognition and identity verification](https://www.rebilly.com/docs/kyc-and-aml/kyc#facial-recognition-identity-verification). - `status` (string) Status of the request. Enum: "gathering", "attempted", "partial", "pending-review", "fulfilled", "failed", "abandoned", "expired" - `redirectUrl` (string,null) URL where the customer is redirected when a KYC document upload is complete. When the customer is redirected, Rebilly appends an query parameter that has one of the following values: - : Customer clicked the link. - : Customer's token expired. - : Customer uploaded KYC documents that have been analyzed. - : Customer uploaded KYC documents that require a manual review. This is because the analyzer rejected the documents or could not process them. - : Some of the customer's KYC documents have been analyzed, but other documents have not. For example, this may occur when a proof of address document is analyzed but proof of ID is not. Example: . - `reason` (string,null) Reason for uploading. Example: "spend limit" - `matchLevel` (integer) Document verification level. Enum: 1, 2, 3 - `revision` (integer) Number of times the KYC request data has been modified. Use this value when analyzing webhook data to determine if a change must take precedence over the current representation. - `expirationTime` (string) Date and time when the request expires. The default value is one hour in the future. - `createdTime` (string) Date and time which is set automatically when the resource is created. - `updatedTime` (string) Date and time which updates automatically when the resource is updated. - `_links` (array) Related links. - `_links.href` (string) Link URL. - `_links.rel` (string) Type of link. Enum: "self", "documents", "gatherer" - `_embedded` (object) Embedded objects that are requested by the query parameter. - `_embedded.documents` (array) ## 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 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 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.