Eligibility Registers
List Admissions
Wallets waiting for, holding or leaving a place on an eligibility register
GET
/
customers
/
api
/
eligibility
/
admissions
curl "https://api.trusset.org/customers/api/eligibility/admissions?profileKey=PROFESSIONAL&status=PENDING,REMOVAL_PENDING" \
-H "X-API-Key: trusset_your_key_here"
const params = new URLSearchParams({ profileKey: 'PROFESSIONAL', status: 'PENDING,REMOVAL_PENDING' });
const response = await fetch(
`https://api.trusset.org/customers/api/eligibility/admissions?${params}`,
{ headers: { 'X-API-Key': 'trusset_your_key_here' } }
);
const { data } = await response.json();
const toAdmit = data.rows.filter((row: { status: string }) => row.status === 'PENDING');
const toRemove = data.rows.filter((row: { status: string }) => row.status === 'REMOVAL_PENDING');
{
"success": true,
"data": {
"rows": [
{
"id": "cmgdz1k4p0003l40a2r5w8y1n",
"profileKey": "PROFESSIONAL",
"profileName": "Professional",
"registryAddress": "0x4f2A9c81D06e3b75A1C8E24D9B07f56E3a1d8C90",
"walletAddress": "0xfF21b8AC28Bb6A20c1c0160AF42303D2946B99EA",
"customerId": "cmgdy2b7r0004l40a9c3e6f2h",
"status": "PENDING",
"source": "API",
"sourceRef": null,
"lapsed": false,
"current": true,
"requirementsHash": "0x8919ea37bac1f44ea0e8a37529be970cb49e9779ebd4c4e98490cfd754e9d390",
"dueAt": null,
"admittedTxHash": null,
"admittedAt": null,
"removalReason": null,
"removalTxHash": null,
"removedAt": null,
"signedBy": null,
"error": null,
"createdAt": "2026-10-05T10:47:09.512Z",
"updatedAt": "2026-10-05T10:47:09.512Z"
},
{
"id": "cmgdz1k4p0002l40a8t6x3v9q",
"profileKey": "PROFESSIONAL",
"profileName": "Professional",
"registryAddress": "0x4f2A9c81D06e3b75A1C8E24D9B07f56E3a1d8C90",
"walletAddress": "0x2D27abCA46009EEF7D73eD1B1e913809f2280bE6",
"customerId": "cmgdv8h2c0002l30a4n7q1z5k",
"status": "REMOVAL_PENDING",
"source": "KYC_LINK",
"sourceRef": "cmgdv7f1b0001l30a9e3m6x2p",
"lapsed": false,
"current": true,
"requirementsHash": "0x8919ea37bac1f44ea0e8a37529be970cb49e9779ebd4c4e98490cfd754e9d390",
"dueAt": "2027-10-05T09:15:24.000Z",
"admittedTxHash": "0xf74c4d459825fd4ed545a14911d0ac951aa378cf40924b9c75036c1e85080f8b",
"admittedAt": "2026-10-05T09:15:24.000Z",
"removalReason": "REVOKED",
"removalTxHash": null,
"removedAt": null,
"signedBy": "0xCD92134767aEC2562be15d2a2062A082dA17dD84",
"error": null,
"createdAt": "2026-10-05T09:02:51.204Z",
"updatedAt": "2026-10-05T10:31:18.877Z"
}
],
"pagination": {
"page": 1,
"limit": 50,
"total": 2,
"totalPages": 1
}
},
"error": null,
"metadata": {
"requestId": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2026-10-05T12:00:00.000Z"
}
}
Lists the admissions of your instance, newest first. An admission tracks one wallet on the eligibility register of one verification profile, from the moment it is queued until it is removed. See Eligibility registers.
A
status follows what your wallet signed and what the chain reports. An admission turns ADMITTED or REMOVED only when a confirm reads the transaction from the chain, so a wallet you queued is not on the register until then.
status | Meaning |
|---|---|
PENDING | Waiting for your wallet to admit it. Build Admission picks it up |
ADMITTED | On the register, confirmed from the chain |
REMOVAL_PENDING | Still on the register, waiting for your wallet to remove it. Build Removal picks it up |
REMOVED | Removed from the register, confirmed from the chain |
CANCELLED | Withdrawn before it was signed: by a removal request, by a build that found the wallet’s country blocked on your instance register, or because the profile was unbound from the register |
source | Queued by |
|---|---|
KYC_LINK | An approved ID link review. sourceRef is the link id |
VERIFICATION | A registration on your instance register through Verify Identity, Batch Verify or the pending queue |
API | Request Admission |
MANUAL | The Issuer Portal |
CHAIN | Nothing. A confirm found the wallet registered by a transaction no admission was queued for |
removalReason | Why the removal was queued |
|---|---|
LAPSED | The profile’s reverifyDays passed since the wallet was admitted |
REVOKED | The wallet’s identity was revoked on your instance register |
REJECTED | An ID link review for the wallet was rejected or refused under its profile |
COUNTRY_BLOCKED | The customer’s country is blocked by the profile |
MANUAL | A removal request that named no other reason |
REMOVAL_PENDING admission can still be withdrawn. A fresh verification of the customer withdraws a LAPSED, REVOKED or REJECTED removal. A MANUAL or COUNTRY_BLOCKED removal is withdrawn only by your own request. See A wallet waiting for removal.
Query Parameters
string
Only admissions under this profile key, in any letter case.
string
One status, or several separated by commas, such as
PENDING,REMOVAL_PENDING. In any case. Unknown values are ignored, and a list with none left applies no filter.string
Only this wallet. A malformed address applies no filter.
string
Only admissions linked to this customer record.
integer
default:"1"
Page number. Values below 1 read as 1.
integer
default:"50"
Admissions per page, from 1 to 200.
0 or a value that is not a number reads as 50.Response Fields
object
array
Every endpoint under
/eligibility that returns an admission uses this shape.Show child attributes
Show child attributes
string
Admission ID. The builds take it in
ids.string
The verification profile.
string
The profile’s name, or
null when the profile could not be read.string
The eligibility register, checksummed.
string
The wallet, checksummed.
string
The customer record holding the wallet, or
null.string
PENDING, ADMITTED, REMOVAL_PENDING, REMOVED or CANCELLED.string
KYC_LINK, VERIFICATION, API, MANUAL or CHAIN.string
The ID link, checkout or other record behind the admission, or
null.boolean
true when the admission is ADMITTED and dueAt has passed. Its removal is then queued with reason LAPSED.boolean
Whether
requirementsHash equals the profile’s current one. false means the profile’s requirements changed after the admission was requested. null when the profile could not be read.string
The profile’s requirements hash when the admission was last requested.
string
When the admission lapses: the profile’s
reverifyDays counted from the admission, or from the latest verification of the customer or request with confirmEligibility: true that renewed it. null when the profile sets none, or before the wallet is admitted.string
The transaction that put the wallet on the register, or
null.string
The block time of
admittedTxHash, or the time a build found the wallet already on the register. ISO 8601, or null.string
LAPSED, REVOKED, REJECTED, COUNTRY_BLOCKED or MANUAL, or null.string
The transaction that removed the wallet, or
null.string
The block time of
removalTxHash, or the time a build found the wallet already gone from the register. ISO 8601, or null.string
The wallet that sent the last confirmed admitting or removing transaction, checksummed, or
null.string
Why the admission stopped, such as a profile unbound from its register, or
null.string
ISO 8601.
string
ISO 8601.
curl "https://api.trusset.org/customers/api/eligibility/admissions?profileKey=PROFESSIONAL&status=PENDING,REMOVAL_PENDING" \
-H "X-API-Key: trusset_your_key_here"
const params = new URLSearchParams({ profileKey: 'PROFESSIONAL', status: 'PENDING,REMOVAL_PENDING' });
const response = await fetch(
`https://api.trusset.org/customers/api/eligibility/admissions?${params}`,
{ headers: { 'X-API-Key': 'trusset_your_key_here' } }
);
const { data } = await response.json();
const toAdmit = data.rows.filter((row: { status: string }) => row.status === 'PENDING');
const toRemove = data.rows.filter((row: { status: string }) => row.status === 'REMOVAL_PENDING');
{
"success": true,
"data": {
"rows": [
{
"id": "cmgdz1k4p0003l40a2r5w8y1n",
"profileKey": "PROFESSIONAL",
"profileName": "Professional",
"registryAddress": "0x4f2A9c81D06e3b75A1C8E24D9B07f56E3a1d8C90",
"walletAddress": "0xfF21b8AC28Bb6A20c1c0160AF42303D2946B99EA",
"customerId": "cmgdy2b7r0004l40a9c3e6f2h",
"status": "PENDING",
"source": "API",
"sourceRef": null,
"lapsed": false,
"current": true,
"requirementsHash": "0x8919ea37bac1f44ea0e8a37529be970cb49e9779ebd4c4e98490cfd754e9d390",
"dueAt": null,
"admittedTxHash": null,
"admittedAt": null,
"removalReason": null,
"removalTxHash": null,
"removedAt": null,
"signedBy": null,
"error": null,
"createdAt": "2026-10-05T10:47:09.512Z",
"updatedAt": "2026-10-05T10:47:09.512Z"
},
{
"id": "cmgdz1k4p0002l40a8t6x3v9q",
"profileKey": "PROFESSIONAL",
"profileName": "Professional",
"registryAddress": "0x4f2A9c81D06e3b75A1C8E24D9B07f56E3a1d8C90",
"walletAddress": "0x2D27abCA46009EEF7D73eD1B1e913809f2280bE6",
"customerId": "cmgdv8h2c0002l30a4n7q1z5k",
"status": "REMOVAL_PENDING",
"source": "KYC_LINK",
"sourceRef": "cmgdv7f1b0001l30a9e3m6x2p",
"lapsed": false,
"current": true,
"requirementsHash": "0x8919ea37bac1f44ea0e8a37529be970cb49e9779ebd4c4e98490cfd754e9d390",
"dueAt": "2027-10-05T09:15:24.000Z",
"admittedTxHash": "0xf74c4d459825fd4ed545a14911d0ac951aa378cf40924b9c75036c1e85080f8b",
"admittedAt": "2026-10-05T09:15:24.000Z",
"removalReason": "REVOKED",
"removalTxHash": null,
"removedAt": null,
"signedBy": "0xCD92134767aEC2562be15d2a2062A082dA17dD84",
"error": null,
"createdAt": "2026-10-05T09:02:51.204Z",
"updatedAt": "2026-10-05T10:31:18.877Z"
}
],
"pagination": {
"page": 1,
"limit": 50,
"total": 2,
"totalPages": 1
}
},
"error": null,
"metadata": {
"requestId": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2026-10-05T12:00:00.000Z"
}
}
Error Codes
| Code | HTTP | Cause |
|---|---|---|
LIST_ADMISSIONS_FAILED | 500 | The admissions could not be read |
⌘I
curl "https://api.trusset.org/customers/api/eligibility/admissions?profileKey=PROFESSIONAL&status=PENDING,REMOVAL_PENDING" \
-H "X-API-Key: trusset_your_key_here"
const params = new URLSearchParams({ profileKey: 'PROFESSIONAL', status: 'PENDING,REMOVAL_PENDING' });
const response = await fetch(
`https://api.trusset.org/customers/api/eligibility/admissions?${params}`,
{ headers: { 'X-API-Key': 'trusset_your_key_here' } }
);
const { data } = await response.json();
const toAdmit = data.rows.filter((row: { status: string }) => row.status === 'PENDING');
const toRemove = data.rows.filter((row: { status: string }) => row.status === 'REMOVAL_PENDING');
{
"success": true,
"data": {
"rows": [
{
"id": "cmgdz1k4p0003l40a2r5w8y1n",
"profileKey": "PROFESSIONAL",
"profileName": "Professional",
"registryAddress": "0x4f2A9c81D06e3b75A1C8E24D9B07f56E3a1d8C90",
"walletAddress": "0xfF21b8AC28Bb6A20c1c0160AF42303D2946B99EA",
"customerId": "cmgdy2b7r0004l40a9c3e6f2h",
"status": "PENDING",
"source": "API",
"sourceRef": null,
"lapsed": false,
"current": true,
"requirementsHash": "0x8919ea37bac1f44ea0e8a37529be970cb49e9779ebd4c4e98490cfd754e9d390",
"dueAt": null,
"admittedTxHash": null,
"admittedAt": null,
"removalReason": null,
"removalTxHash": null,
"removedAt": null,
"signedBy": null,
"error": null,
"createdAt": "2026-10-05T10:47:09.512Z",
"updatedAt": "2026-10-05T10:47:09.512Z"
},
{
"id": "cmgdz1k4p0002l40a8t6x3v9q",
"profileKey": "PROFESSIONAL",
"profileName": "Professional",
"registryAddress": "0x4f2A9c81D06e3b75A1C8E24D9B07f56E3a1d8C90",
"walletAddress": "0x2D27abCA46009EEF7D73eD1B1e913809f2280bE6",
"customerId": "cmgdv8h2c0002l30a4n7q1z5k",
"status": "REMOVAL_PENDING",
"source": "KYC_LINK",
"sourceRef": "cmgdv7f1b0001l30a9e3m6x2p",
"lapsed": false,
"current": true,
"requirementsHash": "0x8919ea37bac1f44ea0e8a37529be970cb49e9779ebd4c4e98490cfd754e9d390",
"dueAt": "2027-10-05T09:15:24.000Z",
"admittedTxHash": "0xf74c4d459825fd4ed545a14911d0ac951aa378cf40924b9c75036c1e85080f8b",
"admittedAt": "2026-10-05T09:15:24.000Z",
"removalReason": "REVOKED",
"removalTxHash": null,
"removedAt": null,
"signedBy": "0xCD92134767aEC2562be15d2a2062A082dA17dD84",
"error": null,
"createdAt": "2026-10-05T09:02:51.204Z",
"updatedAt": "2026-10-05T10:31:18.877Z"
}
],
"pagination": {
"page": 1,
"limit": 50,
"total": 2,
"totalPages": 1
}
},
"error": null,
"metadata": {
"requestId": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2026-10-05T12:00:00.000Z"
}
}
