---
title: "Search the BBB Scam Tracker reports dataset"
method: GET
path: "/datasets/bbb-scamtracker-reports/search"
tags: ["Datasets"]
---

# Search the BBB Scam Tracker reports dataset

`GET /datasets/bbb-scamtracker-reports/search`

## Request

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

Searches the stored archive of public consumer scam reports from bbb.org/scamtracker (dataset id enum value `bbb-scamtracker-reports`), one record per report: narrative, scam type, reported dollar loss, targeted and scammer locations, the business name used, and the report date. Unlike the live bbb-scamtracker-search endpoint, results are not cut off at BBB's 10,000-result limit and any date range can be read page by page. Reports are unreviewed consumer allegations; names and contact details in them are as reported, not verified. The archive is still being filled, so `total` is the number of stored reports matching the filters, not BBB's own count. country enum: `USA`, `CAN`. sort enum: `relevance`, `reported_desc`, `reported_asc`, `loss_desc`. Billing: this search costs 1 credit per record returned, with a minimum of 2 (an empty result costs 2, a full page of 100 costs 100); the item and facets endpoints cost 1.

## Query parameters

- `q` string
- `scam_type` string
- `state` string
- `country` 'USA' | 'CAN'
- `date_from` string
- `date_to` string
- `min_loss` number
- `max_loss` number
- `sort` 'relevance' | 'reported_desc' | 'reported_asc' | 'loss_desc'
- `page` integer
- `page_size` integer

## Headers

- `x-api-key` string, required

## Response `200`

OK

- DatasetsScamTrackerReportsSearchResponseDoc
  - `code` integer
  - `data` DatasetsScamTrackerReportsSearchResponse
    - `dataset` string
    - `items` EsScamTrackerReport[]
      - `business_name` string
      - `country` string
      - `crawled_at` string
      - `date_reported` string
      - `description` string
      - `discovery_source` string
      - `dollars_lost` string
      - `loss_amount` number
      - `report_id` string
      - `reported_at` string
      - `scam_type` string
      - `scammer_email` string
      - `scammer_location` string
      - `scammer_phone` string
      - `scammer_url` string
      - `schema_version` integer
      - `source_url` string
      - `state` string
      - `targeted_location` string
    - `page` integer
    - `page_size` integer
    - `sort` string
    - `total` integer
  - `msg` string

## Other responses

- `400`: Bad Request
- `429`: Too Many Requests
- `500`: Internal Server Error

---

[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/afac9b012a27?raw)
