DoorDash Scraper
Pricing
from $1.20 / 1,000 products
Go to Apify Store
DoorDash Scraper
Scrape DoorDash stores, menus, grocery/retail products, collections, and deals by search query, store URL, or collection URL for a delivery location.
DoorDash Scraper
Pricing
from $1.20 / 1,000 products
Scrape DoorDash stores, menus, grocery/retail products, collections, and deals by search query, store URL, or collection URL for a delivery location.
You can access the DoorDash Scraper programmatically from your own applications by using the Apify API. You can also choose the language preference from below. To use the Apify API, you’ll need an Apify account and your API token, found in API & Integrations in Apify Console.
{ "openapi": "3.0.1", "info": { "version": "1.0", "x-build-id": "PgXJfczyIT3MFbcxb" }, "servers": [ { "url": "https://api.apify.com/v2" } ], "paths": { "/acts/rigelbytes~doordash-scraper/run-sync-get-dataset-items": { "post": { "operationId": "run-sync-get-dataset-items-rigelbytes-doordash-scraper", "x-openai-isConsequential": false, "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK" } } } }, "/acts/rigelbytes~doordash-scraper/runs": { "post": { "operationId": "runs-sync-rigelbytes-doordash-scraper", "x-openai-isConsequential": false, "summary": "Executes an Actor and returns information about the initiated run in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/runsResponseSchema" } } } } } } }, "/acts/rigelbytes~doordash-scraper/run-sync": { "post": { "operationId": "run-sync-rigelbytes-doordash-scraper", "x-openai-isConsequential": false, "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK" } } } } }, "components": { "schemas": { "inputSchema": { "type": "object", "required": [ "location" ], "properties": { "location": { "title": "Delivery location", "type": "string", "description": "Address, city, or postal code used as the DoorDash drop-off location (for example \"72076\" or \"Flushing, OH\"). Search, store availability, and prices are resolved for this location." }, "searchQueries": { "title": "Search queries", "type": "array", "description": "Cuisine, store name, or item searches (for example Fast Food, McDonald's, burgers). Each query is searched at the delivery location.", "items": { "type": "string" } }, "startUrls": { "title": "DoorDash URLs", "type": "array", "description": "Search, store, collection, grocery/retail tab, or product URLs from doordash.com (for example https://www.doordash.com/store/24508264 or a /convenience/store/{id}/collection/{id} URL). Collection URLs always extract that collection.", "items": { "type": "object", "required": [ "url" ], "properties": { "url": { "type": "string", "title": "URL of a web page", "format": "uri" } } } }, "scrapeProducts": { "title": "Scrape products", "type": "boolean", "description": "Extract menu items and retail products. Charged as the product event (or product-details when that option is on).", "default": true }, "scrapeProductDetails": { "title": "Scrape product details", "type": "boolean", "description": "Include the fuller product payload and charge the product-details event instead of the listing product event. Off by default.", "default": false }, "scrapeStoreDetails": { "title": "Scrape store information", "type": "boolean", "description": "Push a store record (address, ratings, hours-related flags, delivery options). Off by default. Charged as the store event.", "default": false }, "scrapeStoreCollections": { "title": "Scrape store collections", "type": "boolean", "description": "Push menu categories and grocery/retail collections. Off by default. Collection URLs still extract the opened collection. Charged as the store-collection event.", "default": false }, "scrapeDeals": { "title": "Scrape deals", "type": "boolean", "description": "Also open the grocery and retail deal surfaces for the delivery location and extract featured deal products.", "default": false }, "maxItems": { "title": "Max items", "minimum": 0, "type": "integer", "description": "Maximum number of records to scrape across all types (0 = unlimited).", "default": 0 }, "proxyConfiguration": { "title": "Proxy configuration", "type": "object", "description": "Use Apify Residential proxies. DoorDash availability is location-specific.", "default": { "useApifyProxy": true, "apifyProxyGroups": [ "RESIDENTIAL" ], "apifyProxyCountry": "US" } } } }, "runsResponseSchema": { "type": "object", "properties": { "data": { "type": "object", "properties": { "id": { "type": "string" }, "actId": { "type": "string" }, "userId": { "type": "string" }, "startedAt": { "type": "string", "format": "date-time", "example": "2025-01-08T00:00:00.000Z" }, "finishedAt": { "type": "string", "format": "date-time", "example": "2025-01-08T00:00:00.000Z" }, "status": { "type": "string", "example": "READY" }, "meta": { "type": "object", "properties": { "origin": { "type": "string", "example": "API" }, "userAgent": { "type": "string" } } }, "stats": { "type": "object", "properties": { "inputBodyLen": { "type": "integer", "example": 2000 }, "rebootCount": { "type": "integer", "example": 0 }, "restartCount": { "type": "integer", "example": 0 }, "resurrectCount": { "type": "integer", "example": 0 }, "computeUnits": { "type": "integer", "example": 0 } } }, "options": { "type": "object", "properties": { "build": { "type": "string", "example": "latest" }, "timeoutSecs": { "type": "integer", "example": 300 }, "memoryMbytes": { "type": "integer", "example": 1024 }, "diskMbytes": { "type": "integer", "example": 2048 } } }, "buildId": { "type": "string" }, "defaultKeyValueStoreId": { "type": "string" }, "defaultDatasetId": { "type": "string" }, "defaultRequestQueueId": { "type": "string" }, "buildNumber": { "type": "string", "example": "1.0.0" }, "containerUrl": { "type": "string" }, "usage": { "type": "object", "properties": { "ACTOR_COMPUTE_UNITS": { "type": "integer", "example": 0 }, "DATASET_READS": { "type": "integer", "example": 0 }, "DATASET_WRITES": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_READS": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_WRITES": { "type": "integer", "example": 1 }, "KEY_VALUE_STORE_LISTS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_READS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_WRITES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_INTERNAL_GBYTES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_EXTERNAL_GBYTES": { "type": "integer", "example": 0 }, "PROXY_RESIDENTIAL_TRANSFER_GBYTES": { "type": "integer", "example": 0 }, "PROXY_SERPS": { "type": "integer", "example": 0 }, "PROXY_UNBLOCKER_UNITS": { "type": "integer", "example": 0 } } }, "usageTotalUsd": { "type": "number", "example": 0.00005 }, "usageUsd": { "type": "object", "properties": { "ACTOR_COMPUTE_UNITS": { "type": "integer", "example": 0 }, "DATASET_READS": { "type": "integer", "example": 0 }, "DATASET_WRITES": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_READS": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_WRITES": { "type": "number", "example": 0.00005 }, "KEY_VALUE_STORE_LISTS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_READS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_WRITES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_INTERNAL_GBYTES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_EXTERNAL_GBYTES": { "type": "integer", "example": 0 }, "PROXY_RESIDENTIAL_TRANSFER_GBYTES": { "type": "integer", "example": 0 }, "PROXY_SERPS": { "type": "integer", "example": 0 }, "PROXY_UNBLOCKER_UNITS": { "type": "integer", "example": 0 } } } } } } } } }}OpenAPI is a standard for designing and describing RESTful APIs, allowing developers to define API structure, endpoints, and data formats in a machine-readable way. It simplifies API development, integration, and documentation.
OpenAPI is effective when used with AI agents and GPTs by standardizing how these systems interact with various APIs, for reliable integrations and efficient communication.
By defining machine-readable API specifications, OpenAPI allows AI models like GPTs to understand and use varied data sources, improving accuracy. This accelerates development, reduces errors, and provides context-aware responses, making OpenAPI a core component for AI applications.
You can download the OpenAPI definitions for DoorDash Scraper from the options below:
If you’d like to learn more about how OpenAPI powers GPTs, read our blog post.
You can also check out our other API clients: