Zepto scraper API

Scrape India's Zepto q-commerce platform: product details, search, category listings, ad placements, place/location…

Commerce & delivery 11 capabilities stable 8.3% success rate

Capabilities

Every capability is one POST /execute call that returns structured JSON.

List Ads

zepto.ads

List current Zepto sponsored product, campaign, and banner placements for a location or page.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"latitude":12.96902,"limit":5,"longitude":77.75395,"page_type":"HOME"},"capability":"zepto.ads"}'

Input

Field Type Required Description
category_id string optional Category ID (relevant when page_type is CATEGORY).
latitude number optional Latitude for location-based store resolution.
limit integer optional Maximum number of ad placements to return.
longitude number optional Longitude for location-based store resolution.
page_type string optional Type of page to fetch ads for.
query string optional Search query (relevant when page_type is SEARCH).
store_id string optional Zepto store ID. Defaults to the public Bangalore sample store.
subcategory_id string optional Subcategory ID (relevant when page_type is CATEGORY).
url string optional Direct URL to a Zepto page for ad context.

Output

Field Type Required Description
count integer optional Total number of ad placements returned.
location_eta_in_minutes integer optional
location_eta_serviceable boolean optional
location_is_nightly_store boolean optional
location_latitude number optional
location_longitude number optional
location_secondary_store_ids array<string> optional
location_serviceable boolean optional
location_source_url string optional
location_store_id string optional
location_store_ids array<string> optional
page_type string optional The page type that was queried.
query string optional The search query used, if any.
results array<object> optional List of ad placement objects.
results[].ads_response_id string optional
results[].brand string optional
results[].campaign_name string optional
results[].category_id string optional
results[].category_name string optional
results[].deeplink_url string optional
results[].discount_percent integer optional
results[].discounted_selling_price_paise integer optional
results[].element_id string optional
results[].element_name string optional
results[].element_type string optional
results[].formatted_pack_size string optional
results[].image_url string optional
results[].is_sponsored boolean optional
results[].mrp_paise integer optional
results[].page_type string optional
results[].placement_type string optional
results[].position_in_list integer optional
results[].product_id string optional
results[].product_name string optional
results[].product_url string optional
results[].product_variant_id string optional
results[].rank integer optional
results[].selling_price_paise integer optional
results[].store_product_id string optional
results[].subcategory_id string optional
results[].subcategory_name string optional
results[].widget_id string optional
results[].widget_name string optional
results[].widget_title string optional
results[].widget_type string optional
source_url string optional Source URL used to fetch ads.

List Categories

zepto.categories

List Zepto category and subcategory IDs for a store or latitude/longitude.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"latitude":12.96902,"longitude":77.75395},"capability":"zepto.categories"}'

Input

Field Type Required Description
latitude number optional Latitude for location-based store resolution.
longitude number optional Longitude for location-based store resolution.
store_id string optional Zepto store ID. Defaults to the public Bangalore sample store.

Output

Field Type Required Description
count integer optional Total number of categories returned.
location_eta_in_minutes integer optional
location_eta_serviceable boolean optional
location_is_nightly_store boolean optional
location_latitude number optional
location_longitude number optional
location_secondary_store_ids array<string> optional
location_serviceable boolean optional
location_source_url string optional
location_store_id string optional
location_store_ids array<string> optional
results array<object> optional List of category objects.
results[].category_id string optional
results[].category_image_url string optional
results[].category_name string optional
results[].category_priority integer optional
results[].category_url string optional
results[].facebook_subcategory string optional
results[].google_subcategory string optional
results[].rank integer optional
results[].subcategory_id string optional
results[].subcategory_image_url string optional
results[].subcategory_image_v2_url string optional
results[].subcategory_name string optional
results[].subcategory_priority integer optional
source_url string optional Source URL used to fetch categories.

List Category Products

zepto.category.products

List Zepto products from a /cn/.../cid/.../scid/... category URL.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"limit":5,"url":"https://www.zepto.com/cn/fruits-vegetables/fresh-fruits/cid/64374cfe-d06f-4a01-898e-c07c46462c36/scid/09e63c15-e5f7-4712-9ff8-513250b79942"},"capability":"zepto.category.products"}'

Input

Field Type Required Description
category_id string optional Zepto category ID to browse.
latitude number optional Latitude for location-based store resolution.
limit integer optional Maximum number of products to return per page.
longitude number optional Longitude for location-based store resolution.
max_pages integer optional Maximum number of pages to fetch.
page_number integer optional One-based page number to start from.
store_id string optional Zepto store ID. Defaults to the public Bangalore sample store.
subcategory_id string optional Zepto subcategory ID to browse.
url string optional Direct URL to a Zepto category page.

