Retrieve KYC documents

Retrieves a list of KYC documents.

SecuritySecretApiKey or JWT
Request
query Parameters
limit
integer [ 0 .. 1000 ]

Limits the number of collection items to be returned.

offset
integer >= 0

Specifies the starting point within the collection of items to be returned.

filter
string

Filters the collection items. This field requires a special format. Use , for multiple allowed values. Use ; for multiple fields.

For more information, see Using filter with collections.

sort
Array of strings

Sorts and orders the collection of items. To sort in descending order, prefix with -.

expand
string

Expands a request to include embedded objects within the _embedded property of the response. This field accepts a comma-separated list of objects.

For more information, see Expand to include embedded objects.

Responses
200

List of KYC documents retrieved.

Response Headers
Pagination-Total
integer

Total number of items.

Example: 332
Pagination-Limit
integer

Maximum number of items per page.

Example: 100
Pagination-Offset
integer

Specifies the starting point within the collection of resource results. For example, a request with limit=20 retrieves and displays the first 20 results on a page. A following request with limit=20 and offset=20, retrieves the next page of 20 results.

Example: 2
Response Schema: application/json
Array
customerId
required
string (CustomerId) <= 50 characters

Customer resource ID.

documentType
required
string

Document type submitted for validation. Only the identity-proof and address-proof types are analyzed automatically.

status
required
string

Status of the validation.

Enum: Description
pending

Waiting to be reviewed or analyzed.

in-progress

Being analyzed by the Rebilly AI.

accepted

Accepted by AI or a human.

rejected

Rejected by AI or a human.

archived

Archived by the Rebilly AI.

id
string <= 50 characters

Unique resource ID. Defaults to UUID v4.

fileId
string <= 50 characters
Deprecated

ID of the linked file object.

fileIds
Array of strings

IDs of linked file objects.

Uploaded identity-proof files must have the following tags attached to be used for KYC purposes: ['kyc', 'id-front'], ['kyc', 'id-back'], ['kyc', 'face-proof'].

documentSubtype
string

Document subtype submitted for validation.

Enum: "passport" "id-card" "driver-license" "birth-certificate" "utility-bill" "rental-receipt" "lease-agreement" "copy-credit-card" "credit-card-statement" "bank-statement" … 16 more
object (KycDocumentRejection)

Reason the document is rejected.

type
string (KycDocumentRejectionReasonTypes)

Reason the document is rejected.

Enum: "document-unreadable" "document-expired" "document-not-matching" "document-duplicate" "document-invalid" "document-not-open" "underage-person" "third-party-or-mismatch" "expiration-date-missing" "issue-date-missing" … 5 more
message
string

KYC document rejection message.

requestId
string or null <= 50 characters

ID of the KYC request.

createdTime
string <date-time> (CreatedTime)

Date and time which is set automatically when the resource is created.

updatedTime
string <date-time> (UpdatedTime)

Date and time which updates automatically when the resource is updated.

processedTime
string <date-time>

Date and time when the KYC document is processed.

reviewerId
string or null <= 50 characters

ID of the KYC document reviewer.

reviewerName
string or null

First and last name of the KYC document reviewer.

reviewStartTime
string or null <date-time>

Date and time when the manual review starts.

reviewTime
string or null <date-time>

Date and time of manual review.

notes
string or null

Reviewer notes.

Array of objects (Tag)

List of KYC document tags.

Array
name
required
string <= 255 characters ^[@~\-\.\w\s]+$

Unique name for the tag. Tag names are not case-sensitive.

type
required
string

Type of tag. Tags of a specific type can only be assigned to corresponding entity types. For example, you can only use customer tags on customers.

Enum: "customer" "kyc-document"
id
string <= 50 characters

ID of the tag.

createdTime
string <date-time> (CreatedTime)

Date and time which is set automatically when the resource is created.

updatedTime
string <date-time> (UpdatedTime)

Date and time which updates automatically when the resource is updated.

Array of objects (SelfLink)

Related links.

reason
string

Reason for uploading.

matchLevel
integer [ 1 .. 2 ]

Tolerance level setting for document matches.

object or null

Settings used to score the document.

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.

object

Pass and fail threshold definition for the document verification process.

revision
integer

Number of times the KYC document data has been modified.

Use this value when analyzing webhook data to determine if a change must take precedence over the current representation.

object

Proof of identity document matches.

score
number <double>

Calculated score that represents the percentage of confidence that this ID represents the customer.

object (IdentityMatches)

Matched identity data.

object

Parsed data.

score
number <double>

Calculated score that represents the percentage of confidence that this ID represents the customer.

object (IdentityMatches)

Matched identity data.

Array of objects

Related links.

Array
href
string

Link URL.

rel
string

Type of link.

Enum: "self" "customer"
object

Embedded objects that are requested by the expand query parameter.

customer
object
401

Unauthorized access. Invalid credentials used.

403

Access forbidden.

get/kyc-documents
Request samples
// all parameters are optional
const firstCollection = await api.kycDocuments.getAll();

// alternatively you can specify one or more of them
const params = {limit: 20, offset: 100, sort: '-createdTime'};
const secondCollection = await api.kycDocuments.getAll(params);

// access the collection items, each item is a Member
secondCollection.items.forEach(document => console.log(document.fields.documentType));
Response samples
application/json
[
  • {
    }
]