---
title: "Find nearby stored DoorDash stores"
method: GET
path: "/datasets/doordash-stores/nearby"
tags: ["Datasets"]
---

# Find nearby stored DoorDash stores

`GET /datasets/doordash-stores/nearby`

## Request

- Base URL: `https://api.crawlora.net/api/v1`
- URL: `https://api.crawlora.net/api/v1/datasets/doordash-stores/nearby`
- Auth: API key in header `x-api-key`

Returns stored DoorDash stores within a radius of a point, nearest first, from dataset id `doordash-stores`. lat, lon, and radius_m are required. Unlike the live /doordash/search endpoint (which is a proximity search capped at roughly five stores), this queries the stored directory, so it can return every discovered store in the radius. Coverage is best-effort rather than provably exhaustive: a store DoorDash never surfaced, or one not yet hydrated with coordinates, will not appear. Billing: this endpoint costs 1 credit per record returned, with a minimum of 2 (an empty result costs 2, a full page of 100 costs 100).

## Query parameters

- `lat` number, required
- `lon` number, required
- `radius_m` integer, required
- `country` string
- `tag` string
- `dash_pass_only` boolean
- `pagination` 'offset' | 'cursor'
- `cursor` string
- `page` integer
- `page_size` integer

## Headers

- `x-api-key` string, required

## Response `200`

OK

- DatasetsDoorDashStoresSearchResponseDoc
  - `code` integer
  - `data` DatasetsDoorDashStoreSearchResponse
    - `dataset` string
    - `has_more` boolean
    - `items` EsDoorDashStoreDatasetItem[]
      - `address` string
      - `asap_available` boolean
      - `average_rating` number
      - `city` string
      - `city_region` string
      - `country` string
      - `cover_image_url` string
      - `crawled_at` string
      - `dash_pass_eligible` boolean
      - `discovery_city` string: Discovery geography identifies the GeoNames seed cell that produced this observation. It is not a claim that the store's postal city matches the seed city's name; hydrated City/State come from the store-info card.
      - `discovery_country` string
      - `discovery_state` string
      - `display_asap_time` string
      - `display_status` string
      - `distance_meters` number
      - `first_seen_at` string
      - `has_phone` boolean
      - `has_website` boolean
      - `id` string
      - `last_seen_at` string
      - `latitude` number
      - `location` EsGeoPoint
        - `lat` number: Latitude in decimal degrees.
        - `lon` number: Longitude in decimal degrees.
      - `longitude` number
      - `name` string
      - `number_of_ratings` integer
      - `phone` string
      - `pickup_available` boolean
      - `postal_code` string
      - `price_range` integer
      - `run_id` string
      - `schema_version` integer
      - `search_text` string
      - `state` string
      - `store_id` string
      - `street` string
      - `tags` string[]: Tags is the marketplace's own comma-split tag list, kept as a keyword so it can back a terms facet; SearchText is the free-text projection over name + address + tags.
      - `top_items` EsDoorDashStoreTopItem[]: TopItems is a bounded preview of the merchant's menu, stored unindexed.
        - `image_url` string
        - `item_id` string
        - `name` string
        - `price` string
      - `url` string
      - `website` string
    - `next_cursor` string
    - `page` integer
    - `page_size` integer
    - `pagination` string
    - `sort` string
    - `total` integer
  - `msg` string

## Other responses

- `400`: Bad Request
- `429`: Too Many Requests
- `500`: Internal Server Error

---

[API](https://skmtc.dev/crawlora/apis/crawlora-api.md) · [All operations](https://skmtc.dev/crawlora/apis/crawlora-api/llms.txt) · [OpenAPI document](https://skmtc.dev/crawlora/apis/crawlora-api/revisions/028417aa35bb?raw)
