# Search products (v1)

Returns one page of 72 ASOS products for a keyword or a category, with brand, colour, price, markdown, the lowest price in the last 30 days and images, in the chosen country's currency. Sort by relevance, price or newest.

- Platform: ASOS
- Request: `GET https://api.toolzerhub.com/v1/asos/search`
- Auth: `x-api-key` header
- Cost: 1 credit per successful request. Failed requests are not billed.
- Page: https://docs.toolzerhub.com/reference/asos/search/get-asos-search

| Parameter | In | Required | Type | Description |
| --- | --- | --- | --- | --- |
| `query` | query | no | string | A keyword, product or brand, such as black midi dress or nike. Pass either query or category. Default: . |
| `category` | query | no | string | A category link from asos.com, or the category_id from the Categories endpoint, such as 4208 (men's jeans). Pass either query or category. Default: . |
| `country` | query | no | string | The country to shop from, as a two-letter code such as GB, US, DE, FR or AU, or a name such as United States. Sets the store, language and currency, as on asos.com. Defaults to GB. Default: GB. |
| `page` | query | no | integer | One-based page of 72 products, as on asos.com. A page past the last returns empty products with stop_reason set to past_last_page. Default: 1. |
| `sort` | query | no | enum: relevance, price_asc, price_desc, newest | relevance (the default, as on asos.com), price_asc, price_desc or newest. Default: relevance. |

## Example request

```bash
curl "https://api.toolzerhub.com/v1/asos/search" \
  -H "x-api-key: $TOOLZERHUB_API_KEY"
```

Success responses are wrapped as `{ "data": ... }`. Errors return `{ "error": { "code", "status", "message", "retryable", "details" } }`. See https://docs.toolzerhub.com/docs/responses-and-errors.
