Page Summary
-
This webpage provides code samples in Java and Python for unclaiming a homepage associated with a Merchant Center account using the Merchant API.
-
The Java code demonstrates how to create a
HomepageServiceClient, authenticate with OAuth, construct anUnclaimHomepageRequest, and execute the unclaim operation, retrieving the response. -
The Python example outlines the process of obtaining OAuth credentials, establishing a
HomepageServiceClient, creating anUnclaimHomepageRequest, and making the request to unclaim the homepage. -
Both code samples show how to use the respective client libraries,
HomepageServiceClientin Java and Python, to successfully unclaim the homepage, and handling the potential errors.
Merchant API code sample to unclaim an homepage.
Java
// Copyright 2024 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package
shopping.merchant.samples.accounts.homepages.v1
;
import
com.google.api.gax.core.FixedCredentialsProvider
;
import
com.google.auth.oauth2.GoogleCredentials
;
import
com.google.shopping.merchant.accounts.v1.Homepage
;
import
com.google.shopping.merchant.accounts.v1.HomepageName
;
import
com.google.shopping.merchant.accounts.v1.HomepageServiceClient
;
import
com.google.shopping.merchant.accounts.v1.HomepageServiceSettings
;
import
com.google.shopping.merchant.accounts.v1.UnclaimHomepageRequest
;
import
shopping.merchant.samples.utils.Authenticator
;
import
shopping.merchant.samples.utils.Config
;
/** This class demonstrates how to unclaim the homepage for a given Merchant Center account. */
public
class
UnclaimHomepageSample
{
// Executing this method requires admin access.
public
static
void
unclaimHomepage
(
Config
config
)
throws
Exception
{
// Obtains OAuth token based on the user's configuration.
GoogleCredentials
credential
=
new
Authenticator
().
authenticate
();
// Creates service settings using the credentials retrieved above.
HomepageServiceSettings
homepageServiceSettings
=
HomepageServiceSettings
.
newBuilder
()
.
setCredentialsProvider
(
FixedCredentialsProvider
.
create
(
credential
))
.
build
();
// Creates Homepage name to identify Homepage.
// The name has the format: accounts/{account}/homepage
String
name
=
HomepageName
.
newBuilder
().
setAccount
(
config
.
getAccountId
().
toString
()).
build
().
toString
();
// Calls the API and catches and prints any network failures/errors.
try
(
HomepageServiceClient
homepageServiceClient
=
HomepageServiceClient
.
create
(
homepageServiceSettings
))
{
UnclaimHomepageRequest
request
=
UnclaimHomepageRequest
.
newBuilder
().
setName
(
name
).
build
();
System
.
out
.
println
(
"Sending Unclaim Homepage request:"
);
Homepage
response
=
homepageServiceClient
.
unclaimHomepage
(
request
);
System
.
out
.
println
(
"Retrieved Homepage below"
);
System
.
out
.
println
(
response
);
}
catch
(
Exception
e
)
{
System
.
out
.
println
(
e
);
}
}
public
static
void
main
(
String
[]
args
)
throws
Exception
{
Config
config
=
Config
.
load
();
unclaimHomepage
(
config
);
}
}
PHP
< ?php
/**
* Copyright 2025 Google LLC
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
require_once __DIR__ . '/../../../../vendor/autoload.php';
require_once __DIR__ . '/../../../Authentication/Authentication.php';
require_once __DIR__ . '/../../../Authentication/Config.php';
use Google\ApiCore\ApiException;
use Google\Shopping\Merchant\Accounts\V1\Client\HomepageServiceClient;
use Google\Shopping\Merchant\Accounts\V1\UnclaimHomepageRequest;
/**
* This class demonstrates how to unclaim the homepage for a given Merchant Center account.
*/
class UnclaimHomepage
{
/**
* Unclaims the homepage for a given Merchant Center account.
*
* @param array $config The configuration data for authentication and account ID.
* @return void
* @throws ApiException if the API call fails.
*/
public static function unclaimHomepageSample(array $config): void
{
// Gets the OAuth credentials to make the request.
$credentials = Authentication::useServiceAccountOrTokenFile();
// Creates options config containing credentials for the client to use.
$options = ['credentials' => $credentials];
// Creates a client.
$homepageServiceClient = new HomepageServiceClient($options);
// Creates Homepage name to identify Homepage.
// The name has the format: accounts/{account}/homepage
$name = "accounts/" . $config['accountId'] . "/homepage";
// Calls the API and catches and prints any network failures/errors.
try {
$request = new UnclaimHomepageRequest(['name' => $name]);
print "Sending Unclaim Homepage request:\n";
$response = $homepageServiceClient->unclaimHomepage($request);
print "Retrieved Homepage below\n";
print_r($response);
} catch (ApiException $e) {
print $e->getMessage();
}
}
/**
* Helper to execute the sample.
*
* @return void
*/
public function callSample(): void
{
$config = Config::generateConfig();
// Makes the call to unclaim the homepage.
self::unclaimHomepageSample($config);
}
}
// Run the script
$sample = new UnclaimHomepage();
$sample->callSample();
Python
# -*- coding: utf-8 -*-
# Copyright 2025 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
"""A module to unclaim a Homepage."""
from
examples.authentication
import
configuration
from
examples.authentication
import
generate_user_credentials
from
google.shopping.merchant_accounts_v1
import
HomepageServiceClient
from
google.shopping.merchant_accounts_v1
import
UnclaimHomepageRequest
_ACCOUNT
=
configuration
.
Configuration
()
.
read_merchant_info
()
def
unclaim_homepage
():
"""Unclaims the homepage for a given Merchant Center account."""
# Gets OAuth Credentials.
credentials
=
generate_user_credentials
.
main
()
# Creates a client.
client
=
HomepageServiceClient
(
credentials
=
credentials
)
# Creates Homepage name to identify Homepage.
# The name has the format: accounts/{account}/homepage
name
=
"accounts/"
+
_ACCOUNT
+
"/homepage"
# Creates the request.
request
=
UnclaimHomepageRequest
(
name
=
name
)
# Makes the request and catches and prints any error messages.
try
:
response
=
client
.
unclaim_homepage
(
request
=
request
)
print
(
f
"Unclaimed Homepage:
{
response
}
"
)
except
RuntimeError
as
e
:
print
(
f
"Failed to unclaim homepage:
{
e
}
"
)
if
__name__
==
"__main__"
:
unclaim_homepage
()

