# ASOS Search API

> Search ASOS by keyword in any of its 11 country stores with optional sort, price-range, and page filters and get title, price, brand, and colour for each product in one normalized response.

Source: https://www.sandbase.ai/apis/asos/search
API reference: https://www.sandbase.ai/apis/asos/search#api

## Facts

- Provider: ASOS
- Type: Data API
- Endpoint: `POST https://api.sandbase.ai/v1/api/asos/search`
- Price: From $0.00085 per call
- Capabilities: api, asos, ecommerce, product data
- Billing: pay per use from one SandBase balance; no provider account or subscription needed

## Call it

`POST https://api.sandbase.ai/v1/api/asos/search` with `Authorization: Bearer $SANDBASE_API_KEY` and the parameters as a JSON body.

| Parameter | Type | Required | Allowed values |
| --- | --- | --- | --- |
| `query` | string | yes |  |
| `page` | integer | no |  |
| `sort` | string | no | best_match, new, price_low, price_high |
| `country` | string | no | gb, us, au, de, fr, it, es, nl, se, dk, pl |
| `maxPrice` | number | no |  |
| `minPrice` | number | no |  |
| `requireFields` | array | no |  |

## FAQ

### How do I use the ASOS Search API?

Send a POST request to https://api.sandbase.ai/v1/api/asos/search with your SandBase API key in the Authorization header (Bearer) and the parameters as a JSON body. You can also try it in the Playground on this page without writing code.

### How much does the ASOS Search API cost?

From $0.00085 per call, billed from your SandBase balance. You are only charged for calls you make; there is no subscription.

### What parameters does the ASOS Search API accept?

Required: query (string). Optional: page (integer), sort (one of best_match, new, price_low, price_high), country (one of gb, us, au, de, fr, it, es, nl, se, dk, pl), maxPrice (number), minPrice (number) and requireFields (array). The Parameters table and the Playground on this page list every field.

### What does the ASOS Search API return?

A JSON response returned in the same HTTP request (synchronous).

### Do I need a ASOS developer account or API key?

No. ASOS Search runs through SandBase, so one SandBase API key covers this endpoint and every other API and model in the catalog. You do not need to apply for ASOS API access separately.

## README

### ASOS Search API

Search ASOS by keyword in any of its 11 country stores with optional sort, price-range, and page filters and get title, price, brand, and colour for each product in one normalized response.

#### Request

```bash
curl -X POST "https://api.sandbase.ai/v1/run" \
  -H "Authorization: Bearer $SANDBASE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "asos/search", "query": "white sneakers", "country": "us"}'
```

The result is returned in `outputs[0].data`. Lookups that find nothing fail with a not-found error.

#### Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `query` | string | Yes | Search keywords, e.g. "white sneakers" or "summer dress". |
| `country` | string | No | ASOS country store to search, which also sets the price currency (gb GBP, us USD, au AUD, de/fr/it/es/nl EUR, se SEK, dk DKK, pl PLN); defaults to gb, the UK store. Product ids and URLs are store-specific. One of: `gb`,  |
| `maxPrice` | number | No | Optional maximum product price, in the store's currency. |
| `minPrice` | number | No | Optional minimum product price, in the store's currency. |
| `page` | integer | No | 1-based results page of 48 products. Each page is billed as one request. Default `1`. |
| `requireFields` | array | No | Optional; omit it and routing is unchanged, with the cheapest source serving. Name the output fields this request must be able to return, for example `inStock`, and it is served only by a source that returns every one of |
| `sort` | string | No | Result sort order; omit for ASOS's recommended order (e.g. new for newest arrivals first). One of: `best_match`, `new`, `price_low`, `price_high`. |

#### Pricing

Billed at the actual cost of each call, about $0.00085 per request. A call can cost more when the first data source fails and another one answers. Failed calls and lookups that find nothing are not charged.
