---
title: "Search live government auction listings"
method: GET
path: "/api/v1/listings"
---

# Search live government auction listings

`GET /api/v1/listings`

## Request

- Base URL: `https://bidprowl.com`
- URL: `https://bidprowl.com/api/v1/listings`
- Auth: HTTP bearer

## Query parameters

- `q` string
- `category` string
- `state` string
- `source` string
- `zip` string
- `radius_miles` integer
- `price_min` number
- `price_max` number
- `sort` 'ending_soon' | 'newest' | 'price_low' | 'price_high' | 'most_bids' | 'best_deals'
- `no_bids` boolean
- `buy_now` boolean
- `page` integer
- `per_page` integer

## Response `200`

Paginated listings

- object
  - `data` Listing[]
    - `id` string, uuid
    - `title` string
    - `category` string: One of: vehicles, heavy-equipment, electronics, office-furniture (displayed as Furniture), tools-industrial, medical-scientific, military-surplus, real-estate, seized-property, jewelry-coins, apparel, toys-media, appliances, sporting-outdoor, antiques-collectibles, vehicle-parts (parts and accessories; whole vehicles stay in vehicles), other
    - `source` string: Source key, e.g. govdeals
    - `source_name` string
    - `state` string, nullable: 2-letter US state code
    - `city` string, nullable
    - `zip` string, nullable
    - `current_bid_cents` integer, nullable
    - `buy_now_cents` integer, nullable
    - `starting_bid_cents` integer, nullable
    - `num_bids` integer
    - `flip_score` integer, nullable: BidProwl deal score
    - `condition_grade` string, nullable
    - `vin` string, nullable: 17-character vehicle identification number when the source publishes one (validated: no I, O or Q), else null
    - `quantity` integer, nullable: Units in the lot, from the source's own field or the count its title or description states ("Lot of (5) ..."). Null when not stated, which is most lots: null does not mean 1
    - `quantity_approx` boolean, nullable: True when the stated count is approximate ("approx 50", "40+"); null when quantity is null
    - `quantity_unit` 'item' | 'container' | 'null', nullable: item, or container when the count is of pallets, boxes or cases; null when quantity is null
    - `bid_is_per_unit` boolean: True when the source takes bids per unit (HiBid lots shown as "x 20"). current_bid_cents is then the lot total, unit bid times quantity
    - `unit_bid_cents` integer, nullable: current_bid_cents divided by quantity when quantity > 1, the count is exact and there is a bid; the source's per-unit bid when bid_is_per_unit
    - `image_url` string, nullable
    - `start_date` string, date-time, nullable
    - `end_date` string, date-time, nullable
    - `status` string
    - `bidprowl_url` string
    - `source_url` string: Official auction page where bidding happens
  - `page` integer
  - `per_page` integer
  - `total` integer
  - `total_pages` integer

## Other responses

- `400`: Malformed query parameter.
- `401`: Missing, invalid or revoked API key.
- `429`: Per-minute burst limit or monthly quota exhausted. Read Retry-After, and RateLimit-* to self-throttle before you get here.

---

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