List contracts
curl --request GET \
--url https://api.verify.privue.ai/contracts \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.verify.privue.ai/contracts"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.verify.privue.ai/contracts', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"contracts": [
{
"id": "5e0c9a41-7b2d-4f68-a3c1-9d8e2f60b7a4",
"verification_id": "3f2504e0-4f89-41d3-9a0c-0305e82c3301",
"run": 1,
"contract_workflow": "dealer-agreement",
"name": "Dealer agreement",
"status": "signed",
"sent_at": "2026-08-10T16:12:40",
"expires_at": "2026-08-24T16:12:40",
"withdrawal_asked_at": null,
"settled_at": "2026-08-11T10:03:27",
"values": {
"dealer_name": "Asha Traders Private Limited",
"gstin": "27AABCA1234F1Z5",
"credit_limit": "5,00,000",
"start_date": "1 November 2026"
},
"note": "Credit limit as agreed with the regional head",
"signers": [
{
"name": "Asha Rao",
"mobile": "9876543210",
"email": "asha@ashatraders.example",
"status": "signed",
"signed_at": "2026-08-11T10:03:22",
"link": null,
"failure": null,
"attempts": 1,
"aadhaar": {
"name": "Asha Rao",
"year_of_birth": "1984",
"gender": "F",
"pincode": "411026",
"state": "Maharashtra",
"uid_last_four": "4821"
},
"messages": [
{
"kind": "signing-link",
"channel": "sms",
"sent_at": "2026-08-10T16:12:41",
"delivered": true,
"tries": 1,
"detail": "Message successfully delivered to the user"
},
{
"kind": "confirmation",
"channel": "sms",
"sent_at": "2026-08-11T10:03:24",
"delivered": true,
"tries": 1,
"detail": "Message successfully delivered to the user"
},
{
"kind": "audit-certificate",
"channel": "sms",
"sent_at": "2026-08-11T10:03:28",
"delivered": true,
"tries": 1,
"detail": "Message successfully delivered to the user"
}
]
}
],
"stamp_paper": null,
"sent_document": {
"sha256": "0ca1d2c5c03e9bed744a4c3d18b6e2f71a9c05d4e83b27f6a1d9c4e05b72f3a8",
"size_bytes": 29412
},
"signed_files": {
"signed_document": {
"sha256": "9f2c4e81b7d03a65c1e8f4a27b90d5c3e6a1f8b2d4c7e09a3b5f61d8c2e4a7b0",
"size_bytes": 184213
},
"audit_certificate": {
"sha256": "4b7e1a93c2d8f05e6a3c9b17d4e2f80a5c6b3d91e7f2a4c08b5d3e6f1a9c2b74",
"size_bytes": 92418
}
},
"callback": {
"status": "delivered",
"settled_at": "2026-08-11T10:03:29",
"reason": null
},
"workflow_key": "merchant-onboarding",
"reference_user_id": "merchant-42"
}
],
"next_cursor": null
}{
"code": "workflow-not-found",
"detail": "client 'acme' has no workflow 'merchant-onboarding'"
}{
"code": "unauthenticated",
"detail": "Missing or malformed Authorization header"
}{
"code": "client-not-enrolled",
"detail": "no active verification client 4b8f21c6-59ad-4a70-9e11-7c3d0a52f8b4"
}{
"code": "page-cursor-invalid",
"detail": "cursor: not one we issued"
}{
"code": "rate-limited",
"detail": "Unauthorized: RATE_LIMITED"
}{
"code": "auth-unavailable",
"detail": "Auth provider unavailable"
}Contracts
List contracts
List the contracts sent on the verifications in your API key’s environment, newest sent first.
Every contract as it stands, with the workflow and your reference of the verification it was sent on. Narrow it by status, by contract workflow, by workflow, by your reference, or to one verification or one contract. Read next_cursor from a page and pass it back as cursor for the page after it; the page that carries none is the last.
GET
/
contracts
List contracts
curl --request GET \
--url https://api.verify.privue.ai/contracts \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.verify.privue.ai/contracts"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.verify.privue.ai/contracts', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"contracts": [
{
"id": "5e0c9a41-7b2d-4f68-a3c1-9d8e2f60b7a4",
"verification_id": "3f2504e0-4f89-41d3-9a0c-0305e82c3301",
"run": 1,
"contract_workflow": "dealer-agreement",
"name": "Dealer agreement",
"status": "signed",
"sent_at": "2026-08-10T16:12:40",
"expires_at": "2026-08-24T16:12:40",
"withdrawal_asked_at": null,
"settled_at": "2026-08-11T10:03:27",
"values": {
"dealer_name": "Asha Traders Private Limited",
"gstin": "27AABCA1234F1Z5",
"credit_limit": "5,00,000",
"start_date": "1 November 2026"
},
"note": "Credit limit as agreed with the regional head",
"signers": [
{
"name": "Asha Rao",
"mobile": "9876543210",
"email": "asha@ashatraders.example",
"status": "signed",
"signed_at": "2026-08-11T10:03:22",
"link": null,
"failure": null,
"attempts": 1,
"aadhaar": {
"name": "Asha Rao",
"year_of_birth": "1984",
"gender": "F",
"pincode": "411026",
"state": "Maharashtra",
"uid_last_four": "4821"
},
"messages": [
{
"kind": "signing-link",
"channel": "sms",
"sent_at": "2026-08-10T16:12:41",
"delivered": true,
"tries": 1,
"detail": "Message successfully delivered to the user"
},
{
"kind": "confirmation",
"channel": "sms",
"sent_at": "2026-08-11T10:03:24",
"delivered": true,
"tries": 1,
"detail": "Message successfully delivered to the user"
},
{
"kind": "audit-certificate",
"channel": "sms",
"sent_at": "2026-08-11T10:03:28",
"delivered": true,
"tries": 1,
"detail": "Message successfully delivered to the user"
}
]
}
],
"stamp_paper": null,
"sent_document": {
"sha256": "0ca1d2c5c03e9bed744a4c3d18b6e2f71a9c05d4e83b27f6a1d9c4e05b72f3a8",
"size_bytes": 29412
},
"signed_files": {
"signed_document": {
"sha256": "9f2c4e81b7d03a65c1e8f4a27b90d5c3e6a1f8b2d4c7e09a3b5f61d8c2e4a7b0",
"size_bytes": 184213
},
"audit_certificate": {
"sha256": "4b7e1a93c2d8f05e6a3c9b17d4e2f80a5c6b3d91e7f2a4c08b5d3e6f1a9c2b74",
"size_bytes": 92418
}
},
"callback": {
"status": "delivered",
"settled_at": "2026-08-11T10:03:29",
"reason": null
},
"workflow_key": "merchant-onboarding",
"reference_user_id": "merchant-42"
}
],
"next_cursor": null
}{
"code": "workflow-not-found",
"detail": "client 'acme' has no workflow 'merchant-onboarding'"
}{
"code": "unauthenticated",
"detail": "Missing or malformed Authorization header"
}{
"code": "client-not-enrolled",
"detail": "no active verification client 4b8f21c6-59ad-4a70-9e11-7c3d0a52f8b4"
}{
"code": "page-cursor-invalid",
"detail": "cursor: not one we issued"
}{
"code": "rate-limited",
"detail": "Unauthorized: RATE_LIMITED"
}{
"code": "auth-unavailable",
"detail": "Auth provider unavailable"
}