Doordash Delivery API

The Delivery API from Doordash — 12 operation(s) for delivery.

Operations 14

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

POST /drive/v1/estimates Estimate delivery fee and time (Drive v1) · Delivery Estimate #
Ask an LLM
“How much would a Drive v1 delivery cost for a given order value?”
“Can the v1 estimates endpoint tell me if a dropoff address is serviced?”
Tell an agent
Estimate a v1 delivery of an order worth {order_value} to {dropoff_address}.
Get a v1 fee and time estimate from {pickup_address} to {dropoff_address} for {order_value}.
POST /drive/v1/validations Validate v1 delivery details before creating · Delivery Validation #
Ask an LLM
“Can I validate v1 delivery inputs and serviceability before creating the delivery?”
“Which of my delivery fields would fail v1 validation?”
Tell an agent
Validate a v1 delivery to {dropoff_address} for customer {customer} worth {order_value}.
Check whether my details for {dropoff_address} pass v1 delivery validation.
POST /drive/v1/deliveries Create a delivery with the Drive v1 API · Delivery Creation #
Ask an LLM
“How do I create a delivery with the older Drive v1 API?”
“Can a v1 delivery require a signature or allow unattended dropoff?”
Tell an agent
Create a v1 delivery to {dropoff_address} for customer {customer} with order value {order_value}.
Book a v1 delivery with a {tip} tip to {dropoff_address} for {customer}, worth {order_value}.
GET /drive/v1/deliveries/{delivery_id} Get a v1 delivery by DoorDash delivery ID · Delivery Details #
Ask an LLM
“What are the details of a delivery by its v1 delivery id?”
“Can I include extra fields when fetching a v1 delivery?”
Tell an agent
Get v1 delivery {delivery_id}.
Show details of v1 delivery {delivery_id}.
PATCH /drive/v1/deliveries/{delivery_id} Change the time or address of a v1 delivery · Update Delivery #
Ask an LLM
“Can I change the delivery time or dropoff address on a v1 delivery?”
“Is it possible to move the pickup window of a v1 delivery?”
Tell an agent
Change the dropoff address of v1 delivery {delivery_id} to {dropoff_address}.
Move the delivery window of v1 delivery {delivery_id} to start at {delivery_window_start_time}.
PUT /drive/v1/deliveries/{delivery_id}/cancel Cancel or return a v1 delivery · Cancel Delivery #
Ask an LLM
“How do I cancel or start a return for a v1 delivery?”
“Can I give a reason code when cancelling a v1 delivery?”
Tell an agent destructive · confirm first
Cancel v1 delivery {delivery_id}.
Cancel v1 delivery {delivery_id} with reason code {reason_code}.
POST /drive/v2/quotes Quote a delivery's fee and check coverage · Create Quote #
Ask an LLM
“How do I get a quote to confirm a delivery is serviceable and see the fee?”
“Can I set when a delivery quote expires?”
Tell an agent
Quote delivery {external_delivery_id} from {pickup_address} to {dropoff_address}.
Create a quote for delivery {external_delivery_id} with order value {order_value}.
POST /drive/v2/quotes/{external_delivery_id}/accept Accept a quote to start the delivery · Accept Quote #
Ask an LLM
“What do I call to accept a quote and start the delivery?”
“Can I add a tip when accepting a quote?”
Tell an agent
Accept the quote for delivery {external_delivery_id}.
Accept quote {external_delivery_id} with a tip of {tip}.
POST /drive/v2/deliveries Create a Drive delivery without a quote · Create Delivery #
Ask an LLM
“How do I create a Drive delivery directly without quoting first?”
“Can I specify a pickup window and a dropoff window for a new delivery?”
Tell an agent
Create delivery {external_delivery_id} from {pickup_address} to {dropoff_address} without quoting.
Create delivery {external_delivery_id} to {dropoff_address} for contact {dropoff_contact_given_name} at {dropoff_phone_number}.
GET /drive/v2/deliveries/{external_delivery_id} Get a Drive delivery by external ID · Get Delivery #
Ask an LLM
“What's the current status of a Drive delivery I created?”
“Can I look up a delivery by my own external delivery id?”
Tell an agent
Get the status of delivery {external_delivery_id}.
Look up delivery {external_delivery_id} and its details.
PATCH /drive/v2/deliveries/{external_delivery_id} Update a Drive delivery I already created · Update Delivery #
Ask an LLM
“Which fields of a delivery can I change after creating it?”
“Can I update the dropoff phone number on a delivery I already created?”
Tell an agent
Update the dropoff phone number on delivery {external_delivery_id} to {dropoff_phone_number}.
Change the dropoff instructions for delivery {external_delivery_id} to {dropoff_instructions}.
PUT /drive/v2/deliveries/{external_delivery_id}/cancel Cancel a Drive delivery · Cancel Delivery #
Ask an LLM
“Can I cancel a delivery after a Dasher is assigned?”
“How do I create a return delivery instead of cancelling a cold chain order?”
Tell an agent destructive · confirm first
Cancel delivery {external_delivery_id}.
Cancel delivery {external_delivery_id} with reason {reason_code}.
POST /drive/v2/items_substitution_recommendation Get item substitution suggestions for Dasher Shop · Get Items Substitution Recommendation #
Ask an LLM
“What substitutions are recommended for items in a Dasher Shop order?”
“Can I get replacement suggestions for items at a specific store?”
Tell an agent
Recommend substitutions for {items} at store {pickup_external_store_id} of business {pickup_external_business_id}.
Find replacement items for {items} in a Dasher Shop order at store {pickup_external_store_id}.
POST /drive/v2/serviceability Check if a pickup and dropoff are serviceable · Check Serviceability #
Ask an LLM
“Does DoorDash deliver between this pickup address and this dropoff address?”
“Can I check serviceability using my business and store ids?”
Tell an agent
Check if delivery is serviceable from {pickup_address} to {dropoff_address}.
Check serviceability from store {pickup_external_store_id} at {pickup_address} to {dropoff_address}.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/doordash-delivery-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

doordash-delivery-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Doordash Delivery API
  x-refined-note:
  - x-logo differs across the merged source definitions and was not carried
  version: '1.0'
  description: 'Operations tagged Delivery across 2 of this provider''s published API definitions: doordash-drive-classic-openapi.yml, doordash-drive-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://openapi.doordash.com
  variables: {}
tags:


# --- truncated at 32 KB (171 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/doordash/refs/heads/main/openapi/doordash-delivery-api-openapi.yml