Google işletmeye ait konumlar grubu, konumlarınıza ait paylaşılan bir klasöre benzer. İşletmeye ait konumlar grubu, konumlarınızın yönetimini birden çok kullanıcıyla paylaşmanız için güvenli bir yol sağlar. Daha fazla bilgi için İşletmeye ait konumlar grupları hakkında başlıklı makaleyi inceleyin.
Yerel envanterinizi yüklemeden önce Merchant Center hesabınızın sorumlu olacağı işletmeye ait konumlar grubunu belirtin. Merchant API'yi kullanarak İşletme Profili'nden uygun işletmeye ait konumlar gruplarının listesini alabilirsiniz ancak erişebilmek için öncelikle hesabınızı bir İşletme Profili'ne bağlamanız gerekir.
İşletme Profili'ne erişim isteğinde bulunma
Bir işletme profiline erişmek için gbpAccounts.LinkGbpAccount
yöntemini kullanın:
POST https://merchantapi.googleapis.com/accounts/v1/accounts/<var>ACCOUNT_ID</var>/gbpAccounts:linkGbpAccount
{
"gbpEmail": "admin@example.com",
}
Aşağıdakini değiştirin:
ACCOUNT_ID
: Merchant Center hesabınızın benzersiz tanımlayıcısıGBP_EMAIL
: İşletme Profili'nin yöneticisinin e-posta adresi
Bu yöntem çağrıldıktan sonra hizmet, belirtilen yöneticiye erişim isteğini kabul etmesini veya reddetmesini isteyen bir e-posta gönderir. Yönetici 7 gün içinde yanıt vermezse isteğin süresi otomatik olarak dolar.
Mevcut işletmeye ait konum gruplarını listeleme
Yönetici isteği onayladıktan sonra gbpAccounts.List
yöntemini kullanarak mevcut işletme gruplarını kontrol edebilirsiniz.
Aşağıda örnek bir istek ve başarılı yanıt verilmiştir:
GET https://merchantapi.googleapis.com/accounts/v1/accounts/<var>ACCOUNT_ID</var>/gbpAccounts
Response:
200 OK
{
"gbpAccounts": [
{
"name": "accounts/<var>ACCOUNT</var>/gbpAccounts/12345",
"gbpAccountId": 12345,
"type": USER,
"gbpAccountName": "admin@example.com",
"listingCount": 15
}, {
"name": "accounts/<var>ACCOUNT</var>/gbpAccounts/67890",
"gbpAccountId": 67890,
"type": BUSINESS_ACCOUNT,
"gbpAccountName": "Google My Business Account",
"listingCount": 23
}
],
"nextPageToken": 50
}
Uygun tüm işletme gruplarını almak için bu kod örneğini kullanabilirsiniz:
package shopping.merchant.samples.accounts.v1;
// [START merchantapi_list_gbp_accounts]
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.accounts.v1.AccountName;
import com.google.shopping.merchant.accounts.v1.GbpAccount;
import com.google.shopping.merchant.accounts.v1.GbpAccountsServiceClient;
import com.google.shopping.merchant.accounts.v1.GbpAccountsServiceClient.ListGbpAccountsPagedResponse;
import com.google.shopping.merchant.accounts.v1.GbpAccountsServiceSettings;
import com.google.shopping.merchant.accounts.v1.ListGbpAccountsRequest;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;
/**
* This class demonstrates how to get the list of GBP accounts for a given Merchant Center account
*/
public class ListGbpAccountsSample {
public static void listGbpAccounts(Config config) throws Exception {
// Obtains OAuth token based on the user's configuration.
GoogleCredentials credential = new Authenticator().authenticate();
// Creates service settings using the retrieved credentials.
GbpAccountsServiceSettings gbpAccountsServiceSettings =
GbpAccountsServiceSettings.newBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(credential))
.build();
String accountId = config.getAccountId().toString();
// Creates parent to identify the omnichannelSetting from which to list all Lfp Providers.
String parent = AccountName.newBuilder().setAccount(accountId).build().toString();
// Calls the API and catches and prints any network failures/errors.
try (GbpAccountsServiceClient gbpAccountsServiceClient =
GbpAccountsServiceClient.create(gbpAccountsServiceSettings)) {
ListGbpAccountsRequest request =
ListGbpAccountsRequest.newBuilder().setParent(parent).build();
System.out.println("Sending list GBP accounts request:");
ListGbpAccountsPagedResponse response = gbpAccountsServiceClient.listGbpAccounts(request);
int count = 0;
// Iterates over all the entries in the response.
for (GbpAccount gbpAccount : response.iterateAll()) {
System.out.println(gbpAccount);
count++;
}
System.out.println(String.format("The following count of elements were returned: %d", count));
} catch (Exception e) {
System.out.println("An error has occurred: ");
System.out.println(e);
}
}
public static void main(String[] args) throws Exception {
Config config = Config.load();
listGbpAccounts(config);
}
}
// [END merchantapi_list_gbp_accounts]
Merchant Center hesabının işletmeye ait konumlar grubunu belirtme
kullanılabilir işletmeye ait konumlar grubu listesinde yer alan bir işletmeye ait konumlar grubunu Merchant Center hesabınızla ilişkilendirebilirsiniz. Örneğin, 12345
GBP hesap kimliğine (önceki adımdan döndürülen) sahip işletme grubunu seçmek istiyorsanız AccountServices.proposeAccountService
değerini kullanabilirsiniz:
POST
https://merchantapi.googleapis.com/accounts/v1/accounts/<var>ACCOUNT_ID</var>/services:propose
{
provider: "providers/GOOGLE_BUSINESS_PROFILE",
account_service: {
external_account_id: "12345",
local_listing_management {}
}
}
provider
alanının providers/GOOGLE_BUSINESS_PROFILE
olması gerektiğini unutmayın. İstekte boş bir LocalListingManagement
alanı ayarlamanız gerekir.
Ürün ve envanter verilerini gönderme
Merchant Center hesabınızı bir işletme grubuyla ilişkilendirdiğinize göre ürün ve yerel envanter verilerinizi yükleyebilirsiniz. Daha fazla bilgi edinmek için şu sayfaya bakın: