curl -X GET "https://api.credprotocol.com/api/v2/score/batch/?address=vitalik.eth,0x742d35Cc6634C0532925a3b844Bc9e7595f0Ab17" \
-H "Authorization: Bearer YOUR_API_KEY"
const addresses = ['vitalik.eth', '0x742d35Cc6634C0532925a3b844Bc9e7595f0Ab17'];
const response = await fetch(
`https://api.credprotocol.com/api/v2/score/batch/?address=${addresses.join(',')}`,
{
headers: {
'Authorization': 'Bearer YOUR_API_KEY'
}
}
);
const data = await response.json();
console.log(data.scores);
import requests
addresses = ['vitalik.eth', '0x742d35Cc6634C0532925a3b844Bc9e7595f0Ab17']
response = requests.get(
'https://api.credprotocol.com/api/v2/score/batch/',
params={'address': ','.join(addresses)},
headers={'Authorization': 'Bearer YOUR_API_KEY'}
)
data = response.json()
print(data['scores'])
{
"scores": [
{
"address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"score": 847,
"decile": 7,
"range": "very_good",
"model_version": "andromeda_1.0",
"timestamp": "2024-01-15T10:30:00Z"
},
{
"address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0Ab17",
"score": 765,
"decile": 5,
"range": "good",
"model_version": "andromeda_1.0",
"timestamp": "2024-01-15T10:30:00Z"
}
],
"count": 2
}
{
"detail": "Too many addresses. Maximum is 100 per request."
}
Score
Batch Credit Scores
Get individual credit scores for multiple Ethereum addresses in a single request
GET
/
api
/
v2
/
score
/
batch
/
curl -X GET "https://api.credprotocol.com/api/v2/score/batch/?address=vitalik.eth,0x742d35Cc6634C0532925a3b844Bc9e7595f0Ab17" \
-H "Authorization: Bearer YOUR_API_KEY"
const addresses = ['vitalik.eth', '0x742d35Cc6634C0532925a3b844Bc9e7595f0Ab17'];
const response = await fetch(
`https://api.credprotocol.com/api/v2/score/batch/?address=${addresses.join(',')}`,
{
headers: {
'Authorization': 'Bearer YOUR_API_KEY'
}
}
);
const data = await response.json();
console.log(data.scores);
import requests
addresses = ['vitalik.eth', '0x742d35Cc6634C0532925a3b844Bc9e7595f0Ab17']
response = requests.get(
'https://api.credprotocol.com/api/v2/score/batch/',
params={'address': ','.join(addresses)},
headers={'Authorization': 'Bearer YOUR_API_KEY'}
)
data = response.json()
print(data['scores'])
{
"scores": [
{
"address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"score": 847,
"decile": 7,
"range": "very_good",
"model_version": "andromeda_1.0",
"timestamp": "2024-01-15T10:30:00Z"
},
{
"address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0Ab17",
"score": 765,
"decile": 5,
"range": "good",
"model_version": "andromeda_1.0",
"timestamp": "2024-01-15T10:30:00Z"
}
],
"count": 2
}
{
"detail": "Too many addresses. Maximum is 100 per request."
}
Overview
Returns credit scores for multiple Ethereum addresses in a single API call. This is more efficient than making individual requests when you need to score multiple addresses.Maximum of 100 addresses per batch request.
Query Parameters
string
required
Comma-separated list of Ethereum addresses or ENS names (e.g.,
address=0x123...,0x456...,vitalik.eth)Response
array
Array of score results for each address
string
The resolved Ethereum address (checksummed)
integer
Credit score between 300 and 1000
integer
Score decile from 1 to 10
string
Score range:
low, fair, good, very_good, or excellentstring
The scoring model version (currently
andromeda_1.0)string
ISO 8601 timestamp when the score was calculated
integer
Total number of scores returned
Use Cases
- Portfolio Analysis: Score all addresses in a user’s portfolio
- Batch Verification: Check creditworthiness of multiple counterparties
- Risk Assessment: Evaluate a list of addresses for lending decisions
curl -X GET "https://api.credprotocol.com/api/v2/score/batch/?address=vitalik.eth,0x742d35Cc6634C0532925a3b844Bc9e7595f0Ab17" \
-H "Authorization: Bearer YOUR_API_KEY"
const addresses = ['vitalik.eth', '0x742d35Cc6634C0532925a3b844Bc9e7595f0Ab17'];
const response = await fetch(
`https://api.credprotocol.com/api/v2/score/batch/?address=${addresses.join(',')}`,
{
headers: {
'Authorization': 'Bearer YOUR_API_KEY'
}
}
);
const data = await response.json();
console.log(data.scores);
import requests
addresses = ['vitalik.eth', '0x742d35Cc6634C0532925a3b844Bc9e7595f0Ab17']
response = requests.get(
'https://api.credprotocol.com/api/v2/score/batch/',
params={'address': ','.join(addresses)},
headers={'Authorization': 'Bearer YOUR_API_KEY'}
)
data = response.json()
print(data['scores'])
{
"scores": [
{
"address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"score": 847,
"decile": 7,
"range": "very_good",
"model_version": "andromeda_1.0",
"timestamp": "2024-01-15T10:30:00Z"
},
{
"address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0Ab17",
"score": 765,
"decile": 5,
"range": "good",
"model_version": "andromeda_1.0",
"timestamp": "2024-01-15T10:30:00Z"
}
],
"count": 2
}
{
"detail": "Too many addresses. Maximum is 100 per request."
}
Performance Notes
- Response Time: Typically 2-5 seconds for 10 addresses, longer for larger batches
- Caching: Individual address scores are cached for 5 minutes
- Parallelization: Requests are processed in parallel for optimal performance
Batch requests count as multiple API calls against your quota (one per address).