Identity Verification
Batch Verify Identities
Verify multiple customer identities on-chain in a single transaction
POST
/
customers
/
api
/
identity
/
batch-verify
curl -X POST "https://api.trusset.org/customers/api/identity/batch-verify" \
-H "Content-Type: application/json" \
-H "X-API-Key: trusset_abc123xy_secret..." \
-d '{
"entries": [
{ "walletAddress": "0xAbC123...", "country": "DE", "investorType": "PROFESSIONAL" },
{ "walletAddress": "0xDef456...", "country": "FR", "investorType": "RETAIL" }
]
}'
const response = await fetch(
'https://api.trusset.org/customers/api/identity/batch-verify',
{
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-API-Key': 'trusset_abc123xy_secret...'
},
body: JSON.stringify({
entries: [
{ walletAddress: '0xAbC123...', country: 'DE', investorType: 'PROFESSIONAL' },
{ walletAddress: '0xDef456...', country: 'FR', investorType: 'RETAIL' }
]
})
}
);
const { data } = await response.json();
console.log(`Verified ${data.totalEntries} identities: ${data.txHash}`);
{
"success": true,
"data": {
"totalEntries": 2,
"txHash": "0xabc123def456789012345678901234567890abc123def456789012345678901234",
"gasUsed": "168042"
},
"metadata": {
"requestId": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2025-06-15T12:00:00.000Z"
}
}
{
"success": false,
"error": {
"code": "INVALID_INPUT",
"message": "Provide 1-500 entries"
},
"metadata": {
"requestId": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2025-06-15T12:00:00.000Z"
}
}
Submits a batch of identity verifications to the on-chain registry. Invalid entries (malformed addresses, missing country) are silently filtered out. The remaining valid entries are verified in a single transaction and their off-chain records are created or updated.
Request Body
Array of identity objects to verify. Minimum 1, maximum 500 entries. Each entry accepts the same fields as Verify Identity.
Show child attributes
Show child attributes
Response Fields
Request status
curl -X POST "https://api.trusset.org/customers/api/identity/batch-verify" \
-H "Content-Type: application/json" \
-H "X-API-Key: trusset_abc123xy_secret..." \
-d '{
"entries": [
{ "walletAddress": "0xAbC123...", "country": "DE", "investorType": "PROFESSIONAL" },
{ "walletAddress": "0xDef456...", "country": "FR", "investorType": "RETAIL" }
]
}'
const response = await fetch(
'https://api.trusset.org/customers/api/identity/batch-verify',
{
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-API-Key': 'trusset_abc123xy_secret...'
},
body: JSON.stringify({
entries: [
{ walletAddress: '0xAbC123...', country: 'DE', investorType: 'PROFESSIONAL' },
{ walletAddress: '0xDef456...', country: 'FR', investorType: 'RETAIL' }
]
})
}
);
const { data } = await response.json();
console.log(`Verified ${data.totalEntries} identities: ${data.txHash}`);
{
"success": true,
"data": {
"totalEntries": 2,
"txHash": "0xabc123def456789012345678901234567890abc123def456789012345678901234",
"gasUsed": "168042"
},
"metadata": {
"requestId": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2025-06-15T12:00:00.000Z"
}
}
{
"success": false,
"error": {
"code": "INVALID_INPUT",
"message": "Provide 1-500 entries"
},
"metadata": {
"requestId": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2025-06-15T12:00:00.000Z"
}
}
⌘I
curl -X POST "https://api.trusset.org/customers/api/identity/batch-verify" \
-H "Content-Type: application/json" \
-H "X-API-Key: trusset_abc123xy_secret..." \
-d '{
"entries": [
{ "walletAddress": "0xAbC123...", "country": "DE", "investorType": "PROFESSIONAL" },
{ "walletAddress": "0xDef456...", "country": "FR", "investorType": "RETAIL" }
]
}'
const response = await fetch(
'https://api.trusset.org/customers/api/identity/batch-verify',
{
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-API-Key': 'trusset_abc123xy_secret...'
},
body: JSON.stringify({
entries: [
{ walletAddress: '0xAbC123...', country: 'DE', investorType: 'PROFESSIONAL' },
{ walletAddress: '0xDef456...', country: 'FR', investorType: 'RETAIL' }
]
})
}
);
const { data } = await response.json();
console.log(`Verified ${data.totalEntries} identities: ${data.txHash}`);
{
"success": true,
"data": {
"totalEntries": 2,
"txHash": "0xabc123def456789012345678901234567890abc123def456789012345678901234",
"gasUsed": "168042"
},
"metadata": {
"requestId": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2025-06-15T12:00:00.000Z"
}
}
{
"success": false,
"error": {
"code": "INVALID_INPUT",
"message": "Provide 1-500 entries"
},
"metadata": {
"requestId": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2025-06-15T12:00:00.000Z"
}
}
