Disclosure Requests
List Disclosure Requests
List the disclosure requests your instance has made
GET
/
customers
/
api
/
disclosure-requests
curl "https://api.trusset.org/customers/api/disclosure-requests?status=APPROVED&limit=20" \
-H "X-API-Key: trusset_your_key_here"
const params = new URLSearchParams({ status: 'APPROVED', limit: '20' });
const response = await fetch(
`https://api.trusset.org/customers/api/disclosure-requests?${params}`,
{ headers: { 'X-API-Key': 'trusset_your_key_here' } }
);
const { data } = await response.json();
const { items, pagination } = data;
{
"success": true,
"data": {
"items": [
{
"id": "cmg7q3v2k0004lq08h2z9x6de",
"walletAddress": "0x801D3b83882B1047fb2CeB6C097C3ae806D8D028",
"scope": "COUNTRY",
"scopeLabel": "Reveal country",
"referenceUrl": "https://acme-capital.example/onboarding/4711",
"message": "Please confirm your country of residence for your account opening",
"status": "APPROVED",
"environment": "DEV",
"createdAt": "2026-09-30T09:30:00.000Z",
"expiresAt": "2026-10-14T09:30:00.000Z",
"respondedAt": "2026-10-01T14:05:12.000Z",
"proofLevel": "ON_CHAIN_CLAIM"
}
],
"pagination": {
"total": 1,
"limit": 20,
"offset": 0
}
},
"metadata": {
"requestId": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2026-10-01T15:00:00.000Z"
}
}
Returns the disclosure requests your instance has made, newest first. Requests made in the Issuer Portal are included.
Before the list is read, every open request of your instance past its
expiresAt is marked EXPIRED, so the statuses are current. The items carry no consent or disclosure. Fetch an approved request with Get Disclosure Request to read them.
Query Parameters
string
OPEN, APPROVED, DECLINED, EXPIRED or CANCELLED, in any case.string
Only requests to this wallet, matched in any case. Send it lowercase or correctly checksummed.
integer
default:"50"
Requests per page, from 1 to 100. A missing, zero or non-numeric value gives 50, and a larger one is capped at 100.
integer
default:"0"
Requests to skip.
Response Fields
object
Show child attributes
Show child attributes
array
The requests, each with the fields of Create Disclosure Request:
id, walletAddress, scope, scopeLabel, referenceUrl, message, status, environment, createdAt, expiresAt, respondedAt and proofLevel.object
total, the requests matching the filters, and the limit and offset that were applied.Pagination sits inside
data here, unlike the lists under /manage and /id-links, which put total in metadata.curl "https://api.trusset.org/customers/api/disclosure-requests?status=APPROVED&limit=20" \
-H "X-API-Key: trusset_your_key_here"
const params = new URLSearchParams({ status: 'APPROVED', limit: '20' });
const response = await fetch(
`https://api.trusset.org/customers/api/disclosure-requests?${params}`,
{ headers: { 'X-API-Key': 'trusset_your_key_here' } }
);
const { data } = await response.json();
const { items, pagination } = data;
{
"success": true,
"data": {
"items": [
{
"id": "cmg7q3v2k0004lq08h2z9x6de",
"walletAddress": "0x801D3b83882B1047fb2CeB6C097C3ae806D8D028",
"scope": "COUNTRY",
"scopeLabel": "Reveal country",
"referenceUrl": "https://acme-capital.example/onboarding/4711",
"message": "Please confirm your country of residence for your account opening",
"status": "APPROVED",
"environment": "DEV",
"createdAt": "2026-09-30T09:30:00.000Z",
"expiresAt": "2026-10-14T09:30:00.000Z",
"respondedAt": "2026-10-01T14:05:12.000Z",
"proofLevel": "ON_CHAIN_CLAIM"
}
],
"pagination": {
"total": 1,
"limit": 20,
"offset": 0
}
},
"metadata": {
"requestId": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2026-10-01T15:00:00.000Z"
}
}
Error Codes
| Code | HTTP | Cause |
|---|---|---|
VALIDATION_ERROR | 400 | status is not one of the five states |
INVALID_ADDRESS | 400 | walletAddress is not 0x and 40 hex characters |
LIST_DISCLOSURE_REQUESTS_FAILED | 500 | The requests could not be read. A mixed-case walletAddress with a wrong checksum also ends here |
⌘I
curl "https://api.trusset.org/customers/api/disclosure-requests?status=APPROVED&limit=20" \
-H "X-API-Key: trusset_your_key_here"
const params = new URLSearchParams({ status: 'APPROVED', limit: '20' });
const response = await fetch(
`https://api.trusset.org/customers/api/disclosure-requests?${params}`,
{ headers: { 'X-API-Key': 'trusset_your_key_here' } }
);
const { data } = await response.json();
const { items, pagination } = data;
{
"success": true,
"data": {
"items": [
{
"id": "cmg7q3v2k0004lq08h2z9x6de",
"walletAddress": "0x801D3b83882B1047fb2CeB6C097C3ae806D8D028",
"scope": "COUNTRY",
"scopeLabel": "Reveal country",
"referenceUrl": "https://acme-capital.example/onboarding/4711",
"message": "Please confirm your country of residence for your account opening",
"status": "APPROVED",
"environment": "DEV",
"createdAt": "2026-09-30T09:30:00.000Z",
"expiresAt": "2026-10-14T09:30:00.000Z",
"respondedAt": "2026-10-01T14:05:12.000Z",
"proofLevel": "ON_CHAIN_CLAIM"
}
],
"pagination": {
"total": 1,
"limit": 20,
"offset": 0
}
},
"metadata": {
"requestId": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2026-10-01T15:00:00.000Z"
}
}
