# Search available items by name(s)

`GET /v1/search-items-by-name`

> Prefer GET /v2/search-items-by-name for new integrations.

Usually used in combination with [/v1/prices](https://api.waxpeer.com/docs/#/Buy%20items/get_prices) as expand items group by name.

If you need stickers or steam price from an item, please use the [v2 method](https://api.waxpeer.com/docs/#/Buy%20items/get_v2_search_items_by_name).

Rate limit shared with search by name endpoints and currently is 20 per minute for regular users (Disabled for partners)

Maximum number of listings per name 50 (in ascending order of price)

A hold listing is created while the item is still under a Steam trade lock. You can buy it now, and it is delivered after the lock expires. Hold listings are omitted unless you pass include_hold=1 or true. Each hold listing then includes unlock_at (when the lock ends; delivery starts after that) and send_until (delivery deadline; if the item is not sent by then the trade fails and you are refunded in full). Both are RFC 3339 UTC. Regular listings omit both fields. A listing is trade-locked when unlock_at is present.

Prices are integers. `1000` = `1 USD`.

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `api` | query | string | required | Your [WAXPEER API](https://waxpeer.com/profile/user) |
| `game` | query | enum | optional | Which game would you like to edit items from  For csgo dopplers items 'phase' parameter available in response. Possible values: 'Emerald', 'Ruby', 'Sapphire', 'Black Pearl', 'Phase 1', 'Phase 2', 'Phase 3', 'Phase 4' |
| `names` | query | string | required | Multiple queries of name, so you can pass it like this names=AK-47 \| Aquamarine Revenge (Factory New)&names=AK-47 \| Aquamarine Revenge (Factory New). Max 50 at once |
| `minified` | query | enum | optional | Will return additional data about items if set to 0 |
| `include_hold` | query | string | optional | 1 / true: also return trade-locked listings. Without this parameter the response is unchanged. |

## Example (curl)

```bash
curl -X GET 'https://api.waxpeer.com/v1/search-items-by-name?api=%7B%7BAPI_KEY%7D%7D&game=csgo&names=AK-47+%7C+Redline+%28Field-Tested%29&minified=1'
```

## Example response

```json
{
  "success": true,
  "items": [
    {
      "name": "★ Butterfly Knife | Gamma Doppler (Factory New)",
      "price": 2050000,
      "image": "https://steamcommunity-a.akamaihd.net/economy/image/class/730/5035516602",
      "item_id": "27165625734",
      "phase": "Phase 4",
      "float": 0.2447746992111206,
      "unlock_at": "2026-08-04T12:00:00Z",
      "send_until": "2026-08-05T12:00:00Z"
    }
  ]
}
```

## Responses

- `200` successful operation

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `success` | boolean | optional |  |
| `items` | array<object> | optional |  |
| `items.name` | string | optional |  |
| `items.price` | number | optional | Item price (1000 = 1$) |
| `items.image` | string | optional |  |
| `items.item_id` | string | optional |  |
| `items.phase` | string | optional | Steam csgo item doppler phase. Available only on doppler items. Possible values: 'Emerald', 'Ruby', 'Sapphire', 'Black Pearl', 'Phase 1', 'Phase 2', 'Phase 3', 'Phase 4' |
| `items.float` | number | optional | Item float For CS:GO game |
| `items.unlock_at` | string | optional | When the Steam trade lock ends. Delivery starts after this. RFC 3339 UTC. Present only on a trade-locked listing returned with include_hold. Regular listings omit this field. |
| `items.send_until` | string | optional | Delivery deadline. If the item is not delivered by then, the trade fails and you are refunded in full. RFC 3339 UTC. Present only on a trade-locked listing. Regular listings omit this field. |

- `429` Too many queries. The limit for search endpoints actions to regular users is 20 requests per 60 seconds

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `success` | boolean | optional |  |
| `msg` | string | optional | Reason why request failed |
| `msBeforeNext` | number | optional | Milliseconds before next request |


## Notes for agents

- Auth is the query parameter `api`, not an Authorization header.
- See [/statuses.md](/statuses.md) for numeric trade status plus `escrow_status` / `release_date`.
- Prefer GET /v2/search-items-by-name over v1.
- Prefer GET /v2/get-items-list over v1 (cursor keyset pagination without the 5000 row cap). Pass next_cursor only while has_more is true.
- Prefer POST /v2/my-history over v1 (faster on long histories, ordered by trade id). On buy rows, price is the amount you paid.
- Trade-locked listings are omitted unless you pass include_hold=1. They then include unlock_at and send_until (RFC 3339 UTC).
- Buy a trade-locked listing only by exact item_id with allow_trade_locked (query 1 on GET /v1/buy-one-p2p, body true on POST /v1/buy). GET /v1/buy-one-p2p-name never sells hold items.
- CSV snapshot: GET /v1/prices/snapshot?format=csv (gzip). include_hold appends unlock_at,send_until. compact and whitemarket are JSON-only.
- Do not use GET /v1/ready-to-transfer-p2p; use the [trade websocket](/websocket.md).
