# Gazelle — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Search for used phones and tablets, browse best sellers, view detailed product listings, and retrieve trade-in price estimates on Gazelle. Look up buyback options by brand, category, and device series to compare payout values for used electronics.

**Category:** E-commerce | **Website:** [gazelle.com/](https://gazelle.com/) | **Docs:** [parse.bot/marketplace/4b6d0584-eb24-4922-b8b2-ed970f016b2e/gazelle-com-api](https://parse.bot/marketplace/4b6d0584-eb24-4922-b8b2-ed970f016b2e/gazelle-com-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-gazelle-com-api-4b6d0584/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_all_phones

Retrieve paginated phone products from the Gazelle store. Each page returns up to 30 products with full variant, pricing, and image data. The collection includes all phones currently listed for sale.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number for results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gazelle-com-api-4b6d0584/get_all_phones \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>"}'
```

### get_all_tablets

Retrieve paginated tablet products from the Gazelle store. Each page returns up to 30 products with full variant, pricing, and image data. The collection includes all tablets currently listed for sale.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number for results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gazelle-com-api-4b6d0584/get_all_tablets \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>"}'
```

### get_best_sellers

Retrieve the current best-selling devices on Gazelle. Returns a single page of the most popular products across all categories (phones, tablets). No pagination — all best sellers returned in one response.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gazelle-com-api-4b6d0584/get_best_sellers \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_buyback_brands

Retrieve the list of brands accepted for buyback/trade-in via the ecoATM API. Returns brand IDs needed for get_buyback_series calls.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gazelle-com-api-4b6d0584/get_buyback_brands \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_buyback_categories

Retrieve the list of device categories accepted for buyback/trade-in. Returns categories such as Cell Phone, Tablet, and MP3 Player. Use category IDs with get_buyback_series and get_buyback_price_estimate.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gazelle-com-api-4b6d0584/get_buyback_categories \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_buyback_price_estimate

Get a trade-in price estimate for a specific device via the ecoATM API. Returns offer information including payout amounts by channel. Requires valid category_id from get_buyback_categories and accurate device details matching what appears in get_buyback_series.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `brand_name` | string | Yes | Brand name (e.g. 'Apple', 'Samsung'). |
| `carrier_name` | string | Yes | Carrier name (e.g. 'Unlocked', 'AT&T', 'T-Mobile', 'Verizon'). |
| `category_id` | string | Yes | UUID category ID from get_buyback_categories (e.g. '8fbcad05-0bbf-4ba7-ba0c-1d4f36bc1022' for Cell Phone). |
| `cracks` | boolean | No | Whether the device has cracks. |
| `lcd_ok` | boolean | No | Whether the screen is functional. |
| `model_name` | string | Yes | Model name (e.g. 'iPhone 14'). |
| `power_up` | boolean | No | Whether the device powers on. |
| `series_name` | string | Yes | Series name matching a name from get_buyback_series (e.g. 'iPhone 14'). |
| `storage_option` | string | Yes | Storage option (e.g. '128GB', '256GB', '512GB'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gazelle-com-api-4b6d0584/get_buyback_price_estimate \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"brand_name":"<string>","carrier_name":"<string>","category_id":"<string>","cracks":"<boolean>","lcd_ok":"<boolean>","model_name":"<string>","power_up":"<boolean>","series_name":"<string>","storage_option":"<string>"}'
```

### get_buyback_series

Retrieve device series available for trade-in under a given brand and category. Returns a list of device series (e.g. iPhone 14, iPhone 15) with IDs. Requires brand_id from get_buyback_brands and category_id from get_buyback_categories.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `brand_id` | string | Yes | UUID brand ID from get_buyback_brands (e.g. '7d04b58b-3f2d-4f63-821f-7f081d7f1bd9' for Apple). |
| `category_id` | string | Yes | UUID category ID from get_buyback_categories (e.g. '8fbcad05-0bbf-4ba7-ba0c-1d4f36bc1022' for Cell Phone). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gazelle-com-api-4b6d0584/get_buyback_series \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"brand_id":"<string>","category_id":"<string>"}'
```

### get_product_detail

Retrieve full detail for a single product by its URL handle. Returns complete product data including all variants (color × condition), images, HTML description, options, and tags. The handle is obtainable from search_products or collection endpoints.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `handle` | string | Yes | Product URL slug/handle (e.g. 'iphone-14-128gb-unlocked-1'). Obtainable from search_products or get_all_phones results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gazelle-com-api-4b6d0584/get_product_detail \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"handle":"<string>"}'
```

### search_products

Search for products by keyword using Gazelle's search suggest API. Returns matching products with availability, pricing, and image data. Gazelle primarily sells Apple devices; searches for non-Apple brands may return empty results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Search keyword (e.g. 'iPhone 15', 'iPad Pro', 'Galaxy'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gazelle-com-api-4b6d0584/search_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"<string>"}'
```
