次のメソッドを使用して、state の
Client を変更できます。クライアントが招待を承諾すると、新しい Client リソースの state は自動的に ACTIVE に設定されます。
特定の Client の state を INACTIVE に設定すると、クライアントの認定バイヤー マーケットプレイス UI へのアクセス権を取り消すことができます。
無効にする
buyers.clients.deactivate
メソッドを使用すると、有効な Client を無効にできます。
たとえば、クライアントの認定バイヤー マーケットプレイス UI へのアクセスを無効にする場合に、このメソッドを使用できます。
Client を無効にすると、UI にアクセスできなくなります。無効にしたクライアントに代わって、提案を表示して交渉することはできます。
次のサンプルは、deactivate メソッドを使用して Client を無効にする方法を示しています。
REST
リクエスト
POST https://authorizedbuyersmarketplace.googleapis.com/v1/buyers/12345678/clients/837492105:deactivate?alt=json Authorization: Bearer ACCESS_TOKEN Content-Type: application/json
レスポンス
{
"name": "buyers/12345678/clients/837492105",
"role": "CLIENT_DEAL_VIEWER",
"state": "INACTIVE",
"displayName": "Demo Viewer 1",
"sellerVisible": true
}Java
/* * Copyright 2021 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 com.google.api.services.samples.authorizedbuyers.marketplace.v1.buyers.clients; import com.google.api.services.authorizedbuyersmarketplace.v1.AuthorizedBuyersMarketplace; import com.google.api.services.authorizedbuyersmarketplace.v1.model.Client; import com.google.api.services.authorizedbuyersmarketplace.v1.model.DeactivateClientRequest; import com.google.api.services.samples.authorizedbuyers.marketplace.v1.Utils; import java.io.IOException; import java.security.GeneralSecurityException; import net.sourceforge.argparse4j.ArgumentParsers; import net.sourceforge.argparse4j.inf.ArgumentParser; import net.sourceforge.argparse4j.inf.ArgumentParserException; import net.sourceforge.argparse4j.inf.Namespace; /** * This sample illustrates how to deactivate a client for the given buyer account ID and client ID. */ public class DeactivateClients { public static void execute(AuthorizedBuyersMarketplace marketplaceClient, Namespace parsedArgs) { Long accountId = parsedArgs.getLong("account_id"); Long clientId = parsedArgs.getLong("client_id"); String name = String.format("buyers/%d/clients/%d", accountId, clientId); Client client = null; try { client = marketplaceClient .buyers() .clients() .deactivate(name, new DeactivateClientRequest()) .execute(); } catch (IOException ex) { System.out.printf("Marketplace API returned error response:%n%s", ex); System.exit(1); } System.out.printf( "Deactivated Client with ID \"%s\" for buyer account ID '%d':%n", clientId, accountId); Utils.printClient(client); } public static void main(String[] args) { ArgumentParser parser = ArgumentParsers.newFor("DeactivateClients") .build() .defaultHelp(true) .description(("Deactivate a client for the given buyer account ID and client ID.")); parser .addArgument("-a", "--account_id") .help( "The resource ID of the buyers resource under which the client was created. This " + "will be used to construct the parent used as a path parameter for the " + "clients.deactivate request.") .required(true) .type(Long.class); parser .addArgument("-c", "--client_id") .help( "The resource ID of the buyers.clients resource for which the client was created " + "This will be used to construct the name used as a path parameter for the " + "clients.deactivate request.") .required(true) .type(Long.class); Namespace parsedArgs = null; try { parsedArgs = parser.parseArgs(args); } catch (ArgumentParserException ex) { parser.handleError(ex); System.exit(1); } AuthorizedBuyersMarketplace client = null; try { client = Utils.getMarketplaceClient(); } catch (IOException ex) { System.out.printf("Unable to create Marketplace API service:%n%s", ex); System.out.println("Did you specify a valid path to a service account key file?"); System.exit(1); } catch (GeneralSecurityException ex) { System.out.printf("Unable to establish secure HttpTransport:%n%s", ex); System.exit(1); } execute(client, parsedArgs); } }
再度有効にする
無効な Client を
buyers.clients.activate
メソッドを使用すると、再度有効にできます。
たとえば、クライアントの認定バイヤー マーケットプレイス UI へのアクセスを無効にした後、再度有効にする場合に、このメソッドを使用できます。
次のサンプルは、activate メソッドを使用して Client を有効にする方法を示しています。
REST
リクエスト
POST https://authorizedbuyersmarketplace.googleapis.com/v1/buyers/12345678/clients/837492105:activate?alt=json Authorization: Bearer ACCESS_TOKEN Content-Type: application/json
レスポンス
{
"name": "buyers/12345678/clients/837492105",
"role": "CLIENT_DEAL_VIEWER",
"state": "ACTIVE",
"displayName": "Demo Viewer 1",
"sellerVisible": true
}Java
/* * Copyright 2021 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 com.google.api.services.samples.authorizedbuyers.marketplace.v1.buyers.clients; import com.google.api.services.authorizedbuyersmarketplace.v1.AuthorizedBuyersMarketplace; import com.google.api.services.authorizedbuyersmarketplace.v1.model.ActivateClientRequest; import com.google.api.services.authorizedbuyersmarketplace.v1.model.Client; import com.google.api.services.samples.authorizedbuyers.marketplace.v1.Utils; import java.io.IOException; import java.security.GeneralSecurityException; import net.sourceforge.argparse4j.ArgumentParsers; import net.sourceforge.argparse4j.inf.ArgumentParser; import net.sourceforge.argparse4j.inf.ArgumentParserException; import net.sourceforge.argparse4j.inf.Namespace; /** * This sample illustrates how to activate a client for the given buyer account ID and client ID. */ public class ActivateClients { public static void execute(AuthorizedBuyersMarketplace marketplaceClient, Namespace parsedArgs) { Long accountId = parsedArgs.getLong("account_id"); Long clientId = parsedArgs.getLong("client_id"); String name = String.format("buyers/%d/clients/%d", accountId, clientId); Client client = null; try { client = marketplaceClient .buyers() .clients() .activate(name, new ActivateClientRequest()) .execute(); } catch (IOException ex) { System.out.printf("Marketplace API returned error response:%n%s", ex); System.exit(1); } System.out.printf( "Activated Client with ID \"%s\" for buyer account ID '%d':%n", clientId, accountId); Utils.printClient(client); } public static void main(String[] args) { ArgumentParser parser = ArgumentParsers.newFor("ActivateClients") .build() .defaultHelp(true) .description(("Activate a client for the given buyer account ID and client ID.")); parser .addArgument("-a", "--account_id") .help( "The resource ID of the buyers resource under which the client was created. This " + "will be used to construct the parent used as a path parameter for the " + "clients.activate request.") .required(true) .type(Long.class); parser .addArgument("-c", "--client_id") .help( "The resource ID of the buyers.clients resource for which the client was created " + "This will be used to construct the name used as a path parameter for the " + "clients.activate request.") .required(true) .type(Long.class); Namespace parsedArgs = null; try { parsedArgs = parser.parseArgs(args); } catch (ArgumentParserException ex) { parser.handleError(ex); System.exit(1); } AuthorizedBuyersMarketplace client = null; try { client = Utils.getMarketplaceClient(); } catch (IOException ex) { System.out.printf("Unable to create Marketplace API service:%n%s", ex); System.out.println("Did you specify a valid path to a service account key file?"); System.exit(1); } catch (GeneralSecurityException ex) { System.out.printf("Unable to establish secure HttpTransport:%n%s", ex); System.exit(1); } execute(client, parsedArgs); } }