What the food menu workflow manages
This workflow reads and updates structured Google Business Profile food menus. Menus are hierarchical: a menu contains sections, sections contain items, and items can include labels and attributes such as price. This is not the same as posting a photo of a menu. It is structured profile data.
Endpoint and payload shape
Use GET /api/v1/misc/google-business/location/food-menus to read current menus and PATCH /api/v1/misc/google-business/location/food-menus to update them. PATCH requires teamId, fields with menus, and a menus array that follows Google’s food menu schema.
Eligibility matters
Food menus are not available for every Google Business Profile location. Before showing a menu editor, read metadata from GET /api/v1/misc/google-business/location and check canHaveFoodMenus. If the feature is not available, the UI should explain that instead of letting users build a menu Google will reject.
Where teams usually get stuck
The nested menu shape is the trap. A menu object that works for one location can be rejected for another because availability and accepted fields depend on category, region, and Google profile configuration. The safest workflow is to GET the current menus, edit the returned objects, then PATCH the adjusted structure back.
How bundle.social fits
bundle.social puts food menu management next to Google Business posts, reviews, hours, media, and account connection logic. That means your restaurant dashboard can manage local profile content without building a separate Google-only admin panel.