locationIdstringobligatoire
The id of the location to update (required) — the id returned by create_location. Accepts the database ID or public loc- ID. IDs must belong to the authenticated agency and permitted client.
namestringfacultatif
The location's business name.
descriptionstringfacultatif
The business description.
taglinestringfacultatif
A short tagline/slogan for the business.
storeCodestringfacultatif
Your internal store code / reference for this location.
logoUrlstringfacultatif
URL of the location's logo image.
languageCodestringfacultatif
The primary language of the listing, as a code (e.g. "en").
streetstringfacultatif
Street address, line 1.
street1stringfacultatif
Street address, line 2.
citystringfacultatif
City.
stateIsostringfacultatif
State or region, as an ISO code (e.g. "CA").
postalCodestringfacultatif
Postal or ZIP code.
latitudenumberfacultatif
Latitude. If you change the address without setting coordinates, they're re-derived automatically.
longitudenumberfacultatif
Longitude. If you change the address without setting coordinates, they're re-derived automatically.
phonestringfacultatif
Primary phone number.
additionalPhonesstring[]facultatif
Any additional phone numbers (replaces the existing list).
websitestringfacultatif
The location's website URL.
businessEmailstringfacultatif
A public contact email for the business.
categoryIdstringfacultatif
General category id — look it up with list_categories.
categoryNamestringfacultatif
General category display name (from list_categories).
publisherCategoriesobjectfacultatif
Google's PRIMARY category, as an { id, name } looked up with list_publisher_categories — both are required. This is what Google actually shows and ranks on; the general category above does not override it. The id is a gcid (e.g. "gcid:cookie_shop"). Only google can be changed here: Facebook, Apple and Bing primary categories are refused — tell the user to change those in the location editor. The value is stored but only reaches Google once Google is connected for this location.
idstringfacultatif
The publisher's own category id (from list_publisher_categories)
namestringfacultatif
The category's display name
additionalCategoriesobject[]facultatif
Up to 9 extra categories, each an { id?, name } (replaces the existing list). A bare name is accepted and its id is resolved from the category catalog where one matches.
namestringfacultatif
Category name
attributesobjectfacultatif
Google Business Profile attributes, as a map of attribute id to value — e.g. { "attributes/is_owned_by_women": true, "attributes/wi_fi": "free" }. REPLACES the whole set, so read the current ones with get_location_by_id and pass back everything you want kept. Values are a boolean for yes/no attributes, a string for single-choice ones, or { setValues: [...], unsetValues: [...] } for multi-select. Google only accepts attributes its catalog allows for this location's category and country — unsupported ids are dropped when publishing rather than failing the update. Don't set social-link, menu-URL or payment attributes here; use socialLinks, menuUrl and the payment fields instead.
servicesobject[]facultatif
The services or products this location offers (replaces the existing list). Each entry is { name, description?, price?, currency?, googleServiceTypeId? }. price is a number in the listed currency (e.g. 12.5 with currency "USD"); omit both for services with no set price.
namestringfacultatif
Service or product name (required).
descriptionstringfacultatif
Short description — this is where long-tail keywords belong.
pricenumberfacultatif
Price as a number, in `currency`.
currencystringfacultatif
ISO 4217 currency code, e.g. "USD".
googleServiceTypeIdstringfacultatif
Google's service-type id, when it maps to one of Google's predefined services. There's currently no tool to look these up — omit it and the service is still saved, just without that Google-specific mapping.
ownerNamestringfacultatif
The owner's name.
menuUrlstringfacultatif
URL of the business's menu.
yearEstablishednumberfacultatif
The year the business was established (e.g. 2012).
tagsstring[]facultatif
Internal tags for your own organization — not shown publicly (replaces the existing list).
labelsstring[]facultatif
Internal labels for this location (replaces the existing list).
regularHoursobject[]facultatif
The weekly regular-hours schedule — replaces the existing schedule entirely. Pass one entry per day of the week (7 entries, one for each of MONDAY–SUNDAY).
day"MONDAY" | "TUESDAY" | "WEDNESDAY" | "THURSDAY" | "FRIDAY" | "SATURDAY" | "SUNDAY"facultatif
Day of week.
closedbooleanfacultatif
true if closed all day.
periodsobject[]facultatif
Open/close intervals for this day. Omit or leave empty when closed. For 24-hour, use a single period { open: "00:00", close: "24:00" }.
openstringfacultatif
Open time, 24h "HH:MM" (e.g. "09:00").
closestringfacultatif
Close time, 24h "HH:MM" — use "24:00" for midnight/end-of-day.
moreHoursobject[]facultatif
Extra hour types beyond regular hours (delivery, takeout, happy hour, etc.), replaces the existing list. Each entry is { hoursTypeId, label?, days }, where days is the same weekly-schedule shape as regularHours. Common hoursTypeId values: DELIVERY, TAKEOUT, PICKUP, DRIVE_THROUGH, BREAKFAST, LUNCH, DINNER, BRUNCH, HAPPY_HOUR, KITCHEN, ONLINE_SERVICE_HOURS, ACCESS, SENIOR_HOURS.
hoursTypeIdstringfacultatif
The more-hours type id, e.g. "DELIVERY".
labelstringfacultatif
Optional display label for this hours type.
daysobject[]facultatif
Weekly schedule for this hours type, same shape as regularHours.
day"MONDAY" | "TUESDAY" | "WEDNESDAY" | "THURSDAY" | "FRIDAY" | "SATURDAY" | "SUNDAY"facultatif
Day of week.
closedbooleanfacultatif
true if closed all day.
periodsobject[]facultatif
Open/close intervals for this day. Omit or leave empty when closed. For 24-hour, use a single period { open: "00:00", close: "24:00" }.
openstringfacultatif
Open time, 24h "HH:MM" (e.g. "09:00").
closestringfacultatif
Close time, 24h "HH:MM" — use "24:00" for midnight/end-of-day.
specialHoursobject[]facultatif
One-off date overrides — holiday closures or a single day's special hours — replaces the existing list. Each entry is { date, closed, open?, close? } where date is any calendar date as "YYYY-MM-DD" (not limited to named holidays — use this for requests like "mark this Sunday, Aug 2 2026, as closed"). When closed is false, pass open/close as 24h "HH:MM".
datestringfacultatif
The date, as "YYYY-MM-DD".
closedbooleanfacultatif
true if closed all day on this date.
openstringfacultatif
Open time, 24h "HH:MM", when not closed.
closestringfacultatif
Close time, 24h "HH:MM", when not closed.
serviceAreaobjectfacultatif
Service-area settings — for a business that serves customers at their location. businessType CUSTOMER_LOCATION_ONLY hides the street address on Google (a pure service-area business; the street is never sent there); CUSTOMER_AND_BUSINESS_LOCATION shows the address plus the areas served. places is up to 20 areas, each { name, placeId? }; Google only accepts places with their Google Place ID, so pass placeId for every place you want on Google. Pass null to clear (a plain storefront).
businessType"CUSTOMER_LOCATION_ONLY" | "CUSTOMER_AND_BUSINESS_LOCATION"facultatif
Service-area type.
placesobject[]facultatif
Areas served (max 20).
namestringfacultatif
Place name, e.g. "Austin, TX, USA".
placeIdstringfacultatif
Google Place ID of the area.
publisherServiceAreasobjectfacultatif
A different service area per publisher, stored as that publisher's own value; a publisher left out uses serviceArea. Each key is a serviceArea object (same shape). On update_location, null for a publisher removes its own value so it goes back to using serviceArea.
googleobjectfacultatif
Service-area settings — for a business that serves customers at their location. businessType CUSTOMER_LOCATION_ONLY hides the street address on Google (a pure service-area business; the street is never sent there); CUSTOMER_AND_BUSINESS_LOCATION shows the address plus the areas served. places is up to 20 areas, each { name, placeId? }; Google only accepts places with their Google Place ID, so pass placeId for every place you want on Google. Pass null to clear (a plain storefront).
businessType"CUSTOMER_LOCATION_ONLY" | "CUSTOMER_AND_BUSINESS_LOCATION"facultatif
Service-area type.
placesobject[]facultatif
Areas served (max 20).
namestringfacultatif
Place name, e.g. "Austin, TX, USA".
placeIdstringfacultatif
Google Place ID of the area.
facebookobjectfacultatif
Service-area settings — for a business that serves customers at their location. businessType CUSTOMER_LOCATION_ONLY hides the street address on Google (a pure service-area business; the street is never sent there); CUSTOMER_AND_BUSINESS_LOCATION shows the address plus the areas served. places is up to 20 areas, each { name, placeId? }; Google only accepts places with their Google Place ID, so pass placeId for every place you want on Google. Pass null to clear (a plain storefront).
businessType"CUSTOMER_LOCATION_ONLY" | "CUSTOMER_AND_BUSINESS_LOCATION"facultatif
Service-area type.
placesobject[]facultatif
Areas served (max 20).
namestringfacultatif
Place name, e.g. "Austin, TX, USA".
placeIdstringfacultatif
Google Place ID of the area.
appleobjectfacultatif
Service-area settings — for a business that serves customers at their location. businessType CUSTOMER_LOCATION_ONLY hides the street address on Google (a pure service-area business; the street is never sent there); CUSTOMER_AND_BUSINESS_LOCATION shows the address plus the areas served. places is up to 20 areas, each { name, placeId? }; Google only accepts places with their Google Place ID, so pass placeId for every place you want on Google. Pass null to clear (a plain storefront).
businessType"CUSTOMER_LOCATION_ONLY" | "CUSTOMER_AND_BUSINESS_LOCATION"facultatif
Service-area type.
placesobject[]facultatif
Areas served (max 20).
namestringfacultatif
Place name, e.g. "Austin, TX, USA".
placeIdstringfacultatif
Google Place ID of the area.
bingobjectfacultatif
Service-area settings — for a business that serves customers at their location. businessType CUSTOMER_LOCATION_ONLY hides the street address on Google (a pure service-area business; the street is never sent there); CUSTOMER_AND_BUSINESS_LOCATION shows the address plus the areas served. places is up to 20 areas, each { name, placeId? }; Google only accepts places with their Google Place ID, so pass placeId for every place you want on Google. Pass null to clear (a plain storefront).
businessType"CUSTOMER_LOCATION_ONLY" | "CUSTOMER_AND_BUSINESS_LOCATION"facultatif
Service-area type.
placesobject[]facultatif
Areas served (max 20).
namestringfacultatif
Place name, e.g. "Austin, TX, USA".
placeIdstringfacultatif
Google Place ID of the area.
socialLinksobjectfacultatif
Social profile URLs. Only the keys you pass change; pass null for a key to clear it. Published to Google as url_* attributes and to Bing/Apple's social fields — don't send those as attributes.
facebookstringfacultatif
Facebook page URL.
instagramstringfacultatif
Instagram URL.
twitterstringfacultatif
X/Twitter URL.
linkedinstringfacultatif
LinkedIn URL.
youtubestringfacultatif
YouTube URL.
tiktokstringfacultatif
TikTok URL.
pintereststringfacultatif
Pinterest URL.
paymentMethodsstring[]facultatif
Payment methods accepted, e.g. "Visa", "American Express", "Cash only" (replaces the existing list; [] clears it). Published to Google as pay_* attributes, and to Apple and Bing.
clearPublisherOverridesobjectfacultatif
Reset per-publisher values so that publisher uses the shared (Master) value again. Keyed by publisher: a list of field names (e.g. { "google": ["name", "description"] }) or ["all"] to drop every override it has.
googlestring[]facultatif
Field names to reset, or ["all"].
facebookstring[]facultatif
Field names to reset, or ["all"].
applestring[]facultatif
Field names to reset, or ["all"].
bingstring[]facultatif
Field names to reset, or ["all"].
applyToPublishers("google" | "facebook" | "apple" | "bing")[]facultatif
Advanced: change these values for specific publishers only instead of the shared default. Allowed values: "google", "facebook", "apple", "bing". Omit to update the shared details that every publisher inherits.