Skip to main content
Merchant API v1beta was discontinued and shut down on February 28, 2026. For steps to transition to the latest stable version, see Migrate from v1beta to v1
.
Send feedback
Manage your homepage settings Stay organized with collections
Save and categorize content based on your preferences.
Your online store's URL is your homepage for Merchant Center. You first set
or update your homepage URL. Then, to unlock various Merchant Center
features and enable advertising on Google surfaces, you need to verify that you
have control over the website associated with this URL. After your website is
verified, you can claim the homepage in Merchant Center.
You can manage your homepage settings using Merchant API, including the
following operations:
Set your homepage URL
Claim your homepage URL
Disclaim your homepage URL
Prerequisites
Before you can claim your store website, you need to verify it. For more
information on the importance of website verification, see Understanding online
store URL verification
. To
understand the process, see Site Verification
API
.
Special considerations
To update your homepage URL, claim, or disclaim your homepage using the API, you
need administrator access to the Merchant Center account.
Get your current homepage settings
To retrieve your store's configured homepage URL and see if it has been
successfully claimed, use the accounts.homepage.getHomepage
method.
Here's an example HTTPS request:
GET https://merchantapi.googleapis.com/accounts/v1/accounts/ {ACCOUNT_ID}
/homepage
A successful request returns the Homepage
resource with the current URI and claim status.
Here's an example response:
{
"name"
:
"accounts/ {ACCOUNT_ID}
/homepage"
,
"uri"
:
"https://www.example.com"
,
"claimed"
:
true
}
If no homepage is set, it does not return a value for claimed
.
{
"name"
:
"accounts/ {ACCOUNT_ID}
/homepage"
,
"uri"
:
""
,
}
Java
import
com.google.api.gax.core.FixedCredentialsProvider
;
import
com.google.auth.oauth2.GoogleCredentials
;
import
com.google.shopping.merchant.accounts.v1.GetHomepageRequest
;
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
shopping.merchant.samples.utils.Authenticator
;
import
shopping.merchant.samples.utils.Config
;
/** This class demonstrates how to get the homepage for a given Merchant Center account */
public
class
GetHomepageSample
{
public
static
void
getHomepage
(
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.
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
))
{
// The name has the format: accounts/{account}/homepage
GetHomepageRequest
request
=
GetHomepageRequest
.
newBuilder
().
setName
(
name
).
build
();
System
.
out
.
println
(
"Sending Get Homepage request:"
);
Homepage
response
=
homepageServiceClient
.
getHomepage
(
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
();
getHomepage
(
config
);
}
}
PHP
use Google\ApiCore\ApiException;
use Google\Shopping\Merchant\Accounts\V1\GetHomepageRequest;
use Google\Shopping\Merchant\Accounts\V1\Client\HomepageServiceClient;
/**
* This class demonstrates how to get the homepage for a given Merchant Center account
*/
class GetHomepage
{
/**
* Gets 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 getHomepageSample(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 GetHomepageRequest(['name' => $name]);
print "Sending Get Homepage request:\n";
$response = $homepageServiceClient->getHomepage($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 get the homepage.
self::getHomepageSample($config);
}
}
// Run the script
$sample = new GetHomepage();
$sample->callSample();
Python
from
examples.authentication
import
configuration
from
examples.authentication
import
generate_user_credentials
from
google.shopping.merchant_accounts_v1
import
GetHomepageRequest
from
google.shopping.merchant_accounts_v1
import
HomepageServiceClient
_ACCOUNT
=
configuration
.
Configuration
()
.
read_merchant_info
()
def
get_homepage
():
"""Gets 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.
name
=
"accounts/"
+
_ACCOUNT
+
"/homepage"
# Creates the request.
request
=
GetHomepageRequest
(
name
=
name
)
# Makes the request and catches and prints any error messages.
try
:
response
=
client
.
get_homepage
(
request
=
request
)
print
(
"Retrieved Homepage below"
)
print
(
response
)
except
RuntimeError
as
e
:
print
(
e
)
if
__name__
==
"__main__"
:
get_homepage
()
cURL
curl --location --request GET \
'https://merchantapi.googleapis.com/accounts/v1/accounts/ {ACCOUNT_ID}
/homepage' \
--header 'Authorization: Bearer {ACCESS_TOKEN}
'
Update your homepage URL
To set or change the website URL associated with your Merchant Center
account, use the updateHomepage
method.
You need to provide the Homepage
resource in the request body, specifying the new uri
, and include uri
in the update_mask
.
Note: Updating the homepage will remove the claim if present.
Here's an example HTTPS request:
PATCH https://merchantapi.googleapis.com/accounts/v1/accounts/ {ACCOUNT_ID}
/homepage?update_mask=uri
Here's an example request payload:
{
"name"
:
"accounts/ {ACCOUNT_ID}
/homepage"
,
"uri"
:
"https://www.new-example.com"
}
A successful request returns the updated Homepage
resource.
Here's an example response:
{
"name"
:
"accounts/ {ACCOUNT_ID}
/homepage"
,
"uri"
:
"https://www.new-example.com"
,
"claimed"
:
true
}
Java
import
com.google.api.gax.core.FixedCredentialsProvider
;
import
com.google.auth.oauth2.GoogleCredentials
;
import
com.google.protobuf.FieldMask
;
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.UpdateHomepageRequest
;
import
shopping.merchant.samples.utils.Authenticator
;
import
shopping.merchant.samples.utils.Config
;
/** This class demonstrates how to update a homepage to a new URL. */
public
class
UpdateHomepageSample
{
public
static
void
updateHomepage
(
Config
config
,
String
uri
)
throws
Exception
{
GoogleCredentials
credential
=
new
Authenticator
().
authenticate
();
HomepageServiceSettings
homepageServiceSettings
=
HomepageServiceSettings
.
newBuilder
()
.
setCredentialsProvider
(
FixedCredentialsProvider
.
create
(
credential
))
.
build
();
// Creates homepage name to identify homepage.
String
name
=
HomepageName
.
newBuilder
().
setAccount
(
config
.
getAccountId
().
toString
()).
build
().
toString
();
// Create a homepage with the updated fields.
Homepage
homepage
=
Homepage
.
newBuilder
().
setName
(
name
).
setUri
(
uri
).
build
();
FieldMask
fieldMask
=
FieldMask
.
newBuilder
().
addPaths
(
"uri"
).
build
();
try
(
HomepageServiceClient
homepageServiceClient
=
HomepageServiceClient
.
create
(
homepageServiceSettings
))
{
UpdateHomepageRequest
request
=
UpdateHomepageRequest
.
newBuilder
().
setHomepage
(
homepage
).
setUpdateMask
(
fieldMask
).
build
();
System
.
out
.
println
(
"Sending Update Homepage request"
);
Homepage
response
=
homepageServiceClient
.
updateHomepage
(
request
);
System
.
out
.
println
(
"Updated Homepage Name below"
);
System
.
out
.
println
(
response
.
getName
());
}
catch
(
Exception
e
)
{
System
.
out
.
println
(
e
);
}
}
public
static
void
main
(
String
[]
args
)
throws
Exception
{
Config
config
=
Config
.
load
();
// The URI (a URL) of the store's homepage.
String
uri
=
"https://example.com"
;
updateHomepage
(
config
,
uri
);
}
}
PHP
use Google\ApiCore\ApiException;
use Google\Protobuf\FieldMask;
use Google\Shopping\Merchant\Accounts\V1\Homepage;
use Google\Shopping\Merchant\Accounts\V1\Client\HomepageServiceClient;
use Google\Shopping\Merchant\Accounts\V1\UpdateHomepageRequest;
/**
* This class demonstrates how to update a homepage to a new URL.
*/
class UpdateHomepage
{
/**
* Updates a homepage to a new URL.
*
* @param array $config The configuration data for authentication and account ID.
* @param string $uri The new URI for the homepage.
* @return void
* @throws ApiException if the API call fails.
*/
public static function updateHomepageSample(array $config, string $uri): 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";
// Create a homepage with the updated fields.
$homepage = new Homepage(['name' => $name, 'uri' => $uri]);
// Create field mask to specify which fields to update.
$fieldMask = new FieldMask(['paths' => ['uri']]);
try {
$request = new UpdateHomepageRequest([
'homepage' => $homepage,
'update_mask' => $fieldMask
]);
print "Sending Update Homepage request\n";
$response = $homepageServiceClient->updateHomepage($request);
print "Updated Homepage Name below\n";
print $response->getName() . "\n";
} catch (ApiException $e) {
print $e->getMessage();
}
}
/**
* Helper to execute the sample.
*
* @return void
*/
public function callSample(): void
{
$config = Config::generateConfig();
// The URI (a URL) of the store's homepage.
$uri = "https://example.com";
// Makes the call to update the homepage.
self::updateHomepageSample($config, $uri);
}
}
// Run the script
$sample = new UpdateHomepage();
$sample->callSample();
Python
from
examples.authentication
import
configuration
from
examples.authentication
import
generate_user_credentials
from
google.protobuf
import
field_mask_pb2
from
google.shopping.merchant_accounts_v1
import
Homepage
from
google.shopping.merchant_accounts_v1
import
HomepageServiceClient
from
google.shopping.merchant_accounts_v1
import
UpdateHomepageRequest
_ACCOUNT
=
configuration
.
Configuration
()
.
read_merchant_info
()
def
update_homepage
(
new_uri
):
"""Updates a homepage to a new URL."""
# Gets OAuth Credentials.
credentials
=
generate_user_credentials
.
main
()
# Creates a client.
client
=
HomepageServiceClient
(
credentials
=
credentials
)
# Creates Homepage name to identify Homepage.
name
=
"accounts/"
+
_ACCOUNT
+
"/homepage"
# Create a homepage with the updated fields.
homepage
=
Homepage
(
name
=
name
,
uri
=
new_uri
)
# Create a FieldMask for the "uri" field.
field_mask
=
field_mask_pb2
.
FieldMask
(
paths
=
[
"uri"
])
# Creates the request.
request
=
UpdateHomepageRequest
(
homepage
=
homepage
,
update_mask
=
field_mask
)
# Makes the request and catches and prints any error messages.
try
:
response
=
client
.
update_homepage
(
request
=
request
)
print
(
"Updated Homepage Name below"
)
print
(
response
.
name
)
except
RuntimeError
as
e
:
print
(
e
)
if
__name__
==
"__main__"
:
# The URI (a URL) of the store's homepage.
uri
=
"https://example.com"
update_homepage
(
uri
)
cURL
curl --location --request PATCH \
'https://merchantapi.googleapis.com/accounts/v1/accounts/ {ACCOUNT_ID}
/homepage?update_mask=uri' \
--header 'Authorization: Bearer {ACCESS_TOKEN}
' \
--header 'Content-Type: application/json' \
--data '{
"name": "accounts/ {ACCOUNT_ID}
/homepage",
"uri": "https://www.new-example.com"
}'
Claim your homepage
To claim your online store's homepage, use the claim
method. But before you can claim your homepage, you must complete verification,
which is the process that proves you own the website.
Here's an example HTTPS request:
POST https://merchantapi.googleapis.com/accounts/v1/accounts/ {ACCOUNT_ID}
/homepage:claim
Here's an example request payload if you want to overwrite an existing claim
from another account:
{
"overwrite"
:
true
}
A successful request returns the Homepage
resource. If the claim is successful, the claimed
field will be true
.
Here's an example response:
{
"name"
:
"accounts/ {ACCOUNT_ID}
/homepage"
,
"uri"
:
"https://www.new-example.com"
,
"claimed"
:
true
}
Java
import
com.google.api.gax.core.FixedCredentialsProvider
;
import
com.google.auth.oauth2.GoogleCredentials
;
import
com.google.shopping.merchant.accounts.v1.ClaimHomepageRequest
;
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
shopping.merchant.samples.utils.Authenticator
;
import
shopping.merchant.samples.utils.Config
;
/** This class demonstrates how to claim the homepage for a given Merchant Center account. */
public
class
ClaimHomepageSample
{
// Executing this method requires admin access.
public
static
void
claimHomepage
(
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
))
{
ClaimHomepageRequest
request
=
ClaimHomepageRequest
.
newBuilder
().
setName
(
name
).
build
();
System
.
out
.
println
(
"Sending Claim Homepage request:"
);
// If the homepage is already claimed, this will recheck the
// verification (unless the merchant is exempt from claiming, which also
// exempts from verification) and return a successful response. If ownership
// can no longer be verified, it will return an error, but it won't lose an existing
// claim. In case of failure, a canonical error message will be returned:
// * PERMISSION_DENIED: user doesn't have the necessary permissions on this
// MC account;
// * FAILED_PRECONDITION:
// - The account is not a Merchant Center account;
// - MC account doesn't have a homepage;
// - claiming failed (in this case the error message will contain more
// details).
Homepage
response
=
homepageServiceClient
.
claimHomepage
(
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
();
claimHomepage
(
config
);
}
}
PHP
use Google\ApiCore\ApiException;
use Google\Shopping\Merchant\Accounts\V1\ClaimHomepageRequest;
use Google\Shopping\Merchant\Accounts\V1\Client\HomepageServiceClient;
/**
* This class demonstrates how to claim the homepage for a given Merchant Center account.
*/
class ClaimHomepage
{
/**
* Claims 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 claimHomepageSample(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 ClaimHomepageRequest(['name' => $name]);
print "Sending Claim Homepage request:\n";
$response = $homepageServiceClient->claimHomepage($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 claim the homepage.
self::claimHomepageSample($config);
}
}
// Run the script
$sample = new ClaimHomepage();
$sample->callSample();
Python
from
examples.authentication
import
configuration
from
examples.authentication
import
generate_user_credentials
from
google.shopping.merchant_accounts_v1
import
ClaimHomepageRequest
from
google.shopping.merchant_accounts_v1
import
HomepageServiceClient
_ACCOUNT
=
configuration
.
Configuration
()
.
read_merchant_info
()
def
claim_homepage
():
"""Claims 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.
name
=
"accounts/"
+
_ACCOUNT
+
"/homepage"
# Creates the request.
request
=
ClaimHomepageRequest
(
name
=
name
)
# Makes the request and catches and prints any error messages.
try
:
response
=
client
.
claim_homepage
(
request
=
request
)
print
(
"Retrieved Homepage below"
)
print
(
response
)
except
RuntimeError
as
e
:
print
(
e
)
if
__name__
==
"__main__"
:
claim_homepage
()
cURL
curl --location --request POST \
'https://merchantapi.googleapis.com/accounts/v1/accounts/ {ACCOUNT_ID}
/homepage:claim' \
--header 'Authorization: Bearer {ACCESS_TOKEN}
' \
--header 'Content-Type: application/json' \
--data '{
"overwrite": true
}'
Disclaim your homepage
To remove the claimed status from your store's homepage, use the unclaim
method. You might do this if you've changed your website or no longer want to
have the current URL associated with your account in a claimed state.
Here's an example HTTPS request:
POST https://merchantapi.googleapis.com/accounts/v1/accounts/ {ACCOUNT_ID}
/homepage:unclaim
Here's an example request payload:
{}
Here's an example response:
{
"name"
:
"accounts/ {ACCOUNT_ID}
/homepage"
,
"uri"
:
"https://www.new-example.com"
,
}
Java
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
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
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
()
cURL
curl --location --request POST \
'https://merchantapi.googleapis.com/accounts/v1/accounts/ {ACCOUNT_ID}
/homepage:unclaim' \
--header 'Authorization: Bearer {ACCESS_TOKEN}
' \
--header 'Content-Type: application/json' \
--data '{}'
Send feedback
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License
, and code samples are licensed under the Apache 2.0 License
. For details, see the Google Developers Site Policies
. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2026-05-26 UTC.
Need to tell us more?
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2026-05-26 UTC."],[],["The core actions for managing your store's homepage involve claiming, retrieving, unclaimed, and updating. Claiming it is necessary to unlock features and proves ownership. These operations are performed through API methods: `accounts.homepage.claim`, `accounts.homepage.getHomepage`, `accounts.homepage.unclaim`, and `accounts.homepage.updateHomepage`. Each method uses a specific HTTP request (POST, GET, PATCH) targeting your Merchant Center account ID to either claim, view, remove the claim, or modify the homepage details. Each method returns the new status.\n"]]