Meesho Catalog Filters
meesho.catalog.filters
Get the sort options and filters Meesho offers for a search or a category, ready to pass to catalog search.
At a glance
- Endpoint ID
meesho.catalog.filters- Price
- 0.25 credits per call; failed calls are free
- Runs for up to
- 45 seconds
Request
Send the endpoint ID as capability and its fields as input. Set UPSCRAPE_API_KEY to your key first.
curl --request POST \ --url https://data.upscrape.com/execute \ --header "Authorization: Bearer $UPSCRAPE_API_KEY" \ --header "Content-Type: application/json" \ --header "Prefer: wait=30" \ --data '{ "capability": "meesho.catalog.filters", "input": { "query": "kurti", "scope": "search" }}'
import jsonimport osimport requestspayload = json.loads(r'''{ "capability": "meesho.catalog.filters", "input": { "query": "kurti", "scope": "search" }}''')response = requests.post( "https://data.upscrape.com/execute", headers={ "Authorization": f"Bearer {os.environ['UPSCRAPE_API_KEY']}", "Content-Type": "application/json", "Prefer": "wait=30", }, json=payload,)response.raise_for_status()print(json.dumps(response.json(), indent=2))
const response = await fetch("https://data.upscrape.com/execute", { method: "POST", headers: { "Authorization": `Bearer ${process.env.UPSCRAPE_API_KEY}`, "Content-Type": "application/json", "Prefer": "wait=30", }, body: JSON.stringify({ "capability": "meesho.catalog.filters", "input": { "query": "kurti", "scope": "search" }}),});if (!response.ok) { throw new Error(`Upscrape request failed: ${response.status}`);}console.log(JSON.stringify(await response.json(), null, 2));
Input
| Field | Type | Required | What it does | Example |
|---|---|---|---|---|
scope |
string | yes | search for a keyword's filters, or category for a category's. | search |
page_id |
string | no | The category, when the scope is category. | |
query |
string | no | The keyword, when the scope is search. | kurti |
Response
A finished call answers with HTTP 200; the data is in results[0].data, and billing.credits_charged is what it cost. A call still running after the wait answers 202: see jobs and results.
This is results[0].data from a real run:
{ "count": 10000, "count_text": "1000+", "enabled": true, "filters": [ { "label": "Category", "label_id": 1, "label_name": "Category", "search_enabled": false, "type": "list", "values": [ { "display_name": "Feeding Kurtis And Kurta Sets", "id": 2274, "image_url": "https://images.meesho.com/images/marketing/1631697114913.png", "selected": false }, { "display_name": "Kids - Girls Kurta Sets", "id": 5144, "image_url": "https://images.meesho.com/images/marketing/1704455685544.jpg", "selected": false } ] }, { "label": "Gender", "label_id": 9, "label_name": "Gender", "search_enabled": false, "type": "pill", "values": [ { "display_name": "Boys", "id": 446, "image_url": "https://images.meesho.com/images/marketing/7cafdc36-1b16-4cf8-84dc-1ed4f32fc9a4.png", "selected": false }, { "display_name": "Girls", "id": 445, "image_url": "https://images.meesho.com/images/marketing/1598808357482.png", "selected": false } ] } ], "high_visibility_filters": [ { "display_name": "New Arrival", "id": 613, "image_url": "https://images.meesho.com/images/marketing/1600158719009.jpeg", "selected": false }, { "display_name": "Top Rated", "id": 611, "image_url": "https://images.meesho.com/images/marketing/1718955619931.png", "selected": false } ], "sort_options": [ { "display_name": "Relevance", "default": true, "selected": true, "sort_by": "most_relevant", "sort_order": "desc" }, { "display_name": "New Arrivals", "default": false, "selected": false, "sort_by": "created", "sort_order": "desc" } ]}
Fields
| Field | Type | What it is | Example |
|---|---|---|---|
filters[].values[].display_name |
string | Feeding Kurtis And Kurta Sets | |
filters[].label |
string | The filter's name. | Category |
filters[].label_id |
integer | Meesho's ID for the filter. | 1 |
filters[].label_name |
string | The filter's name. | Category |
filters[].search_enabled |
boolean | Whether the filter's values can be searched. | false |
filters[].type |
string | The kind of filter, such as a list. | list |
filters[].values |
array | The filter's values. | 3 records |
filters[].values[].id |
integer | 2274 | |
filters[].values[].image_url |
string | https://images.meesho.com/images/marketing/1631697114913.png | |
filters[].values[].selected |
boolean | false | |
count |
integer | How many products match. | 10,000 |
count_text |
string | The match count as Meesho words it. | 1000+ |
enabled |
boolean | Whether filters are offered for this search. | true |
filters |
array | The filters Meesho offers for the search. | 3 records |
high_visibility_filters |
array | The filters Meesho shows first. | 3 records |
high_visibility_filters[].display_name |
string | The name as Meesho shows it. | New Arrival |
high_visibility_filters[].id |
integer | Meesho's ID for it. | 613 |
high_visibility_filters[].image_url |
string | The picture shown with the value. | https://images.meesho.com/images/marketing/1600158719009.jpeg |
high_visibility_filters[].selected |
boolean | Whether the value is chosen. | false |
sort_options |
array | The ways the results can be sorted. | 2 records |
sort_options[].default |
boolean | Whether this is the default sort. | true |
sort_options[].display_name |
string | The name as Meesho shows it. | Relevance |
sort_options[].selected |
boolean | Whether the value is chosen. | true |
sort_options[].sort_by |
string | What the results are sorted by. | most_relevant |
sort_options[].sort_order |
string | The sort direction. | desc |
If a call fails
A failed call costs nothing. The response carries an error.code you can branch on; Errors and retries lists every code and which ones to retry.
Other Meesho Catalog endpoints
Something missing or unclear? Ask the team that builds the Meesho Catalog endpoints.