API Reference v1
Veristrate API
A REST API to verify digital identities, retrieve trust scores, and react to reputation events. Available on Pro and Business plans.
Base URL: https://veristrate.com/api/public/v1
Authentication
All requests require a Bearer token. Generate one in API Keys.
Authorization: Bearer tg_live_xxxxxxxxxxxxxxxxGET /verify/:handle
Returns the public trust profile, verifications, and connection counts for a handle.
curl https://veristrate.com/api/public/v1/verify/elon \
-H "Authorization: Bearer tg_live_..."{
"handle": "elon",
"found": true,
"profile": {
"display_name": "Elon",
"country": "US",
"account_type": "individual",
"created_at": "2026-01-12T..."
},
"trust_score": {
"overall": 87,
"authenticity": 92,
"social": 78,
"network": 84,
"behavior": 90,
"professional": 86,
"consistency": 91
},
"verifications_count": 9,
"connections_count": 142
}Webhooks
Subscribe to real-time events for the user that owns the API key. Configure endpoints in Webhooks.
Available events: score.updated, alert.created, verification.completed, deepfake.analyzed.
Each request includes X-Veristrate-Signature: sha256=<hex> — HMAC of the raw body using your endpoint secret.
import crypto from "crypto";
function verify(body, header, secret) {
const expected = "sha256=" + crypto.createHmac("sha256", secret)
.update(body).digest("hex");
return crypto.timingSafeEqual(
Buffer.from(header), Buffer.from(expected)
);
}Errors
| Status | Code | Meaning |
|---|---|---|
| 401 | missing_api_key / invalid_api_key | Token absent, malformed, or revoked. |
| 402 | plan_upgrade_required | API requires Pro plan or higher. |
| 429 | rate_limited / quota_exceeded | Per-minute or monthly cap hit. |
Rate limits
- Pro: 60 req/min · 10,000 req/month
- Business: 60 req/min · 200,000 req/month