Skip to main content

Base URL

All API requests should be made to:
https://api.credprotocol.com

Authentication

All API endpoints require authentication using a Bearer token. Include your API key in the Authorization header:
Authorization: Bearer YOUR_API_KEY
Get your API key from the Dashboard.

API Endpoints

The Cred Protocol API is organized into the following categories:

Score Endpoints

EndpointMethodDescription
/api/v2/score/address/{address}GETGet credit score for a single address
/api/v2/score/GETGet aggregated score for multiple addresses
/api/v2/score/batch/GETGet individual scores for multiple addresses
/api/v2/score/address/{address}POSTGet enhanced score with off-chain data

Report Endpoints

EndpointMethodDescription
/api/v2/report/address/{address}GETGet comprehensive credit report
/api/v2/report/address/{address}POSTGet enhanced report with off-chain data
/api/v2/report/GETGet aggregated report for multiple addresses
/api/v2/report/address/{address}/summaryGETGet lightweight summary report
/api/v2/report/address/{address}/chain/{chain_id}GETGet chain-specific report
/api/v2/report/address/{address}/total/usdGETGet portfolio composition by chain
/api/v2/report/address/{address}/total/usd/aggregateGETGet total portfolio value

Identity Endpoints

EndpointMethodDescription
/api/v2/identity/address/{address}/attestationsGETGet identity attestations

Sandbox Endpoints

All production endpoints have sandbox equivalents. See Sandbox Overview for the full list.
EndpointMethodDescription
/api/v2/sandbox/score/address/{address}GETGet mock credit score
/api/v2/sandbox/report/address/{address}GETGet mock credit report

Request Format

Path Parameters

Some endpoints accept path parameters (e.g., {address}). These support:
  • Ethereum addresses: 0x742d35Cc6634C0532925a3b844Bc9e7595f0Ab17
  • ENS names: vitalik.eth

Query Parameters

Query parameters should be URL-encoded and appended to the URL:
GET /api/v2/score/batch?addresses=0x123...,0x456...

Response Format

All responses are returned in JSON format:
{
  "address": "0x...",
  "score": 847,
  "decile": 7,
  "range": "very_good",
  "model_version": "andromeda_1.0",
  "timestamp": "2024-01-15T10:30:00Z"
}

Common Response Fields

FieldTypeDescription
addressstringThe resolved Ethereum address
scoreintegerCredit score between 300-1000
decileintegerScore decile (1-10)
rangestringScore range (low, fair, good, very_good, excellent)
model_versionstringScoring model version
timestampstringISO 8601 timestamp of the response

Usage Limits

API usage is measured in Cred Units (CUs). Each endpoint consumes a specific number of CUs based on computational complexity.
PlanCred Units/MonthPrice
Free1,000$0
Pro100,000$249/mo
EnterpriseUnlimitedCustom
See the Pricing FAQ for details on Cred Units.
When you exceed your monthly limit, you’ll receive a 429 Too Many Requests response. Upgrade your plan or wait for the next billing cycle to continue making requests.

Caching

Responses are cached for 5 minutes per address to optimize performance. To force a fresh calculation, wait for the cache to expire or contact support for cache invalidation.

Error Handling

See the Error Handling Guide for detailed information on handling API errors.

Common Error Codes

CodeDescription
400Bad Request - Invalid parameters
401Unauthorized - Invalid or missing API key
404Not Found - Address not found or invalid
429Too Many Requests - Rate limit exceeded
500Internal Server Error

SDKs & Libraries

Coming soon:
  • JavaScript/TypeScript SDK
  • Python SDK
  • Go SDK
In the meantime, you can use any HTTP client to interact with the API.