---
title: "搜索"
description: "Shopify 搜索——接受的参数与返回的内容。"
---

```
GET|POST /v1/shopify/search
```

**Price** $0.001 per call. [List price](https://apinoa.com/en/pricing); the rate steps down above 1,000 calls a day.

| Parameter | Type | Required | Notes |
|---|---|---|---|
| `query` | string | yes | Keywords to search for. Required: Shopify search always needs a keyword, which is also why Shopify has no keyword-less `browse`. |
| `categoryId` | string |  | Narrow to one category, by the marketplace's own id. Opaque and per-marketplace; take it from Product.category[].id or from a result's `facets`. |
| `condition` | enum |  | Item condition: `new` or `used`. `refurbished` is refused by name rather than folded into `used` — the catalog sells new and secondhand, and those are different claims. `new` `used` |
| `cursor` | string |  | Opaque; comes from the previous response and carries the page index. Shopify pages by cursor rather than by number — this is the only paging knob, and `page` is refused by name. |
| `inStock` | boolean \| enum |  | Only listings the marketplace reports as purchasable now. |
| `priceMax` | number ≥ 0 |  | Highest price to return, in decimal major units. |
| `priceMin` | number ≥ 0 |  | Lowest price to return, in decimal major units. |
| `ratingMin` | number 0–5 |  | Lowest average star rating to return, on the marketplace's own 0-5 scale. |
| `region` | string |  | Buyer country as ISO 3166-1 alpha-2; sets availability, shipping and price. |

```bash
curl "https://gateway.apinoa.com/v1/shopify/search?query=wool+socks&priceMin=20&priceMax=60&ratingMin=4&inStock=true" \
  -H "x-api-key: YOUR_API_KEY"
```

**Shopify 按游标翻页，而不是页码。** 取上一份响应里的 `cursor` 回传即可；`page` 会被拒绝。

**没有 `pageSize`**——无论你要多少，商品库都会把每次响应限制在 50 条。

**没有 `sort`。** Shopify 搜索完全不提供排序，是这里唯一没有排序的平台。

**没有 `brands`。**

**搜索没有 `currency`**——计价币种随 `region` 而定。而 `product` **可以**接受 `currency`，因为一个店铺
前台可能被固定在某一种币种上。

**`condition=refurbished` 会被拒绝**，而不是映射成 `used`：这个商品库出售的是 `new` 与 `secondhand`，
二者是不同的断言。
