本教學課程說明如何建立及編輯位置資料。My Business Business Information API 可讓您執行下列操作:
地區可以在 Google Ads 中使用,但必須 已驗證, 顯示在 Google 搜尋和地圖上。位置資料會由 accounts.locations 集合。
事前準備
使用 My Business Business Information API 之前,請務必先註冊 並取得 OAuth 2.0 憑證。進一步瞭解如何開始使用 瞭解如何整合 My Business Business Information API,請參閱基本設定。
建立地點
您可以使用 My Business Business Information API,為 accounts.locations.create。
如要建立位置,請使用下列工具:
POST https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?requestId=requestId&validateOnly=True|False { "storeCode": "GOOG-SYD", "languageCode": "en-AU", "title": "Google Sydney", "phoneNumbers": { "primaryPhone": "02 9374 4000" } "storefrontAddress": { "addressLines": [ "Level 5", "48 Pirrama Road" ], "locality": "Pyrmont", "postalCode": "2009", "administrativeArea": "NSW", "regionCode": "AU" }, "websiteUri": "https://www.google.com.au/", "regularHours": { "periods": [ { "openDay": "MONDAY", "closeDay": "MONDAY", "openTime": "09:00", "closeTime": "17:00" }, { "openDay": "TUESDAY", "closeDay": "TUESDAY", "openTime": "09:00", "closeTime": "17:00" }, { "openDay": "WEDNESDAY", "closeDay": "WEDNESDAY", "openTime": "09:00", "closeTime": "17:00" }, { "openDay": "THURSDAY", "closeDay": "THURSDAY", "openTime": "09:00", "closeTime": "17:00" }, { "openDay": "FRIDAY", "closeDay": "FRIDAY", "openTime": "09:00", "closeTime": "17:00" } ] }, "categories": { "primaryCategory": { "name": "gcid:software_company" } } }
刪除位置
您可以使用 My Business Business Information API 刪除包含 locations.delete.
如要刪除位置,請使用下列方式:
DELETE https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}
依名稱取得地點
如果您的帳戶有多個相關聯的商家,您可能會希望 單一位置您可以依商家進行篩選取得 含有 locations.get.
如要依據名稱取得地點,請使用下列方式:您必須指定 readMask 才能擷取特定欄位。:
GET https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}?readMask={commaSeparatedFieldsToRetrieve}
返回 Google 地圖版本
如要傳回 Google 地圖的地點版本,請在
將 googleUpdated
傳送至要求網址,如以下範例所示:
GET https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}:googleUpdated?readMask={commaSeparatedFieldsToRetrieve}
如果沒有搜尋結果,404 NOT FOUND
HTTP 狀態碼為
。如要進一步瞭解如何管理 Google 資訊更新,請參閱本文。
列出位置
當您管理一或多個地點時,建議您列出 與您帳戶相關的所有地點使用 accounts.locations.list API,列出與使用者相關的所有地點。
如要列出已驗證使用者直接擁有或管理的所有營業地點,請使用 包括:
GET https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}
在要求網址中的帳戶使用 '-'
萬用字元,以加入
間接擁有的商家資訊 (透過群組擁有或管理):
GET https://mybusinessbusinessinformation.googleapis.com/v1/accounts/-/locations?readMask={commaSeparatedFieldsToRetrieve}
列出地點時篩選結果
可使用篩選器限制呼叫時傳回的結果 accounts.locations.list. 如要篩選要求,請將篩選器運算式附加至基本網址,如下所示: 範例:
GET https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter={FIELD_NAME}=%22{YOUR_QUERY}%22
基本查詢語法
限制的語法如下:
<field><operator><value>
,
其中,運算子為 EQUALS (=) 或 HAS (:)。EQUALS (=) 和 HAS (:)
除了 locationName
以外,所有欄位的運算子都是相等的 (請參閱
)。
引號編碼為「%22」以及空格當做加號 (+)。
除非另有註明,否則所有比較結果都不區分大小寫 比較。例如「4 次車道」則符合「4,Privet Drive」。
在篩選器查詢中合併多個欄位
這個 API 允許 AND 連結所有欄位限制。不過
就 OR 關鍵字而言,所有限制都必須以同樣的方式
] 欄位。例如:locationName=A
或 labels=B
不是
。
範例
以下範例使用的篩選器運算式會傳回含有 「Pepé Le Pew」這個名稱。顯示「french_restaurant」的類別或 「european_restaurant」和「新開幕」標籤
locationName=%22Pepé+Le+Pew%22+AND+ (categories=%22french_restaurant%22+OR+ categories=%22european_restaurant%22)+AND+ labels=%22newly+open%22
依距離或帳戶搜尋
以下範例說明如何搜尋特定地點內的地點 與地理點之間的距離:
GET https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=distance(latlng, geopoint({latitude}, {longitude}))<{distance}
如要篩選美國科羅拉多州博爾德境內 1000 英里內的地點:
GET https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=distance(latlng, geopoint(40.01, -105.27))<1000.0
所有支援的篩選器欄位清單
下方完整列出了所有可用於 篩選:
欄位 | 說明和範例 |
---|---|
字串比對欄位 | |
title |
商家真實世界名稱
|
categories |
主要類別和其他類別的組合。 請注意,「gcid:」設定如有多個 類別時,這個篩選器會找出至少一個類別與此條件相符 。
|
phone_numbers.primary_phone |
E.164 格式的主要電話號碼 (例如「+441234567890」)。
|
storefront_address.region_code |
地址所在國家/地區的 CLDR 區域代碼
|
storefront_address.administrative_area |
最高行政區層級,用於國家/地區的郵寄地址
|
storefront_address.locality |
地址中的城市/鄉鎮部分
|
storefront_address.postal_code |
地址的郵遞區號
|
metadata.place_id |
如果這個地點已經通過驗證並連結/顯示在 Google 地圖上,則這個欄位等於地點的地點 ID
|
openInfo.status |
表示地點目前是否營業中
(
|
labels |
一系列任意形式的字串,讓你標記你的商家。於 與其他所有欄位相比,這個值必須完全符合 也包括大小寫,而不只是符記例如:如果標籤是「XX YY」 然後都不輸入「XX」或「xx yy」將會一致。
|
storeCode |
這個位置的外部 ID,在特定帳戶中不得重複
|
函式 | |
distance |
可讓您根據地理位置與地理位置點之間的距離進行篩選。
|
依查詢欄位排序
您可以按商家名稱或商家代碼來排序結果 (遞增或
遞減排序。有多個排序條件時,請以半形逗號分隔的
orderBy
字串,如以下範例所示:
GET https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&orderBy=locationName,storeCode
修補位置
使用 My Business Information API,更新地點資訊的一或多個欄位: locations.patch。
如要變更一個地點的一或多個欄位,請使用下列方式:
在地區欄位新增欄位和更新的值,並使用
以半形逗號分隔的已更新欄位清單,做為 fieldMask
的值。
PATCH https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}?languageCode=language&validateOnly=True|False&updateMask=title { "title": "Google Shoes" }