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_xxxxxxxxxxxxxxxx

GET /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

StatusCodeMeaning
401missing_api_key / invalid_api_keyToken absent, malformed, or revoked.
402plan_upgrade_requiredAPI requires Pro plan or higher.
429rate_limited / quota_exceededPer-minute or monthly cap hit.

Rate limits

  • Pro: 60 req/min · 10,000 req/month
  • Business: 60 req/min · 200,000 req/month