本頁面說明如何使用 Merchant API 建立 Merchant Center 帳戶,並上傳範例產品。
事前準備
在 Google Cloud 專案中啟用 Merchant API。
如果您在 AppScript 中使用 API 整合功能,透過 Shopping Content Service 建立預設的 Google Cloud 專案,系統會自動啟用 Merchant API 服務。不過,您仍須先完成一次性開發人員註冊,才能使用 Merchant API。詳情請參閱「在 Apps Script 中使用 Merchant API 服務」。
建立帳戶
如要使用 Merchant API,你必須擁有 Merchant Center 帳戶。如要建立帳戶,請參閱「開始使用 Merchant Center」。
註冊成為開發人員
如要使用 Merchant API,您必須在 Google Cloud 專案和主要 Merchant Center 帳戶之間建立連結。使用 Merchant API 時,您必須為每個 Google Cloud 專案完成這項一次性註冊。
註冊為開發人員可達成以下兩項目標:
- 這會將 Google Cloud 專案連結至主要 Merchant Center 帳戶,建立正式連結。
- 系統會將
API_DEVELOPER
角色指派給 Merchant Center 帳戶中的使用者,藉此建立技術聯絡人。這樣一來,Google 就能傳送 API 的重要更新資訊給您,例如服務公告和新功能資訊。
註冊 Google Cloud 專案
如要註冊,請呼叫 developerRegistration.registerGcp
方法。這項呼叫會將您用來發出呼叫的 Google Cloud 專案,連結至您在要求中指定的 Merchant Center 帳戶。
在要求主體中,您必須提供開發人員電子郵件地址,做為技術聯絡人。這個地址必須與 Google 帳戶 (Google Workspace 帳戶或 Gmail 帳戶) 建立關聯,例如 sampleuser@gmail.com
。
- 如果電子郵件地址已屬於 Merchant Center 帳戶中的使用者,系統會授予該使用者
API_DEVELOPER
角色。 - 如果該電子郵件地址不屬於現有使用者,系統會將邀請傳送至該地址。收件者必須接受邀請,才能以
API_DEVELOPER
角色新增為使用者。
範例如下:
POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/developerRegistration:registerGcp
{
"developerEmail": "{DEVELOPER_EMAIL}"
}
如果呼叫成功,會傳回 DeveloperRegistration
資源,確認專案與帳戶已連結。
{
"name": "accounts/{ACCOUNT_ID}/developerRegistration",
"gcpIds": [
"123456789012345"
]
}
管理開發人員聯絡人和權限
註冊後,建議您新增多位開發人員,並授予他們額外的存取權。
授予其他權限
如要接收重要通知,必須具備API_DEVELOPER
角色,但這類角色在 Merchant Center 中的權限最少。如要允許這位使用者發出其他 API 呼叫或在 Merchant Center 使用者介面中管理設定,您必須授予他們其他角色,例如STANDARD
或ADMIN
。詳情請參閱存取類型。
您可以使用 accounts.users.patch
方法更新使用者的存取權。
以下範例說明如何更新使用者,同時授予 ADMIN
和 API_DEVELOPER
角色。這樣一來,他們就能全權管理帳戶,並接收 API 相關通訊內容。
PATCH https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/users/{DEVELOPER_EMAIL}?update_mask=access_rights
{
"access_rights": [
"ADMIN",
"API_DEVELOPER"
]
}
新增備用開發人員
為避免主要開發人員聯絡人離開機構後,API 存取權受到影響,建議您至少新增一位備用開發人員。
您可以使用 accounts.users.create
方法新增使用者,或使用 accounts.users.patch
方法更新現有使用者。建議您同時授予該使用者 ADMIN
和 API_DEVELOPER
角色。
建立主要產品資料來源
如要插入產品,必須有主要產品資料來源。下列要求顯示如何建立資料來源,以便將產品插入帳戶:
POST https://merchantapi.googleapis.com/datasources/v1/accounts/{ACCOUNT_ID}/dataSources HTTP/1.1
{
"primaryProductDataSource": {
"contentLanguage": "en",
"countries": [
"US"
],
"feedLabel": "US"
},
"name": "primary-data-source",
"displayName": "Primary Products Data Source"
}
將 {ACCOUNT_ID} 替換為您建立的 Merchant Center 帳戶 ID。
成功執行這項要求後,您應該會看到以下回應:
{
"name": "accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}",
"dataSourceId": "{DATASOURCE_ID}",
"displayName": "Primary Products Data Source",
"primaryProductDataSource": {
"feedLabel": "US",
"contentLanguage": "en",
"countries": [
"US"
],
"defaultRule": {
"takeFromDataSources": [
{
"self": true
}
]
}
},
"input": "API"
}
複製 name
欄位的值。插入產品時需要用到這項資訊。
你可以在 Merchant Center 使用者介面中查看這個資料來源。詳情請參閱「如何找到『資料來源』分頁」。
插入一項產品
如要在帳戶中插入範例產品,請執行下列要求:
POST https://merchantapi.googleapis.com/products/v1/accounts/{ACCOUNT_ID}/productInputs:insert?dataSource={DATASOURCE_NAME} HTTP/1.1
{
"contentLanguage": "en",
"feedLabel": "US",
"name": "Red T-shirt",
"attributes": {
"gender": "Male",
"brand": "New brand"
},
"offerId": "tshirt-123"
}
將 {DATASOURCE_NAME} 替換為先前複製的值。
成功執行這項要求後,您應該會看到以下回應:
{
"name": "accounts/{ACCOUNT_ID}/productInputs/en~US~tshirt-123",
"product": "accounts/{ACCOUNT_ID}/products/en~US~tshirt-123",
"offerId": "tshirt-123",
"contentLanguage": "en",
"feedLabel": "US",
"attributes": {
"brand": "New brand",
"gender": "Male"
}
}
新建立的產品 ID 為 en~US~tshirt-123
。您可以使用 accounts.products.get
方法擷取這項產品的詳細資料。你也可以使用 Merchant Center 使用者介面查看這項產品。請參閱「查看產品資料」。