---
title: "Phone Spam Check API"
url: "https://lookvalid.com/products/phone-spam.md"
canonical_url: "https://lookvalid.com/products/phone-spam"
last_updated: "2026-10-22"
type: "product"
summary: "Reported-caller complaints for a phone number from public FTC Do Not Call and FCC consumer complaint data."
related: ["https://lookvalid.com/pricing.md", "https://lookvalid.com/docs/api/phone-spam.md"]
---

# Phone Spam Check API

Reported-caller complaints for a phone number from public FTC Do Not Call and FCC consumer complaint data.

Reported-caller complaints for a phone number from public FTC Do Not Call and FCC consumer complaint data: how many reports, when, and what kind of calls were reported. Complaints are unverified consumer reports, not a verdict about the caller.

## Facts

- Endpoint: `POST https://YOUR_API_HOST/v1/phone-spam`
- Price: 1 credit per number with complaints on record
- Charged: Only when a lookup finds something
- Cache: repeating the same lookup within 7 days is free

## Example request

```sh
curl -X POST https://YOUR_API_HOST/v1/phone-spam \
  -H "Authorization: Bearer $LOOKVALID_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"phone":"+14155550132"}'
```

## Response

The `data` object has 10 named fields. Every response also lists the sources behind the result, the credits charged and whether it was served from your cache.

| Field | Type | Description |
| --- | --- | --- |
| `phone_e164` | string |  |
| `complaints_total` | integer |  |
| `first_reported` | string or null |  |
| `last_reported` | string or null |  |
| `issue_types` | array of string | Distinct issue types reported, most serious first |
| `sources_used` | array of object |  |
| `spam_score` | integer | Computed as of cache.cached_at; a cached answer keeps its score, so the recency part can be up to the cache lifetime out of date |
| `risk_level` | "none" | "low" | "medium" | "high" |  |
| `score_basis` | object |  |
| `disclaimer` | string |  |

## Priced in credits

| Case | Charge |
| --- | --- |
| Found | 1 credit |
| Nothing found | 0 credits |
| Repeat inside 7 days | 0 credits |
| Errors and invalid requests | 0 credits |

## Questions

### How much does Phone Spam Check cost?

1 credit per number with complaints on record. Credits come out of the one balance shared by every LookValid product.

### Am I charged when nothing is found?

No. When the lookup runs and finds nothing, it returns found: false and costs 0 credits. An error costs nothing either.

### How long are results cached?

For 7 days, per account. Repeating the same lookup inside that window returns cache_hit: true and costs 0 credits.

### Which API key do I use?

The same key as every other product. Send it as a Bearer token in the Authorization header. Email hello@lookvalid.com and we set up your account and send the key.

## Related products

- [Phone Numbering-Plan Validation](https://lookvalid.com/products/phone.md): Checks a phone number against its country's numbering plan and returns E.164, national and international formats, the country and the number type the plan assigns (mobile, fixed line, toll free, VoIP and others).
- [Country Calling Codes](https://lookvalid.com/products/country-code.md): Looks up a country by calling code (+44), ISO region (GB) or English country name and returns the calling code, every region that shares it, national number lengths, trunk and international dialing prefixes, example numbers and the leading digits of mobile and fixed-line numbers where the numbering plan defines them.
- [Email Domain Check](https://lookvalid.com/products/email-domain-check.md): Checks the domain behind an email address: MX records, SPF and DMARC policies, and whether the address uses a disposable domain, a free mailbox provider or a role mailbox such as info@ or support@.

Full request and response fields: [Phone Spam Check reference](https://lookvalid.com/docs/api/phone-spam.md).

## Related

- [Plans, trial and credit pricing](https://lookvalid.com/pricing.md)
- [Phone Spam Check reference](https://lookvalid.com/docs/api/phone-spam.md)
