List Documents
The identity documents on a customer's verification record, whether each upload was confirmed, and the size limits that apply, so you can check a file before presigning it.
Takes a workspace-scoped API key or a dashboard session. An account-scoped key is refused with 401.
New in v3: v2 has no equivalent.
Authorization:
Every request is signed with your API key: a short-lived JWT, signed with your private key, sent in one header on /v3/* and /api/v2/* alike.
Headers:
Authorization: APIKey {SIGNED_JWT}
How to build and sign the JWT: Authentication.
Endpoint
/v3/customers/{customer_id}/kyc/documents
Path parameters
| Parameter | Type | Description |
|---|---|---|
customer_id | string (cst_…) | Required. The customer. |
Response Sample
{
"documents": [
{
"document_id": "doc_01k8x4nbk0ec68vk3954qmbskr",
"slot": "face",
"state": "ready",
"size_bytes": 412311,
"content_type": "image/jpeg",
"file_name": "selfie.jpg"
},
{
"document_id": "doc_01k8x4q660fmpa2fzyf5wwq7m6",
"slot": "document-front",
"state": "pending",
"size_bytes": 524288,
"content_type": "image/png",
"file_name": "passport-front.png"
}
],
"remaining_bytes": 6403433,
"max_document_bytes": 3145728
}
Answers 204 No Content, with no body, when the customer has no record yet.
Response Schema
| Field | Type | Description |
|---|---|---|
documents | array | The record's documents, one per slot at most. |
documents[].document_id | string (doc_…) | The document. |
documents[].slot | string | face, document-front or document-back. |
documents[].state | string | pending: presigned, upload not confirmed. ready: completed. |
documents[].size_bytes | integer | The size declared at presign while pending; the real size once ready. |
documents[].content_type | string | application/pdf, image/jpeg or image/png. |
documents[].file_name | string | The uploader's file name. Absent when none was given, and on documents uploaded through v2. |
remaining_bytes | integer | What is left of the record's budget. Pending documents count against it. |
max_document_bytes | integer | The per-file limit. |
Errors
| Status | message | When |
|---|---|---|
400 | failed to parse request | customer_id is not a cst_… TypeID. |
401 | unauthorized | Missing or invalid signature, or the caller is an account-scoped key or a customer session. |
403 | forbidden | A dashboard member whose role does not allow this. A workspace-scoped key always may. |
Support and Resources
If you need assistance or have any questions, our support team is here to help. You can contact our support team at support@blockwyre.com.
Stay Updated
Stay up-to-date with the latest news, updates, and features from BlockWyre by following us on social media:
- Instagram: BlockWyre Instagram
- Twitter: BlockWyre Twitter
- Facebook: BlockWyre Facebook
- LinkedIn: BlockWyre LinkedIn
We are excited to have you on board and look forward to seeing how you leverage BlockWyre's powerful tools to enhance your financial operations. Happy integrating!