Estimated delivery dates (EDD) schemas

This section contains the schemas for the EDD API.

Request body schema

Name Type Required Description
from_postcode string true Origin postcode for the delivery estimate
to_postcode string true Destination postcode for the delivery estimate
couriers array of strings false List of carrier strings to provide estimates for. If not provided, all available carriers are considered.
service_levels array of strings false An array of service levels to return estimates for. Valid values are standard, express, priority, or on_demand.
preparation_time string false Lead time required for order fulfilment before pickup in format DD:HH:MM. For example, 01:05:30 is 1 day, 5 hours and 30 minutes.
pickup_days_per_courier Array,see table false Array of pickup days for the carrier
store_operating_hours Array,see table false Array of store operating hours

Request schema for pickup_days_per_courier

Name Type Required Description
courier string true Name of the carrier
pickup_days array of strings true Days when pickup is available, in lowercase
pickup_time string true Time when pickup occurs, in format HH:MM

Request schema for store_operating_hours

Name Type Required Description
day enum true The day of the week in lowercase. Possible values are monday, tuesday, wednesday, thursday, friday, saturday, sunday.
beginning_of_workday string true The start time of the workday in HH:MM format
end_of_workday string true The end time of the workday in HH:MM format
is_open boolean true Whether the store is open on the given day. Use true for open, false for closed.

Response schema

The response is an array of estimated delivery dates grouped by service level.

Name Type Required Description
service_level string true The service level for this estimate. Valid values are standard, express, priority, on_demand
estimated_delivery Object, see table true Estimated delivery window for this service level

Response schema for estimated_delivery

Name Type Required Description
earliest string (ISO 8601 date) false The earliest estimated delivery date. null when confidence is none.
latest string (ISO 8601 date) false The latest estimated delivery date. null when confidence is none.
confidence enum true Confidence level for the estimate. See the confidence values table.
display string true Pre-formatted delivery message ready to show customers. Render this directly—no client-side date logic required.

Confidence values

The confidence field indicates the reliability of the delivery window and controls how display reads.

Value Meaning Example display
high earliest and latest are the same date. High accuracy estimate. "Arrives Tue, Apr 20"
medium earliest and latest differ by a moderate spread. "Arrives Tue, Apr 20 - Wed, Apr 21"
low Wide spread between earliest and latest. "Arrives by Mon, Apr 27"
none No data available for this route or service level. earliest and latest are null. "3 to 5 business days"

Use the display string as-is for all confidence levels. It’s pre-formatted server-side and requires no additional date logic.

Sample response

[
  {
    "service_level": "standard",
    "estimated_delivery": {
      "earliest": "2026-04-20",
      "latest": "2026-04-22",
      "confidence": "medium",
      "display": "Arrives Tue, Apr 20 - Thu, Apr 22"
    }
  },
  {
    "service_level": "express",
    "estimated_delivery": {
      "earliest": "2026-04-18",
      "latest": "2026-04-18",
      "confidence": "high",
      "display": "Arrives Sat, Apr 18"
    }
  },
  {
    "service_level": "on_demand",
    "estimated_delivery": {
      "earliest": "2026-04-16",
      "latest": "2026-04-16",
      "confidence": "high",
      "display": "Arrives Today, Apr 16"
    }
  }
]