ScamVerify™
Phone

Phone Number Lookup

Look up a U.S. phone number against FTC/FCC complaint databases, carrier records, robocall detection, community reports, and AI synthesis. Returns a risk score (0-100), verdict, confidence level, detailed signals, and an AI-generated plain-English explanation. **Data sources checked:** FTC Do Not Call (2.79M+ records), FCC Consumer Complaints, Twilio (carrier, CNAM, line type), Robocall Detection Database, IPQS phone reputation, community reports, 18 flagged high-risk VoIP carriers. **Caching:** Results are cached for 24 hours. Use `force_refresh: true` to bypass cache (still counts toward quota). Cached lookups do not consume quota.

POST
/phone/lookup

Look up a U.S. phone number against FTC/FCC complaint databases, carrier records, robocall detection, community reports, and AI synthesis.

Returns a risk score (0-100), verdict, confidence level, detailed signals, and an AI-generated plain-English explanation.

Data sources checked: FTC Do Not Call (2.79M+ records), FCC Consumer Complaints, Twilio (carrier, CNAM, line type), Robocall Detection Database, IPQS phone reputation, community reports, 18 flagged high-risk VoIP carriers.

Caching: Results are cached for 24 hours. Use force_refresh: true to bypass cache (still counts toward quota). Cached lookups do not consume quota.

Authorization

BearerAuth
AuthorizationBearer <token>

API key from your Developer Dashboard. Keys start with sv_live_ (production) or sv_test_ (test mode).

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://scamverify.ai/api/v1/phone/lookup" \  -H "Content-Type: application/json" \  -d '{    "phone_number": "+12025551234"  }'
{
  "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "phone_number": "+12025551234",
  "normalized": "2025551234",
  "risk_score": 87,
  "verdict": "high_risk",
  "confidence": 0.92,
  "explanation": "This phone number has 47 FTC complaints filed since 2023, primarily for impersonating government agencies. The carrier is a high-risk VoIP provider frequently associated with robocall operations.",
  "signals": {
    "ftc_complaints": 47,
    "ftc_most_recent": "2026-02-15",
    "ftc_categories": [
      "Government Impersonation",
      "Robocalls"
    ],
    "fcc_complaints": 12,
    "carrier": "Bandwidth.com",
    "line_type": "voip",
    "caller_name": null,
    "robocall_flagged": true,
    "high_risk_carrier": true,
    "community_reports": 8,
    "community_scam_rate": 0.875
  },
  "sources_checked": [
    "ftc",
    "fcc",
    "twilio",
    "nomorobo",
    "ipqs",
    "community"
  ],
  "cached": false,
  "cache_expires_at": "2026-03-11T12:00:00Z",
  "created_at": "2026-03-10T12:00:00Z"
}
{
  "error": {
    "code": "validation_error",
    "message": "Invalid request body",
    "details": {
      "issues": [
        {
          "field": "phone_number",
          "message": "phone_number is required"
        }
      ]
    }
  }
}

{
  "error": {
    "code": "missing_api_key",
    "message": "Authorization header is required. Use 'Bearer sv_live_...' format."
  }
}

{
  "error": {
    "code": "quota_exhausted",
    "message": "Monthly phone quota exhausted. Upgrade your plan for more lookups.",
    "upgrade_url": "https://scamverify.ai/settings/api"
  }
}
{
  "error": {
    "code": "rate_limit_exceeded",
    "message": "Rate limit exceeded. Please wait before making another request.",
    "retry_after": 12
  }
}
{
  "error": {
    "code": "internal_error",
    "message": "An unexpected error occurred. Please try again later."
  }
}