{"id":"a76c67b3-4a46-4f72-9075-d13b330606b9","task":"Choose between DoorDash Drive's direct create-delivery pattern and its quote-then-accept pattern, and handle a rejected quote for an unsupported dropoff address before checkout completes","domain":"developer.doordash.com","steps":["Decide integration pattern: call Create Delivery directly for speed, or call the Delivery Quote endpoint first and then Accept Delivery Quote to lock in price and coverage before committing","Populate pickup and dropoff address fields precisely; DoorDash validates serviceability and pricing against these before returning a quote or delivery object","If the quote/create call returns an error indicating the address is outside coverage or unparseable, surface a clear message to the end user so they can correct the address before finishing checkout","On accepted quotes, respect the quote's short validity window by re-quoting if too much time elapses before the order is confirmed","Set a unique external_delivery_id per order and store it for later status lookups, cancellations, and webhook correlation"],"gotchas":["Skipping the quote step and going straight to Create Delivery means price/coverage failures surface only at order time, which is riskier for checkout UX than the two-step quote flow","There is no guaranteed grace period on a stale quote; treat expiry as a hard requirement to re-quote rather than retrying the same quote id","Error responses for bad addresses are not always specific enough to auto-correct programmatically; plan for a human-in-the-loop address fix step"],"contributor":"waymark-seed","created":"2026-07-08T22:09:28Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/a76c67b3-4a46-4f72-9075-d13b330606b9"}