DoorDash Drive Classic API

The DoorDash Drive Classic API is the legacy version of the Drive API, designed for large enterprises and middleware providers who require extensive configuration and customizability for their delivery integrations. It provides endpoints for managing businesses, stores, and deliveries through DoorDash's logistics platform. The API uses JWT-based Bearer token authentication and operates at the v1 endpoint path.

OpenAPI Specification

doordash-drive-classic-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: DoorDash Drive Classic API
  description: >-
    The DoorDash Drive Classic API is the legacy version of the Drive API,
    designed for large enterprises and middleware providers who require
    extensive configuration and customizability for their delivery
    integrations. It provides endpoints for managing businesses, stores,
    and deliveries through DoorDash's logistics platform. While still
    supported, DoorDash recommends new integrations use the newer Drive
    API (v2) instead.
  version: '1.0'
  contact:
    name: DoorDash Developer Support
    url: https://developer.doordash.com/en-US/
  termsOfService: https://www.doordash.com/terms/
externalDocs:
  description: DoorDash Drive Classic API Documentation
  url: https://developer.doordash.com/en-US/docs/drive_classic/overview/about_drive_classic/
servers:
- url: https://openapi.doordash.com/drive/v1
  description: Production Server
tags:
- name: Businesses
  description: >-
    Manage business entities that represent legal entities or owners.
- name: Deliveries
  description: >-
    Create, retrieve, update, cancel, and estimate deliveries using the
    classic API endpoints.
- name: Stores
  description: >-
    Manage store locations associated with businesses.
