Zepto Place Autocomplete
zepto.place.autocomplete
Search a place name to see suggested localities. Use their area labels to choose the right place for your check.
At a glance
- Endpoint ID
zepto.place.autocomplete- Price
- 1.5 credits per call; failed calls are free
- Runs for up to
- 180 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": "zepto.place.autocomplete", "input": { "limit": 3, "query": "Indiranagar Bengaluru" }}'
import jsonimport osimport requestspayload = json.loads(r'''{ "capability": "zepto.place.autocomplete", "input": { "limit": 3, "query": "Indiranagar Bengaluru" }}''')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": "zepto.place.autocomplete", "input": { "limit": 3, "query": "Indiranagar Bengaluru" }}),});if (!response.ok) { throw new Error(`Upscrape request failed: ${response.status}`);}console.log(JSON.stringify(await response.json(), null, 2));
Input
- Provide query. limit accepts 1 to 20 suggestions and defaults to 5.
| Field | Type | Required | What it does | Example |
|---|---|---|---|---|
query |
string | yes | Partial place name or address to autocomplete. | Indiranagar Bengaluru |
limit |
integer | no | Maximum number of autocomplete suggestions to return. From 1 to 20. Default: 5. |
3 |
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:
{ "captured_at": "2026-10-04T12:02:34.241794508Z", "count": 3, "results": [ { "description": "Indiranagar, Bengaluru, Karnataka, India", "main_text": "Indiranagar", "place_id": "ChIJkQN3GKQWrjsRNhBQJrhGD7U", "rank": 1, "secondary_text": "Bengaluru, Karnataka, India", "types": "geocode political sublocality sublocality_level_1" }, { "description": "Indiranagar, Chinmaya Mission Hospital Road, Binnamangala, Stage 1, Indiranagar, Bengaluru, Karnataka, India", "main_text": "Indiranagar", "place_id": "ChIJZbZd-qQWrjsRe7G5a9GUZ9U", "rank": 2, "secondary_text": "Chinmaya Mission Hospital Road, Binnamangala, Stage 1, Indiranagar, Bengaluru, Karnataka, India", "types": "establishment point_of_interest subway_station transit_station" } ]}
Fields
| Field | Type | What it is | Example |
|---|---|---|---|
results[].description |
string | Suggested public place and its area. | Indiranagar, Bengaluru, Karnataka, India |
results[].place_id |
string | Identity used to request details for a selected place. | ChIJkQN3GKQWrjsRNhBQJrhGD7U |
results[].main_text |
string | Main label for the suggested place. | Indiranagar |
results[].secondary_text |
string | Area information that helps distinguish similarly named places. | Bengaluru, Karnataka, India |
results[].rank |
integer | Position in the list. | 1 |
results[].types |
string | The kinds of place, such as locality. | geocode political sublocality sublocality_level_1 |
captured_at |
string | When this result was collected. | 2026-10-04T12:02:34.241794508Z |
count |
integer | Number of products returned for this delivery context. | 3 |
results |
array | The results returned. | 3 records |
What to know
- Suggestions can carry a main text, a second line, a description, types, a rank and a place ID. A suggestion is a possible place, not proof that Zepto delivers there.
- When nothing matches, the count is 0 and the results are empty. Use a returned place ID with place details or place resolve.
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 Zepto endpoints
zepto.adsAdszepto.catalogStore catalogzepto.catalog.multi_locationMulti-location catalogzepto.categoriesCategorieszepto.category.productsCategory productszepto.etaETAzepto.healthHealth checkzepto.locationResolve locationzepto.place.detailsPlace detailszepto.place.resolveResolve placezepto.productProductzepto.searchProducts searchzepto.search.facetsSummarize search facetszepto.search.multi_locationMulti-location search
Something missing or unclear? Ask the team that builds the Zepto endpoints.