Output

Field Type Required Description
count integer optional Total number of products returned.
has_more boolean optional Whether more pages are available.
location_eta_in_minutes integer optional
location_eta_serviceable boolean optional
location_is_nightly_store boolean optional
location_latitude number optional
location_longitude number optional
location_secondary_store_ids array<string> optional
location_serviceable boolean optional
location_source_url string optional
location_store_id string optional
location_store_ids array<string> optional
page_number integer optional Current page number.
pages_fetched integer optional Number of pages fetched.
results array<object> optional List of products in the category.
results[].available_quantity integer optional
results[].brand string optional
results[].country_of_origin string optional
results[].description string optional
results[].discount_percent integer optional
results[].discounted_selling_price_paise integer optional
results[].formatted_pack_size string optional
results[].image_url string optional
results[].image_urls array<string> optional
results[].mrp_paise integer optional
results[].name string optional
results[].product_id string optional
results[].product_url string optional
results[].product_variant_id string optional
results[].selling_price_paise integer optional
results[].store_id string optional
results[].store_product_id string optional
results[].unit_of_measure string optional
source_url string optional Source URL used to fetch category products.

Health Check

zepto.health

Run a Zepto liveness check across location, catalog, search, and ad surfaces.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"latitude":12.96902,"longitude":77.75395},"capability":"zepto.health"}'

Input

Field Type Required Description
latitude number optional Latitude for location-based health check.
longitude number optional Longitude for location-based health check.

Output

Field Type Required Description
ads_category_count integer optional
ads_category_ok boolean optional
ads_home_count integer optional
ads_home_ok boolean optional
ads_search_count integer optional
ads_search_ok boolean optional
categories_count integer optional
categories_ok boolean optional
first_error string optional First error encountered during the health check, if any.
location_ok boolean optional
location_store_id string optional Store ID resolved during health check.
search_count integer optional
search_ok boolean optional
status string optional Overall health status.

Resolve Location

zepto.location

Resolve Zepto serviceability and store IDs for a latitude/longitude.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"latitude":12.96902,"longitude":77.75395},"capability":"zepto.location"}'

Input

Field Type Required Description
latitude number required Latitude of the delivery location.
longitude number required Longitude of the delivery location.

Output

Field Type Required Description
location_eta_in_minutes integer optional Estimated delivery time in minutes.
location_eta_serviceable boolean optional Whether the ETA is within a serviceable range.
location_is_nightly_store boolean optional Whether the resolved store is a nightly store.
location_latitude number optional Resolved latitude.
location_longitude number optional Resolved longitude.
location_secondary_store_ids array<string> optional Secondary store IDs for this location.
location_serviceable boolean optional Whether Zepto services this location.
location_source_url string optional Source URL used to resolve the location.
location_store_id string optional Primary store ID for this location.
location_store_ids array<string> optional All store IDs serving this location.

Place Autocomplete

zepto.place.autocomplete

Find Zepto-supported address and place suggestions.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"limit":3,"query":"Indiranagar Bengaluru"},"capability":"zepto.place.autocomplete"}'

Input

Field Type Required Description
limit integer optional Maximum number of autocomplete suggestions to return.
query string required Partial place name or address to autocomplete.

Output

Field Type Required Description
count integer optional Number of predictions returned.
query string optional The autocomplete query that was executed.
results array<object> optional List of place predictions.
results[].description string optional
results[].main_text string optional
results[].place_id string optional
results[].rank integer optional
results[].secondary_text string optional
results[].types string optional
source_url string optional Source URL used for autocomplete.

Place Details

zepto.place.details

Resolve a Zepto place ID to coordinates and address components.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"place_id":"ChIJkQN3GKQWrjsRNhBQJrhGD7U"},"capability":"zepto.place.details"}'

Input

Field Type Required Description
place_id string required Google Maps place ID to look up.

Output

Field Type Required Description
city string optional
country string optional
country_code string optional
district string optional
formatted_address string optional
latitude number optional
locality string optional
location_type string optional
longitude number optional
place_id string optional
source_url string optional Source URL used to fetch place details.
state string optional
state_code string optional
types string optional

Resolve Place

zepto.place.resolve

Resolve an address or place ID to coordinates, address details, and Zepto store serviceability.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"query":"Indiranagar Bengaluru"},"capability":"zepto.place.resolve"}'

Input

Field Type Required Description
place_id string optional Google Maps place ID to resolve directly.
query string optional Place name or address to search for.

Output

