APIHub
Back to Explore

My Business Business Information API

The My Business Business Information API lets developers create, retrieve, update, and delete Google Business Profile locations, manage their attributes and category metadata, and associate or clear place‑ID links for those locations. It also includes endpoints for searching categories, chains, and Google locations.

Analytics
none
HTTPS
CORS: Unknown
Description enriched
Visit official documentation

Latency

149ms p95

Uptime

100.0% 30d

Playground

Verified

live

Endpoints

REST · JSON
POST

/v1/{name}:clearLocationAssociation

Clears an association between a location and its place ID. This operation is only valid if the location is unverified.

  • name (path, required) — Required. The resource name of the location to disassociate.
GET

/v1/attributes

Returns the list of attributes that would be available for a location with the given primary category and country.

  • categoryName (query) — The primary category stable ID to find available attributes. Must be of the format categories/{category_id}.
  • languageCode (query) — The BCP 47 code of language to get attribute display names in. If this language is not available, they will be provided in English.
  • pageSize (query, limit) — How many attributes to include per page. Default is 200, minimum is 1.
  • pageToken (query) — If specified, the next page of attribute metadata is retrieved.
  • parent (query) — Resource name of the location to look up available attributes. If this field is set, category_name, region_code, language_code and show_all are not required and must not be set.
  • regionCode (query) — The ISO 3166-1 alpha-2 country code to find available attributes.
  • showAll (query) — Metadata for all available attributes are returned when this field is set to true, disregarding parent and category_name fields. language_code and region_code are required when show_all is set to true.
GET

/v1/categories

Returns a list of business categories. Search will match the category name but not the category ID. Search only matches the front of a category name (that is, 'food' may return 'Food Court' but not 'Fast Food Restaurant').

  • filter (query) — Optional. Filter string from user. The only field that supported is `displayName`. Eg: `filter=displayName=foo`.
  • languageCode (query) — Required. The BCP 47 code of language.
  • pageSize (query, limit) — Optional. How many categories to fetch per page. Default is 100, minimum is 1, and maximum page size is 100.
  • pageToken (query) — Optional. If specified, the next page of categories will be fetched.
  • regionCode (query) — Required. The ISO 3166-1 alpha-2 country code.
  • view (query) — Required. Specifies which parts to the Category resource should be returned in the response.
GET

/v1/categories:batchGet

Returns a list of business categories for the provided language and GConcept ids.

  • languageCode (query) — Required. The BCP 47 code of language that the category names should be returned in.
  • names (query) — Required. At least one name must be set. The GConcept ids the localized category names should be returned for. To return details for more than one category, repeat this parameter in the request.
  • regionCode (query) — Optional. The ISO 3166-1 alpha-2 country code used to infer non-standard language.
  • view (query) — Required. Specifies which parts to the Category resource should be returned in the response.
GET

/v1/chains:search

Searches the chain based on chain name.

  • chainName (query) — Required. Search for a chain by its name. Exact/partial/fuzzy/related queries are supported. Examples: "walmart", "wal-mart", "walmmmart", "沃尔玛"
  • pageSize (query, limit) — The maximum number of matched chains to return from this query. The default is 10. The maximum possible value is 500.
POST

/v1/googleLocations:search

Search all of the possible locations that are a match to the specified request.

DELETE

/v1/{name}

Deletes a location. If this location cannot be deleted using the API and it is marked so in the `google.mybusiness.businessinformation.v1.LocationState`, use the [Google Business Profile](https://business.google.com/manage/) website.

  • name (path, required) — Required. The name of the location to delete.
GET

/v1/{name}

Looks up all the attributes set for a given location.

  • name (path, required) — Required. Google identifier for this location in the form of `locations/{location_id}/attributes`.
PATCH

/v1/{name}

Update attributes for a given location.

  • name (path, required) — Required. Google identifier for this location in the form of `locations/{location_id}/attributes`.
  • attributeMask (query) — Required. Attribute name of attributes that you'd like to update. Represented by `attributes/{attribute}`. Updates: All attributes provided in the attributes field that you would like to update must be set in the `attribute_mask`. Attributes set in the above list but not in the `attribute_mask` will be ignored. Deletes: If you'd like to delete certain attributes, they must be specified in the `attribute_mask` with no matching entry in the attributes list. If you'd like to delete all attributes set on a location, you should look up all the applicable attributes for the location and then add them to the `attribute_mask` with an empty attributes field.
POST

/v1/{name}:associate

Associates a location to a place ID. Any previous association is overwritten. This operation is only valid if the location is unverified. The association must be valid, that is, it appears in the list of `SearchGoogleLocations`.

  • name (path, required) — Required. The resource name of the location to associate.
GET

/v1/{name}:getGoogleUpdated

Gets the Google-updated version of the specified location.

  • name (path, required) — Required. Google identifier for this location in the form of `locations/{location_id}/attributes`.
  • readMask (query) — Required. Read mask to specify what fields will be returned in the response.
GET

/v1/{parent}/locations

Lists the locations for the specified account.

  • parent (path, required) — Required. The name of the account to fetch locations from. If the parent Account is of AccountType PERSONAL, only Locations that are directly owned by the Account are returned, otherwise it will return all accessible locations from the Account, either directly or indirectly.
  • filter (query) — Optional. A filter constraining the locations to return. The response includes only entries that match the filter. If `filter` is empty, then constraints are applied and all locations (paginated) are retrieved for the requested account. For more information about valid fields and example usage, see [Work with Location Data Guide](https://developers.google.com/my-business/content/location-data#filter_results_when_you_list_locations).
  • orderBy (query) — Optional. Sorting order for the request. Multiple fields should be comma-separated, following SQL syntax. The default sorting order is ascending. To specify descending order, a suffix " desc" should be added. Valid fields to order_by are title and store_code. For example: "title, store_code desc" or "title" or "store_code desc"
  • pageSize (query, limit) — Optional. How many locations to fetch per page. Default value is 10 if not set. Minimum is 1, and maximum page size is 100.
  • pageToken (query) — Optional. If specified, it fetches the next `page` of locations. The page token is returned by previous calls to `ListLocations` when there were more locations than could fit in the requested page size.
  • readMask (query) — Required. Read mask to specify what fields will be returned in the response.
POST

/v1/{parent}/locations

Creates a new Location that will be owned by the logged in user.

  • parent (path, required) — Required. The name of the account in which to create this location.
  • requestId (query) — Optional. A unique request ID for the server to detect duplicated requests. We recommend using UUIDs. Max length is 50 characters.
  • validateOnly (query) — Optional. If true, the request is validated without actually creating the location.

13 endpoints auto-detected

curl -X POST \
  "https://mybusinessbusinessinformation.googleapis.com/v1/{name}:clearLocationAssociation"

mybusinessbusinessinformation.googleapis.com · HTTPS only