1.4 KiB
1.4 KiB
19 Menu Troubleshooting Audit
Source checked: Uber Eats "Troubleshooting Errors from the Menu API" section shared by you.
Implemented Now
- Added proactive upload-menu payload validation before calling Uber:
No Menus Errorsguard:- requires
menu.menusto have at least one entry
- requires
No Hours Errorsguard:- requires at least one valid
service_availabilityinterval
- requires at least one valid
Short Hours Errorsguard:- validates effective contiguous service windows are at least 60 minutes
- supports overnight-contiguous windows split across adjacent days
Invalid Visibility Errorsguard:- detects overlapping
visibility_info.hours[].hours_of_week[].time_periodsfor the same day
- detects overlapping
- Added stronger request path validation:
- menu routes now validate
storeIdas UUID - helps prevent
invalid uuid/orgUUID must be a valid UUIDupstream errors
- menu routes now validate
- Added update-item price sanity check:
- if both provided,
core_pricemust be>= price
- if both provided,
Mapped to Wrapper
PUT /api/v1/uber/menu/replace- now runs menu troubleshooting validations before upstream call
POST /api/v1/uber/menu/items- validates
storeIdUUID and keyprice_infoconstraints
- validates
Pending
- Live item existence precheck against current menu before sparse update (
nil itemprevention). - Configurable per-market max price thresholds from Uber approval config.
- User-friendly remediation hints per failing field in structured error payloads.