---
title: "Image search"
description: "Shopify image search — accepted parameters and what comes back."
---

```
GET|POST /v1/shopify/image-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 |
|---|---|---|---|
| `image` | object | yes | Base64 image input for visual search; the image is the anchor and `query` narrows it — the reverse of `search`. Up to ~6MB of base64; supported types are jpeg, png, webp, gif and avif. |
| `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. |
| `query` | string |  | Optional text that refines the image — the reverse of `search`, where the query anchors the result. For example, a sneaker photo with `query=wool` returns wool sneakers rather than any sneaker of that shape. |
| `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. |

Same parameters as `search`, with `image` required and `query` optional:

```bash
curl -X POST https://gateway.apinoa.com/v1/shopify/image-search \
  -H "content-type: application/json" -H "x-api-key: YOUR_API_KEY" \
  -d '{"image": {"contentType": "image/jpeg", "data": "<base64>"}, "query": "wool", "priceMax": 60}'
```

The image is the anchor and `query` narrows it — the reverse of `search`, and worth using. Measured: a
wool-sneaker photo alone returns anything of that silhouette including Nike Air Force 1s; the text alone
returns anything made of wool; together you get the wool sneakers.

Images up to ~6 MB of base64. Supported types: jpeg, png, webp, gif, avif.
