> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.goautolane.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.goautolane.com/_mcp/server.

# Pickup and dropoff instructions

Deliveries now carry two notes: `pickup_instructions` for the store side and
`dropoff_instructions` for the customer side.

## What changed

* **`POST /dd/v1/deliveries/quote`** accepts `dropoff_instructions` beside
  `pickup_instructions`. Both are optional, nullable, and up to 2000
  characters.
* **`PATCH /dd/v1/deliveries/{external_delivery_id}`** edits either note. Send
  one or both fields without `status`; `null` or an empty string clears a
  field, and an absent field is left unchanged. Edits are accepted until the
  delivery reaches `COMPLETED`, `FAILED`, `CANCELLED`, or `EXPIRED`. A cancel
  still sends `status` on its own.
* **`POST /dd/v1/deliveries`**, **`GET /dd/v1/deliveries`**, and
  **`GET /dd/v1/deliveries/{external_delivery_id}`** return both fields on
  every delivery. The `PATCH` response returns them after an instructions
  edit.
* `pickup_instructions` is shown to the driver from assignment until the order
  is loaded. `dropoff_instructions` is shown on the way to and at the
  customer.

## Migration

No action is required. Integrations created before `dropoff_instructions`
existed may be in legacy mode, where `pickup_instructions` is treated as the
dropoff note and both fields read back the same value. In that mode a body
that sends both fields uses `dropoff_instructions` unless it is null or empty,
and clearing either field clears the shared note. Ask your Autolane contact to
switch your account to the current behavior.