---
title: "Search Better Business Bureau Scam Tracker reports"
method: GET
path: "/bbb/scamtracker/search"
tags: ["BBB"]
---

# Search Better Business Bureau Scam Tracker reports

`GET /bbb/scamtracker/search`

## Request

- Base URL: `https://api.crawlora.net/api/v1`
- URL: `https://api.crawlora.net/api/v1/bbb/scamtracker/search`
- Auth: API key in header `x-api-key`

Searches bbb.org Scam Tracker's consumer-reported-scam database by free-text query, scam category, targeted-victim state/province, reported-scammer state/province, report-date range, and/or dollar-loss range, paginated 10 results/page. A verified search with no matches returns results: [] and total_results: 0; an unavailable or unrecognized page returns 503 rather than an empty list. When result cards are present but BBB's total count is unavailable, total_results is omitted. Every page returns has_more and, when BBB's result count is exact, total_pages: request the next page only while has_more is true, because a page past the end returns 404. Omit every filter to browse the most-recent-first feed. This is a separate BBB dataset from the bbb-search/bbb-business/bbb-business-complaints business-rating family -- consumer-reported scam incidents, not business ratings.

## Query parameters

- `query` string
- `scam_type` 'Advance Fee Loan' | 'Bank/Credit Card Company Imposter' | 'Business Email Compromise' | 'Charity' | 'Counterfeit Product' | 'COVID-19' | 'Credit Cards' | 'Credit Repair/Debt Relief' | 'CryptoCurrency' | 'Debt Collections' | 'Employment' | 'Fake Check/Money Order' | 'Fake Invoice/Supplier Bill' | 'Family/Friend Emergency' | 'Foreign Money Exchange' | 'Government Agency Imposter' | 'Government Grant' | 'Healthcare/Medicaid/Medicare' | 'Home Improvement' | 'Identity Theft' | 'Investment' | 'Moving' | 'Online Purchase' | 'Other' | 'Phishing' | 'Rental' | 'Retail Business' | 'Romance' | 'Scholarship' | 'Sweepstakes/Lottery/Prizes' | 'Tax Collection' | 'Tech Support' | 'Travel/Vacation/Timeshare' | 'Utility' | 'Vanity Award' | 'Worthless Problem-solving Service' | 'Yellow Pages/Directories'
- `state` string
- `scammer_state` string
- `date_from` string
- `date_to` string
- `min_dollars_lost` integer
- `max_dollars_lost` integer
- `page` integer

## Headers

- `x-api-key` string, required

## Response `200`

OK

- BbbscamtrackerSearchResponseDoc
  - `code` integer
  - `data` BbbscamtrackerSearchResponse
    - `date_from` string
    - `date_to` string
    - `has_more` boolean: Whether page+1 exists. When the page count is unknown, true while the page is full. Request the next page only while this is true.
    - `max_dollars_lost` integer
    - `min_dollars_lost` integer
    - `page` integer
    - `query` string
    - `results` BbbscamtrackerScamResult[]
      - `business_name_used` string
      - `category` string
      - `date_reported` string
      - `description` string
      - `dollars_lost` string
      - `id` string
      - `url` string
      - `victim_location` string
    - `scam_type` string
    - `scammer_state` string
    - `source_url` string
    - `state` string
    - `total_pages` integer: The last page of this search, from BBB's result count. Omitted when that count is a lower bound (total_results_lower_bound) or missing.
    - `total_results` integer
    - `total_results_lower_bound` boolean
  - `msg` string

## Other responses

- `400`: Bad Request
- `404`: Not Found
- `500`: Internal Server Error
- `503`: Service Unavailable

---

[API](https://skmtc.dev/crawlora/apis/crawlora-api.md) · [All operations](https://skmtc.dev/crawlora/apis/crawlora-api/llms.txt) · [OpenAPI document](https://skmtc.dev/crawlora/apis/crawlora-api/revisions/0497899e2016?raw)