Field Type Required Description
city string optional
country string optional
country_code string optional
district string optional
formatted_address string optional
latitude number optional
locality string optional
location_eta_in_minutes integer optional
location_eta_serviceable boolean optional
location_is_nightly_store boolean optional
location_latitude number optional
location_longitude number optional
location_secondary_store_ids array<string> optional
location_serviceable boolean optional
location_source_url string optional
location_store_id string optional
location_store_ids array<string> optional
location_type string optional
longitude number optional
place_id string optional
query string optional
source_url string optional
state string optional
state_code string optional
types string optional

Get Product

zepto.product

Get Zepto product details from a product URL or product variant ID.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"url":"https://www.zepto.com/pn/tender-coconut/pvid/b9fbf0e7-de2d-4a89-ae74-b12a7c0ab236"},"capability":"zepto.product"}'

Input

Field Type Required Description
latitude number optional Latitude for location-based store resolution.
longitude number optional Longitude for location-based store resolution.
pvid string optional Zepto product variant ID.
store_id string optional Zepto store ID. Defaults to the public Bangalore sample store.
url string optional Direct URL to a Zepto product page.

Output

Field Type Required Description
location_eta_in_minutes integer optional
location_eta_serviceable boolean optional
location_is_nightly_store boolean optional
location_latitude number optional
location_longitude number optional
location_secondary_store_ids array<string> optional
location_serviceable boolean optional
location_source_url string optional
location_store_id string optional
location_store_ids array<string> optional
product object optional The product details.
product.available_quantity integer optional
product.brand string optional
product.country_of_origin string optional
product.description string optional
product.discount_percent integer optional
product.discounted_selling_price_paise integer optional
product.formatted_pack_size string optional
product.image_url string optional
product.image_urls array<string> optional
product.mrp_paise integer optional
product.name string optional
product.product_id string optional
product.product_url string optional
product.product_variant_id string optional
product.selling_price_paise integer optional
product.store_id string optional
product.store_product_id string optional
product.unit_of_measure string optional

Search Products

zepto.search

Search Zepto products by keyword.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"limit":5,"query":"rice"},"capability":"zepto.search"}'

Input

Field Type Required Description
latitude number optional Latitude for location-based store resolution.
limit integer optional Maximum number of products to return per page.
longitude number optional Longitude for location-based store resolution.
max_pages integer optional Maximum number of pages to fetch.
page_number integer optional Zero-based page number to start from.
query string required Search query string.
store_id string optional Zepto store ID. Defaults to the public Bangalore sample store.

Output

Field Type Required Description
count integer optional Total number of products returned.
has_more boolean optional Whether more pages are available.
location_eta_in_minutes integer optional
location_eta_serviceable boolean optional
location_is_nightly_store boolean optional
location_latitude number optional
location_longitude number optional
location_secondary_store_ids array<string> optional
location_serviceable boolean optional
location_source_url string optional
location_store_id string optional
location_store_ids array<string> optional
page_number integer optional Current page number.
pages_fetched integer optional Number of pages fetched.
query string optional The search query that was executed.
results array<object> optional List of matching products.
results[].available_quantity integer optional
results[].brand string optional
results[].country_of_origin string optional
results[].description string optional
results[].discount_percent integer optional
results[].discounted_selling_price_paise integer optional
results[].formatted_pack_size string optional
results[].image_url string optional
results[].image_urls array<string> optional
results[].mrp_paise integer optional
results[].name string optional
results[].product_id string optional
results[].product_url string optional
results[].product_variant_id string optional
results[].selling_price_paise integer optional
results[].store_id string optional
results[].store_product_id string optional
results[].unit_of_measure string optional
source_url string optional Source URL used for the search.

Search Filters

zepto.search.filters

Get Zepto filter metadata for a search query.

Request

curl -X POST https://data.upscrape.com/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":{"latitude":12.96902,"longitude":77.75395,"query":"rice"},"capability":"zepto.search.filters"}'

Input

Field Type Required Description
latitude number optional Latitude for location-based store resolution.
longitude number optional Longitude for location-based store resolution.
query string required Search query to get filters for.
store_id string optional Zepto store ID. Defaults to the public Bangalore sample store.

Output

Field Type Required Description
count integer optional Number of filters returned.
filters_json string optional Raw JSON string containing the filter definitions.
location_eta_in_minutes integer optional
location_eta_serviceable boolean optional
location_is_nightly_store boolean optional
location_latitude number optional
location_longitude number optional
location_secondary_store_ids array<string> optional
location_serviceable boolean optional
location_source_url string optional
location_store_id string optional
location_store_ids array<string> optional
query string optional The search query that was used.
source_url string optional Source URL used to fetch filters.

Run Zepto in under a minute

Sign in, create an API key, and try any capability in the playground before you write code.

Get an API key