Update a Google Business Profile listing
update_business_locationUpdate Google Business Profile fields — hours, phone, website, address — on Search and Maps. Dry-run validates with Google; confirm to publish. Name/address changes require echoing current name.
Instructions
Change the brand’s Google Business Profile listing — hours, phone, website, description, categories, service area, labels, store code, address or the business name. THIS EDITS THE PANEL ON GOOGLE SEARCH AND MAPS, immediately and publicly: there is no draft, no preview and no undo. Pass ONLY what changes, in fields, keyed by Google’s own field names: websiteUri, phoneNumbers, regularHours, specialHours, moreHours, profile, categories, storefrontAddress, title, labels, storeCode, openInfo, serviceArea, serviceItems, latlng, adWordsLocationExtensions, relationshipData. CALL IT WITHOUT confirm FIRST — nothing is written, Google validates the payload for you, and you get back the CURRENT value of every field you are about to change, so you can show the user the exact before-and-after; then call again with confirm:true once they approve. Changing the business NAME (title) or ADDRESS (storefrontAddress) additionally needs confirmName set to the listing’s CURRENT name, because Google can suspend a listing over either. Output-only fields (metadata) and immutable ones (languageCode) are refused by name rather than dropped. Use dryRun:true to validate a payload with Google and write nothing. Needs Google Business Profile connected.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | validate with Google and write nothing (needs no confirm) | |
| fields | Yes | the changes, keyed by Google’s Location field names, e.g. {"websiteUri":"https://example.com"} or {"regularHours":{"periods":[…]}} | |
| confirm | No | true ONLY after the user has seen the exact before-and-after and approved it | |
| locationId | No | which listing, from list_business_locations — only needed when more than one is shared with this brand | |
| confirmName | No | the listing’s CURRENT name, echoed back — required when changing title or storefrontAddress |