Page Summary
-
This webpage provides code samples in Java, PHP, and Python for retrieving a single user from a given Merchant Center account.
-
Each code sample demonstrates the process of creating a
GetUserRequestwith the user's name, which follows the formataccounts/{account}/users/{email}. -
The samples showcase the usage of the
UserServiceClientto interact with the Merchant Center API and execute thegetUsermethod. -
The Java and Python samples use OAuth for authentication, while the PHP code uses a service account or token file, for authenticating API requests.
-
All samples include error handling to manage potential network failures or API exceptions, and the provided github link can be used to view the files directly.
Merchant API code sample to get a user.
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.users.v1
;
import
com.google.api.gax.core.FixedCredentialsProvider
;
import
com.google.auth.oauth2.GoogleCredentials
;
import
com.google.shopping.merchant.accounts.v1.GetUserRequest
;
import
com.google.shopping.merchant.accounts.v1.User
;
import
com.google.shopping.merchant.accounts.v1.UserName
;
import
com.google.shopping.merchant.accounts.v1.UserServiceClient
;
import
com.google.shopping.merchant.accounts.v1.UserServiceSettings
;
import
shopping.merchant.samples.utils.Authenticator
;
import
shopping.merchant.samples.utils.Config
;
/** This class demonstrates how to get a single user for a given Merchant Center account. */
public
class
GetUserSample
{
public
static
void
getUser
(
Config
config
,
String
email
)
throws
Exception
{
// Obtains OAuth token based on the user's configuration.
GoogleCredentials
credential
=
new
Authenticator
().
authenticate
();
// Creates service settings using the credentials retrieved above.
UserServiceSettings
userServiceSettings
=
UserServiceSettings
.
newBuilder
()
.
setCredentialsProvider
(
FixedCredentialsProvider
.
create
(
credential
))
.
build
();
// Creates user name to identify user.
String
name
=
UserName
.
newBuilder
()
.
setAccount
(
config
.
getAccountId
().
toString
())
.
setEmail
(
email
)
.
build
()
.
toString
();
// Calls the API and catches and prints any network failures/errors.
try
(
UserServiceClient
userServiceClient
=
UserServiceClient
.
create
(
userServiceSettings
))
{
// The name has the format: accounts/{account}/users/{email}
GetUserRequest
request
=
GetUserRequest
.
newBuilder
().
setName
(
name
).
build
();
System
.
out
.
println
(
"Sending Get user request:"
);
User
response
=
userServiceClient
.
getUser
(
request
);
System
.
out
.
println
(
"Retrieved User below"
);
System
.
out
.
println
(
response
);
}
catch
(
Exception
e
)
{
System
.
out
.
println
(
e
);
}
}
public
static
void
main
(
String
[]
args
)
throws
Exception
{
Config
config
=
Config
.
load
();
// The email address of this user. If you want to get the user information
// Of the user making the Content API request, you can also use "me" instead
// Of an email address.
String
email
=
"testUser@gmail.com"
;
getUser
(
config
,
email
);
}
}
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.
*/
/**
* Demonstrates how to get a single user for a given Merchant Center account.
*/
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\GetUserRequest;
use Google\Shopping\Merchant\Accounts\V1\Client\UserServiceClient;
/**
* Retrieves a user.
*
* @param array $config The configuration data.
* @param string $email The email address of the user.
* @return void
*/
function getUser($config, $email): 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.
$userServiceClient = new UserServiceClient($options);
// Creates user name to identify user.
$name = 'accounts/' . $config['accountId'] . "/users/" . $email;
// Calls the API and catches and prints any network failures/errors.
try {
$request = new GetUserRequest(['name' => $name]);
print "Sending Get user request:\n";
$response = $userServiceClient->getUser($request);
print "Retrieved User below\n";
print_r($response);
} catch (ApiException $e) {
print $e->getMessage();
}
}
$config = Config::generateConfig();
$email = "testUser@gmail.com";
getUser($config, $email);