security:
- bearerAuth: []
paths:
  /estimates:
    post:
      operationId: createDeliveryEstimate
      summary: DoorDash Create a Delivery Estimate
      description: >-
        Requests time and fee estimates for a delivery. Can also be used to
        check if an area is serviced by DoorDash. Time values must be provided
        in UTC ISO-8601 format.
      tags:
      - Deliveries
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EstimateRequest'
            examples:
              CreateDeliveryEstimateRequestExample:
                summary: Default createDeliveryEstimate request
                x-microcks-default: true
                value:
                  pickup_address: 901 Market St, San Francisco, CA 94105
                  dropoff_address: 901 Market St, San Francisco, CA 94105
                  pickup_time: '2026-06-02T14:30:00Z'
                  order_value: 42
      responses:
        '200':
          description: Delivery estimate created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Estimate'
              examples:
                CreateDeliveryEstimate200Example:
                  summary: Default createDeliveryEstimate 200 response
                  x-microcks-default: true
                  value:
                    fee: 42
                    currency: USD
                    pickup_time: '2026-06-02T14:30:00Z'
                    dropoff_time: '2026-06-02T14:30:00Z'
                    delivery_duration: 42
        '400':
          description: Invalid request parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                CreateDeliveryEstimate400Example:
                  summary: Default createDeliveryEstimate 400 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                CreateDeliveryEstimate401Example:
                  summary: Default createDeliveryEstimate 401 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /deliveries:
    post:
      operationId: createDelivery
      summary: DoorDash Create a Delivery
      description: >-
        Creates a new delivery request. DoorDash will assign a Dasher to
        fulfill the delivery. Time values must be provided in UTC format.
        The API recommends up to 3 retries with exponential backoff.
      tags:
      - Deliveries
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClassicDeliveryRequest'
            examples:
              CreateDeliveryRequestExample:
                summary: Default createDelivery request
                x-microcks-default: true
                value:
                  external_delivery_id: D-12345
                  pickup_address: 901 Market St, San Francisco, CA 94105
                  pickup_business_name: Acme Pickup Store
                  pickup_phone_number: '+15555551234'
                  pickup_instructions: Leave at the front desk.
                  dropoff_address: 901 Market St, San Francisco, CA 94105
                  dropoff_business_name: Acme Pickup Store
                  dropoff_phone_number: '+15555551234'
                  dropoff_instructions: Leave at the front desk.
                  dropoff_contact_given_name: Acme Pickup Store
                  dropoff_contact_family_name: Acme Pickup Store
                  order_value: 42
                  tip: 42
                  pickup_time: '2026-06-02T14:30:00Z'
                  dropoff_time: '2026-06-02T14:30:00Z'
                  contains_alcohol: true
                  external_business_id: D-12345
                  external_store_id: D-12345
      responses:
        '200':
          description: Delivery created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClassicDelivery'
              examples:
                CreateDelivery200Example:
                  summary: Default createDelivery 200 response
                  x-microcks-default: true
                  value:
                    external_delivery_id: D-12345
                    delivery_status: created
                    fee: 42
                    currency: USD
                    tip: 42
                    pickup_address: 901 Market St, San Francisco, CA 94105
                    dropoff_address: 901 Market St, San Francisco, CA 94105
                    pickup_time_estimated: '2026-06-02T14:30:00Z'
                    pickup_time_actual: '2026-06-02T14:30:00Z'
                    dropoff_time_estimated: '2026-06-02T14:30:00Z'
                    dropoff_time_actual: '2026-06-02T14:30:00Z'
                    dasher_id: 42
                    dasher_name: Acme Pickup Store
                    tracking_url: https://example.com/path/abc123
                    created_at: '2026-06-02T14:30:00Z'
                    updated_at: '2026-06-02T14:30:00Z'
        '400':
          description: Invalid request parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                CreateDelivery400Example:
                  summary: Default createDelivery 400 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                CreateDelivery401Example:
                  summary: Default createDelivery 401 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /deliveries/{external_delivery_id}:
    get:
      operationId: getDelivery
      summary: DoorDash Get Delivery Details
      description: >-
        Retrieves the current details and status of a delivery using the
        external delivery ID provided during creation.
      tags:
      - Deliveries
      parameters:
      - $ref: '#/components/parameters/ExternalDeliveryId'
      responses:
        '200':
          description: Delivery details retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClassicDelivery'
              examples:
                GetDelivery200Example:
                  summary: Default getDelivery 200 response
                  x-microcks-default: true
                  value:
                    external_delivery_id: D-12345
                    delivery_status: created
                    fee: 42
                    currency: USD
                    tip: 42
                    pickup_address: 901 Market St, San Francisco, CA 94105
                    dropoff_address: 901 Market St, San Francisco, CA 94105
                    pickup_time_estimated: '2026-06-02T14:30:00Z'
                    pickup_time_actual: '2026-06-02T14:30:00Z'
                    dropoff_time_estimated: '2026-06-02T14:30:00Z'
                    dropoff_time_actual: '2026-06-02T14:30:00Z'
                    dasher_id: 42
                    dasher_name: Acme Pickup Store
                    tracking_url: https://example.com/path/abc123
                    created_at: '2026-06-02T14:30:00Z'
                    updated_at: '2026-06-02T14:30:00Z'
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                GetDelivery401Example:
                  summary: Default getDelivery 401 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
        '404':
          description: Delivery not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                GetDelivery404Example:
                  summary: Default getDelivery 404 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    patch:
      operationId: updateDelivery
      summary: DoorDash Update a Delivery
      description: >-
        Updates specified attributes of an existing delivery. Updates may be
        restricted based on the current delivery status.
      tags:
      - Deliveries
      parameters:
      - $ref: '#/components/parameters/ExternalDeliveryId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClassicDeliveryUpdateRequest'
            examples:
              UpdateDeliveryRequestExample:
                summary: Default updateDelivery request
                x-microcks-default: true
                value:
                  tip: 42
                  dropoff_instructions: Leave at the front desk.
                  dropoff_phone_number: '+15555551234'
      responses:
        '200':
          description: Delivery updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClassicDelivery'
              examples:
                UpdateDelivery200Example:
                  summary: Default updateDelivery 200 response
                  x-microcks-default: true
                  value:
                    external_delivery_id: D-12345
                    delivery_status: created
                    fee: 42
                    currency: USD
                    tip: 42
                    pickup_address: 901 Market St, San Francisco, CA 94105
                    dropoff_address: 901 Market St, San Francisco, CA 94105
                    pickup_time_estimated: '2026-06-02T14:30:00Z'
                    pickup_time_actual: '2026-06-02T14:30:00Z'
                    dropoff_time_estimated: '2026-06-02T14:30:00Z'
                    dropoff_time_actual: '2026-06-02T14:30:00Z'
                    dasher_id: 42
                    dasher_name: Acme Pickup Store
                    tracking_url: https://example.com/path/abc123
                    created_at: '2026-06-02T14:30:00Z'
                    updated_at: '2026-06-02T14:30:00Z'
        '400':
          description: Invalid update parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                UpdateDelivery400Example:
                  summary: Default updateDelivery 400 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                UpdateDelivery401Example:
                  summary: Default updateDelivery 401 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
        '404':
          description: Delivery not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                UpdateDelivery404Example:
                  summary: Default updateDelivery 404 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /deliveries/{external_delivery_id}/cancel:
    put:
      operationId: cancelDelivery
      summary: DoorDash Cancel a Delivery
      description: >-
        Cancels an active delivery. Cancellation restrictions apply based on
        the current delivery status.
      tags:
      - Deliveries
      parameters:
      - $ref: '#/components/parameters/ExternalDeliveryId'
      responses:
        '200':
          description: Delivery cancelled successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClassicDelivery'
              examples:
                CancelDelivery200Example:
                  summary: Default cancelDelivery 200 response
                  x-microcks-default: true
                  value:
                    external_delivery_id: D-12345
                    delivery_status: created
                    fee: 42
                    currency: USD
                    tip: 42
                    pickup_address: 901 Market St, San Francisco, CA 94105
                    dropoff_address: 901 Market St, San Francisco, CA 94105
                    pickup_time_estimated: '2026-06-02T14:30:00Z'
                    pickup_time_actual: '2026-06-02T14:30:00Z'
                    dropoff_time_estimated: '2026-06-02T14:30:00Z'
                    dropoff_time_actual: '2026-06-02T14:30:00Z'
                    dasher_id: 42
                    dasher_name: Acme Pickup Store
                    tracking_url: https://example.com/path/abc123
                    created_at: '2026-06-02T14:30:00Z'
                    updated_at: '2026-06-02T14:30:00Z'
        '400':
          description: Delivery cannot be cancelled in current state
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                CancelDelivery400Example:
                  summary: Default cancelDelivery 400 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                CancelDelivery401Example:
                  summary: Default cancelDelivery 401 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
        '404':
          description: Delivery not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                CancelDelivery404Example:
                  summary: Default cancelDelivery 404 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /businesses:
    get:
      operationId: listBusinesses
      summary: DoorDash List Businesses
      description: >-
        Lists all businesses owned by the authenticated developer account.
      tags:
      - Businesses
      responses:
        '200':
          description: List of businesses retrieved successfully
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Business'
              examples:
                ListBusinesses200Example:
                  summary: Default listBusinesses 200 response
                  x-microcks-default: true
                  value:
                  - external_business_id: D-12345
                    name: Acme Pickup Store
                    description: Leave at the front desk.
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                ListBusinesses401Example:
                  summary: Default listBusinesses 401 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    post:
      operationId: createBusiness
      summary: DoorDash Create a Business
      description: >-
        Creates a new Drive business entity representing a legal entity or
        owner on the DoorDash platform.
      tags:
      - Businesses
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BusinessRequest'
            examples:
              CreateBusinessRequestExample:
                summary: Default createBusiness request
                x-microcks-default: true
                value:
                  external_business_id: D-12345
                  name: Acme Pickup Store
                  description: Leave at the front desk.
      responses:
        '200':
          description: Business created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Business'
              examples:
                CreateBusiness200Example:
                  summary: Default createBusiness 200 response
                  x-microcks-default: true
                  value:
                    external_business_id: D-12345
                    name: Acme Pickup Store
                    description: Leave at the front desk.
        '400':
          description: Invalid request parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                CreateBusiness400Example:
                  summary: Default createBusiness 400 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                CreateBusiness401Example:
                  summary: Default createBusiness 401 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /businesses/{external_business_id}:
    get:
      operationId: getBusiness
      summary: DoorDash Get Business Details
      description: >-
        Retrieves the details of a specific business by its external ID.
      tags:
      - Businesses
      parameters:
      - $ref: '#/components/parameters/ExternalBusinessId'
      responses:
        '200':
          description: Business details retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Business'
              examples:
                GetBusiness200Example:
                  summary: Default getBusiness 200 response
                  x-microcks-default: true
                  value:
                    external_business_id: D-12345
                    name: Acme Pickup Store
                    description: Leave at the front desk.
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                GetBusiness401Example:
                  summary: Default getBusiness 401 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
        '404':
          description: Business not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                GetBusiness404Example:
                  summary: Default getBusiness 404 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    patch:
      operationId: updateBusiness
      summary: DoorDash Update a Business
      description: >-
        Updates the attributes of an existing business entity.
      tags:
      - Businesses
      parameters:
      - $ref: '#/components/parameters/ExternalBusinessId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BusinessRequest'
            examples:
              UpdateBusinessRequestExample:
                summary: Default updateBusiness request
                x-microcks-default: true
                value:
                  external_business_id: D-12345
                  name: Acme Pickup Store
                  description: Leave at the front desk.
      responses:
        '200':
          description: Business updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Business'
              examples:
                UpdateBusiness200Example:
                  summary: Default updateBusiness 200 response
                  x-microcks-default: true
                  value:
                    external_business_id: D-12345
                    name: Acme Pickup Store
                    description: Leave at the front desk.
        '400':
          description: Invalid request parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                UpdateBusiness400Example:
                  summary: Default updateBusiness 400 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                UpdateBusiness401Example:
                  summary: Default updateBusiness 401 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
        '404':
          description: Business not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                UpdateBusiness404Example:
                  summary: Default updateBusiness 404 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /businesses/{external_business_id}/stores:
    post:
      operationId: createStore
      summary: DoorDash Create a Store
      description: >-
        Creates a new store location associated with a business.
      tags:
      - Stores
      parameters:
      - $ref: '#/components/parameters/ExternalBusinessId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StoreRequest'
            examples:
              CreateStoreRequestExample:
                summary: Default createStore request
                x-microcks-default: true
                value:
                  external_store_id: D-12345
                  name: Acme Pickup Store
                  phone_number: '+15555551234'
                  address: 901 Market St, San Francisco, CA 94105
      responses:
        '200':
          description: Store created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Store'
              examples:
                CreateStore200Example:
                  summary: Default createStore 200 response
                  x-microcks-default: true
                  value:
                    external_business_id: D-12345
                    external_store_id: D-12345
                    name: Acme Pickup Store
                    phone_number: '+15555551234'
                    address: 901 Market St, San Francisco, CA 94105
        '400':
          description: Invalid request parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                CreateStore400Example:
                  summary: Default createStore 400 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                CreateStore401Example:
                  summary: Default createStore 401 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /businesses/{external_business_id}/stores/{external_store_id}:
    get:
      operationId: getStore
      summary: DoorDash Get Store Details
      description: >-
        Retrieves the details of a specific store within a business.
      tags:
      - Stores
      parameters:
      - $ref: '#/components/parameters/ExternalBusinessId'
      - $ref: '#/components/parameters/ExternalStoreId'
      responses:
        '200':
          description: Store details retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Store'
              examples:
                GetStore200Example:
                  summary: Default getStore 200 response
                  x-microcks-default: true
                  value:
                    external_business_id: D-12345
                    external_store_id: D-12345
                    name: Acme Pickup Store
                    phone_number: '+15555551234'
                    address: 901 Market St, San Francisco, CA 94105
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                GetStore401Example:
                  summary: Default getStore 401 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
        '404':
          description: Store or business not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                GetStore404Example:
                  summary: Default getStore 404 response
                  x-microcks-default: true
                  value:
                    message: example
                    code: ABC123
                    field_errors:
                    - field: example
                      error: example
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    patch:
      operationId: updateStore
      summary: DoorDash Update a Store
      description: >-
        Updates the attributes of an existing store location.
      tags:
      - Stores
      parameters:
      - $ref: '#/components/parameters/ExternalBusinessId'
      - $ref: 

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