Subscribe to auction packages

You can use the following methods to subscribe a buyer account or an individual client to an AuctionPackage .

To unsubscribe from an auction package, see Unsubcribe .

You can use the buyers.auctionPackages.subscribe method to subscribe a buyer to an existing AuctionPackage .

Once subscribed, bid requests are sent to your endpoints based on the targeting details in the auction package on behalf of the specified buyer. You're unsubscribed from an auction package automatically after six months if it hasn’tbeen modified and you haven’t placed any bids for inventory it targets.

The following sample demonstrates how you can subscribe a buyer to an AuctionPackage with the subscribe method.

REST

Request

POST https://authorizedbuyersmarketplace.googleapis.com/v1/buyers/12345678/auctionPackages/560644393848382202:subscribe?alt=json
Authorization: Bearer ACCESS_TOKEN 
Content-Type: application/json

Response

{
 "name": "buyers/12345678/auctionPackages/560644393848382202",
 "creator": "buyers/42528410",
 "displayName": "Top 100 Mars Mobile Apps",
 "description": "Mobile Apps, Display format, United Federation of Mars.",
 "createTime": "2042-03-25T05:20:50.136Z",
 "updateTime": "2042-03-25T05:20:50.136Z"
}

C#

 /* Copyright 2022 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. 
 */ 
 using 
  
 Google.Apis.AuthorizedBuyersMarketplace.v1 
 ; 
 using 
  
 Google.Apis.AuthorizedBuyersMarketplace.v1.Data 
 ; 
 using 
  
 Mono.Options 
 ; 
 using 
  
 System 
 ; 
 using 
  
 System.Collections.Generic 
 ; 
 namespace 
  
 Google.Apis.AuthorizedBuyersMarketplace.Examples.v1.Buyers.AuctionPackages 
 { 
  
 /// <summary> 
  
 /// Subscribes a given buyer account to a specified auction package. 
  
 /// 
  
 /// Once subscribed, the bidder will begin receiving bid requests for the buyer account that 
  
 /// include the auction package deal ID and contain inventory matching the auction package's 
  
 /// targeting criteria. 
  
 /// </summary> 
  
 public 
  
 class 
  
 SubscribeToAuctionPackages 
  
 : 
  
 ExampleBase 
  
 { 
  
 private 
  
 AuthorizedBuyersMarketplaceService 
  
 mkService 
 ; 
  
 /// <summary> 
  
 /// Constructor. 
  
 /// </summary> 
  
 public 
  
 SubscribeToAuctionPackages 
 () 
  
 { 
  
 mkService 
  
 = 
  
 Utilities 
 . 
 GetAuthorizedBuyersMarketplaceService 
 (); 
  
 } 
  
 /// <summary> 
  
 /// Returns a description about the code example. 
  
 /// </summary> 
  
 public 
  
 override 
  
 string 
  
 Description 
  
 { 
  
 get 
  
 = 
>  
 "This code example subscribes a buyer account to a specific auction package." 
 ; 
  
 } 
  
 /// <summary> 
  
 /// Parse specified arguments. 
  
 /// </summary> 
  
 protected 
  
 override 
  
 Dictionary<string 
 , 
  
 object 
>  
 ParseArguments 
 ( 
 List<string> 
  
 exampleArgs 
 ) 
  
 { 
  
 string 
 [] 
  
 requiredOptions 
  
 = 
  
 new 
  
 string 
 [] 
  
 { 
 "account_id" 
 , 
  
 "auction_package_id" 
 }; 
  
 bool 
  
 showHelp 
  
 = 
  
 false 
 ; 
  
 string 
  
 accountId 
  
 = 
  
 null 
 ; 
  
 string 
  
 auctionPackageId 
  
 = 
  
 null 
 ; 
  
 OptionSet 
  
 options 
  
 = 
  
 new 
  
 OptionSet 
  
 { 
  
 "Subscribe the given buyer account to the specified auction package." 
 , 
  
 { 
  
 "h|help" 
 , 
  
 "Show help message and exit." 
 , 
  
 h 
  
 = 
>  
 showHelp 
  
 = 
  
 h 
  
 != 
  
 null 
  
 }, 
  
 { 
  
 "a|account_id=" 
 , 
  
 ( 
 "[Required] The resource ID of the buyers resource that will be " 
  
 + 
  
 "subscribing to the auction package. This will be used to construct the " 
  
 + 
  
 "name used as a path parameter for the auctionPackages.subscribe request." 
 ), 
  
 a 
  
 = 
>  
 accountId 
  
 = 
  
 a 
  
 }, 
  
 { 
  
 "auction_package_id=" 
 , 
  
 ( 
 "[Required] The resource ID of the buyers.auctionPackages resource that " 
  
 + 
  
 "the buyer is subscribing to. This will be used to construct the name used as a " 
  
 + 
  
 "path parameter for the auctionPackages.subscribe request." 
 ), 
  
 auction_package_id 
  
 = 
>  
 auctionPackageId 
  
 = 
  
 auction_package_id 
  
 }, 
  
 }; 
  
 List<string> 
  
 extras 
  
 = 
  
 options 
 . 
 Parse 
 ( 
 exampleArgs 
 ); 
  
 var 
  
 parsedArgs 
  
 = 
  
 new 
  
 Dictionary<string 
 , 
  
 object 
> (); 
  
 // Show help message. 
  
 if 
  
 ( 
 showHelp 
  
 == 
  
 true 
 ) 
  
 { 
  
 options 
 . 
 WriteOptionDescriptions 
 ( 
 Console 
 . 
 Out 
 ); 
  
 Environment 
 . 
 Exit 
 ( 
 0 
 ); 
  
 } 
  
 // Set optional arguments. 
  
 parsedArgs 
 [ 
 "account_id" 
 ] 
  
 = 
  
 accountId 
 ; 
  
 parsedArgs 
 [ 
 "auction_package_id" 
 ] 
  
 = 
  
 auctionPackageId 
 ; 
  
 // Validate that options were set correctly. 
  
 Utilities 
 . 
 ValidateOptions 
 ( 
 options 
 , 
  
 parsedArgs 
 , 
  
 requiredOptions 
 , 
  
 extras 
 ); 
  
 return 
  
 parsedArgs 
 ; 
  
 } 
  
 /// <summary> 
  
 /// Run the example. 
  
 /// </summary> 
  
 /// <param name="parsedArgs">Parsed arguments for the example.</param> 
  
 protected 
  
 override 
  
 void 
  
 Run 
 ( 
 Dictionary<string 
 , 
  
 object 
>  
 parsedArgs 
 ) 
  
 { 
  
 string 
  
 accountId 
  
 = 
  
 ( 
 string 
 ) 
  
 parsedArgs 
 [ 
 "account_id" 
 ]; 
  
 string 
  
 auctionPackageId 
  
 = 
  
 ( 
 string 
 ) 
  
 parsedArgs 
 [ 
 "auction_package_id" 
 ]; 
  
 string 
  
 name 
  
 = 
  
 $"buyers/{accountId}/auctionPackages/{auctionPackageId}" 
 ; 
  
 BuyersResource 
 . 
 AuctionPackagesResource 
 . 
 SubscribeRequest 
  
 request 
  
 = 
  
 mkService 
 . 
 Buyers 
 . 
 AuctionPackages 
 . 
 Subscribe 
 ( 
 new 
  
 SubscribeAuctionPackageRequest 
 (), 
  
 name 
 ); 
  
 AuctionPackage 
  
 response 
  
 = 
  
 null 
 ; 
  
 Console 
 . 
 WriteLine 
 ( 
 "Subscribing buyer \"{0}\" to auction package \"{1}\"" 
 , 
  
 accountId 
 , 
  
 auctionPackageId 
 ); 
  
 try 
  
 { 
  
 response 
  
 = 
  
 request 
 . 
 Execute 
 (); 
  
 } 
  
 catch 
  
 ( 
 Exception 
  
 exception 
 ) 
  
 { 
  
 throw 
  
 new 
  
 ApplicationException 
 ( 
  
 $"Marketplace API returned error response:\n{exception.Message}" 
 ); 
  
 } 
  
 Utilities 
 . 
 PrintAuctionPackage 
 ( 
 response 
 ); 
  
 } 
  
 } 
 } 

Java

 /* 
 * Copyright 2022 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.auctionPackages 
 ; 
 import 
  
 com.google.api.services.authorizedbuyersmarketplace.v1.AuthorizedBuyersMarketplace 
 ; 
 import 
  
 com.google.api.services.authorizedbuyersmarketplace.v1.model.AuctionPackage 
 ; 
 import 
  
 com.google.api.services.authorizedbuyersmarketplace.v1.model.SubscribeAuctionPackageRequest 
 ; 
 import 
  
 com.google.api.services.samples.authorizedbuyers.marketplace.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 subscribe a given buyer account to a specified auction package. 
 * 
 * <p>Once subscribed, the bidder will begin receiving bid requests for the buyer account that 
 * include the auction package deal ID and contain inventory matching the auction package's 
 * targeting criteria. 
 */ 
 public 
  
 class 
 SubscribeToAuctionPackages 
  
 { 
  
 public 
  
 static 
  
 void 
  
 execute 
 ( 
 AuthorizedBuyersMarketplace 
  
 marketplaceClient 
 , 
  
 Namespace 
  
 parsedArgs 
 ) 
  
 { 
  
 Long 
  
 accountId 
  
 = 
  
 parsedArgs 
 . 
 getLong 
 ( 
 "account_id" 
 ); 
  
 Long 
  
 auctionPackageId 
  
 = 
  
 parsedArgs 
 . 
 getLong 
 ( 
 "auction_package_id" 
 ); 
  
 String 
  
 name 
  
 = 
  
 String 
 . 
 format 
 ( 
 "buyers/%d/auctionPackages/%d" 
 , 
  
 accountId 
 , 
  
 auctionPackageId 
 ); 
  
 AuctionPackage 
  
 auctionPackage 
  
 = 
  
 null 
 ; 
  
 try 
  
 { 
  
 auctionPackage 
  
 = 
  
 marketplaceClient 
  
 . 
 buyers 
 () 
  
 . 
 auctionPackages 
 () 
  
 . 
 subscribe 
 ( 
 name 
 , 
  
 new 
  
 SubscribeAuctionPackageRequest 
 ()) 
  
 . 
 execute 
 (); 
  
 } 
  
 catch 
  
 ( 
 IOException 
  
 ex 
 ) 
  
 { 
  
 System 
 . 
 out 
 . 
 printf 
 ( 
 "Marketplace API returned error response:%n%s" 
 , 
  
 ex 
 ); 
  
 System 
 . 
 exit 
 ( 
 1 
 ); 
  
 } 
  
 System 
 . 
 out 
 . 
 printf 
 ( 
  
 "Subscribing buyer with ID \"%d\" to auction package with ID \"%s\":%n" 
 , 
  
 accountId 
 , 
  
 auctionPackageId 
 ); 
  
 Utils 
 . 
 printAuctionPackage 
 ( 
 auctionPackage 
 ); 
  
 } 
  
 public 
  
 static 
  
 void 
  
 main 
 ( 
 String 
 [] 
  
 args 
 ) 
  
 { 
  
 ArgumentParser 
  
 parser 
  
 = 
  
 ArgumentParsers 
 . 
 newFor 
 ( 
 "SubscribeToAuctionPackages" 
 ) 
  
 . 
 build 
 () 
  
 . 
 defaultHelp 
 ( 
 true 
 ) 
  
 . 
 description 
 (( 
 "Subscribe the given buyer account to the specified auction package." 
 )); 
  
 parser 
  
 . 
 addArgument 
 ( 
 "-a" 
 , 
  
 "--account_id" 
 ) 
  
 . 
 help 
 ( 
  
 "The resource ID of the buyers resource that will be subscribing to the auction" 
  
 + 
  
 " package. This will be used to construct the name used as a path parameter for" 
  
 + 
  
 " the auctionPackages.subscribe request." 
 ) 
  
 . 
 required 
 ( 
 true 
 ) 
  
 . 
 type 
 ( 
 Long 
 . 
 class 
 ); 
  
 parser 
  
 . 
 addArgument 
 ( 
 "--auction_package_id" 
 ) 
  
 . 
 help 
 ( 
  
 "The resource ID of the buyers.auctionPackages resource that the buyer is subscribing" 
  
 + 
  
 " to. This will be used to construct the name used as a path parameter for the" 
  
 + 
  
 " auctionPackages.subscribe 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 
 ); 
  
 } 
 } 

Python

 #!/usr/bin/python 
 # 
 # Copyright 2021 Google Inc. All Rights Reserved. 
 # 
 # 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. 
 """Subscribes a given buyer account to a specified auction package.""" 
 import 
  
 argparse 
 import 
  
 os 
 import 
  
 pprint 
 import 
  
 sys 
 sys 
 . 
 path 
 . 
 insert 
 ( 
 0 
 , 
 os 
 . 
 path 
 . 
 abspath 
 ( 
 '../../..' 
 )) 
 from 
  
 googleapiclient.errors 
  
 import 
 HttpError 
 import 
  
 util 
 _AUCTION_PACKAGE_NAME_TEMPLATE 
 = 
 'buyers/ 
 %s 
 /auctionPackages/ 
 %s 
 ' 
 DEFAULT_BUYER_RESOURCE_ID 
 = 
 'ENTER_BUYER_RESOURCE_ID_HERE' 
 DEFAULT_AUCTION_PACKAGE_RESOURCE_ID 
 = 
 'ENTER_CLIENT_RESOURCE_ID_HERE' 
 def 
  
 main 
 ( 
 marketplace 
 , 
 args 
 ): 
 account_id 
 = 
 args 
 . 
 account_id 
 auction_package_name 
 = 
 _AUCTION_PACKAGE_NAME_TEMPLATE 
 % 
 ( 
 account_id 
 , 
 args 
 . 
 auction_package_id 
 ) 
 print 
 ( 
 f 
 'Subscribing buyer account w/ ID " 
 { 
 account_id 
 } 
 " to auction package ' 
 f 
 'with name " 
 { 
 auction_package_name 
 } 
 ":' 
 ) 
 try 
 : 
 # Construct and execute the request. 
 response 
 = 
 marketplace 
 . 
 buyers 
 () 
 . 
 auctionPackages 
 () 
 . 
 subscribe 
 ( 
 name 
 = 
 auction_package_name 
 ) 
 . 
 execute 
 () 
 except 
 HttpError 
 as 
 e 
 : 
 print 
 ( 
 e 
 ) 
 sys 
 . 
 exit 
 ( 
 1 
 ) 
 pprint 
 . 
 pprint 
 ( 
 response 
 ) 
 if 
 __name__ 
 == 
 '__main__' 
 : 
 try 
 : 
 service 
 = 
 util 
 . 
 get_service 
 ( 
 version 
 = 
 'v1' 
 ) 
 except 
 IOError 
 as 
 ex 
 : 
 print 
 ( 
 f 
 'Unable to create marketplace service - 
 { 
 ex 
 } 
 ' 
 ) 
 print 
 ( 
 'Did you specify the key file in util.py?' 
 ) 
 sys 
 . 
 exit 
 ( 
 1 
 ) 
 parser 
 = 
 argparse 
 . 
 ArgumentParser 
 ( 
 description 
 = 
 ( 
 'Subscribe a given buyer account to a specified auction ' 
 'package.' 
 )) 
 # Required fields. 
 parser 
 . 
 add_argument 
 ( 
 '-a' 
 , 
 '--account_id' 
 , 
 default 
 = 
 DEFAULT_BUYER_RESOURCE_ID 
 , 
 help 
 = 
 ( 
 'The resource ID of the buyers resource that is to subscribe to ' 
 'an auction package. This will be used to construct the name ' 
 'used as a path parameter for the auctionPackages.subscribe ' 
 'request.' 
 )) 
 parser 
 . 
 add_argument 
 ( 
 '-p' 
 , 
 '--auction_package_id' 
 , 
 default 
 = 
 DEFAULT_AUCTION_PACKAGE_RESOURCE_ID 
 , 
 help 
 = 
 ( 
 'The resource ID of the buyers.auctionPackages resource that the ' 
 'buyer will subscribe to. This will be used to construct the ' 
 'name used as a path parameter for the auctionPackages.subscribe ' 
 'request.' 
 )) 
 main 
 ( 
 service 
 , 
 parser 
 . 
 parse_args 
 ()) 

You can use the buyers.auctionPackages.subscribeClients method to subscribe one or more of a buyer’s clients to an AuctionPackage .

Once subscribed, bid requests are sent to your endpoints based on the targeting of the auction package on behalf of the specified buyer and clients.

The following sample demonstrates how you can subscribe clients to an AuctionPackage with the subscribeClients method.

REST

Request

POST https://authorizedbuyersmarketplace.googleapis.com/v1/buyers/12345678/auctionPackages/560644393848382202:subscribeClients?alt=json
Authorization: Bearer ACCESS_TOKEN 
Content-Type: application/json

{
 "clients": [
   "buyers/12345678/clients/873721984",
   "buyers/12345678/clients/136428959"
 ]
}

Response

{
 "name": "buyers/12345678/auctionPackages/560644393848382202",
 "creator": "buyers/42528410",
 "displayName": "Top 100 Mars Mobile Apps",
 "description": "Mobile Apps, Display format, United Federation of Mars.",
 "createTime": "2042-03-25T05:20:50.136Z",
 "updateTime": "2042-03-25T05:20:50.136Z",
 "subscribedClients": [
   "buyers/12345678/clients/873721984",
   "buyers/12345678/clients/136428959"
 ]
}

C#

 /* Copyright 2022 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. 
 */ 
 using 
  
 Google.Apis.AuthorizedBuyersMarketplace.v1 
 ; 
 using 
  
 Google.Apis.AuthorizedBuyersMarketplace.v1.Data 
 ; 
 using 
  
 Mono.Options 
 ; 
 using 
  
 System 
 ; 
 using 
  
 System.Collections.Generic 
 ; 
 namespace 
  
 Google.Apis.AuthorizedBuyersMarketplace.Examples.v1.Buyers.AuctionPackages 
 { 
  
 /// <summary> 
  
 /// Subscribes one or more clients to a specified auction package. 
  
 /// </summary> 
  
 public 
  
 class 
  
 SubscribeClientsToAuctionPackages 
  
 : 
  
 ExampleBase 
  
 { 
  
 private 
  
 AuthorizedBuyersMarketplaceService 
  
 mkService 
 ; 
  
 /// <summary> 
  
 /// Constructor. 
  
 /// </summary> 
  
 public 
  
 SubscribeClientsToAuctionPackages 
 () 
  
 { 
  
 mkService 
  
 = 
  
 Utilities 
 . 
 GetAuthorizedBuyersMarketplaceService 
 (); 
  
 } 
  
 /// <summary> 
  
 /// Returns a description about the code example. 
  
 /// </summary> 
  
 public 
  
 override 
  
 string 
  
 Description 
  
 { 
  
 get 
  
 = 
>  
 "This code example subscribes one or more clients to an auction package." 
 ; 
  
 } 
  
 /// <summary> 
  
 /// Parse specified arguments. 
  
 /// </summary> 
  
 protected 
  
 override 
  
 Dictionary<string 
 , 
  
 object 
>  
 ParseArguments 
 ( 
 List<string> 
  
 exampleArgs 
 ) 
  
 { 
  
 string 
 [] 
  
 requiredOptions 
  
 = 
  
 new 
  
 string 
 [] 
  
 { 
  
 "account_id" 
 , 
  
 "auction_package_id" 
 , 
  
 "client_ids" 
 }; 
  
 bool 
  
 showHelp 
  
 = 
  
 false 
 ; 
  
 string 
  
 accountId 
  
 = 
  
 null 
 ; 
  
 string 
  
 auctionPackageId 
  
 = 
  
 null 
 ; 
  
 IList<string> 
  
 clientIds 
  
 = 
  
 new 
  
 List<string> 
 (); 
  
 OptionSet 
  
 options 
  
 = 
  
 new 
  
 OptionSet 
  
 { 
  
 "Subscribe one or more clients to the specified auction package." 
 , 
  
 { 
  
 "h|help" 
 , 
  
 "Show help message and exit." 
 , 
  
 h 
  
 = 
>  
 showHelp 
  
 = 
  
 h 
  
 != 
  
 null 
  
 }, 
  
 { 
  
 "a|account_id=" 
 , 
  
 ( 
 "[Required] The resource ID of the buyers resource under which the clients " 
  
 + 
  
 "subscribing to the auction package exist. This will be used to construct " 
  
 + 
  
 "the name used as a path parameter for the " 
  
 + 
  
 "auctionPackages.subscribeClients request." 
 ), 
  
 a 
  
 = 
>  
 accountId 
  
 = 
  
 a 
  
 }, 
  
 { 
  
 "auction_package_id=" 
 , 
  
 ( 
 "[Required] The resource ID of the buyers.auctionPackages resource that " 
  
 + 
  
 "the buyer is subscribing their clients to. This will be used to " 
  
 + 
  
 "construct the name used as a path parameter for the " 
  
 + 
  
 "auctionPackages.subscribeClients request." 
 ), 
  
 auction_package_id 
  
 = 
>  
 auctionPackageId 
  
 = 
  
 auction_package_id 
  
 }, 
  
 { 
  
 "c|client_id=" 
 , 
  
 ( 
 "[Required] The resource IDs of one or more clients existing under the " 
  
 + 
  
 "buyer that will be subscribed to the auction package. These will be used " 
  
 + 
  
 "to construct client names that will be passed in the body of the " 
  
 + 
  
 "auctionPackages.subscribeClients request. Specify this argument for each " 
  
 + 
  
 "client you intend to subscribe to the auction package." 
 ), 
  
 c 
  
 = 
>  
 clientIds 
 . 
 Add 
 ( 
 c 
 ) 
  
 }, 
  
 }; 
  
 List<string> 
  
 extras 
  
 = 
  
 options 
 . 
 Parse 
 ( 
 exampleArgs 
 ); 
  
 var 
  
 parsedArgs 
  
 = 
  
 new 
  
 Dictionary<string 
 , 
  
 object 
> (); 
  
 // Show help message. 
  
 if 
  
 ( 
 showHelp 
  
 == 
  
 true 
 ) 
  
 { 
  
 options 
 . 
 WriteOptionDescriptions 
 ( 
 Console 
 . 
 Out 
 ); 
  
 Environment 
 . 
 Exit 
 ( 
 0 
 ); 
  
 } 
  
 // Set optional arguments. 
  
 parsedArgs 
 [ 
 "account_id" 
 ] 
  
 = 
  
 accountId 
 ; 
  
 parsedArgs 
 [ 
 "auction_package_id" 
 ] 
  
 = 
  
 auctionPackageId 
 ; 
  
 parsedArgs 
 [ 
 "client_ids" 
 ] 
  
 = 
  
 clientIds 
 ; 
  
 // Validate that options were set correctly. 
  
 Utilities 
 . 
 ValidateOptions 
 ( 
 options 
 , 
  
 parsedArgs 
 , 
  
 requiredOptions 
 , 
  
 extras 
 ); 
  
 return 
  
 parsedArgs 
 ; 
  
 } 
  
 /// <summary> 
  
 /// Run the example. 
  
 /// </summary> 
  
 /// <param name="parsedArgs">Parsed arguments for the example.</param> 
  
 protected 
  
 override 
  
 void 
  
 Run 
 ( 
 Dictionary<string 
 , 
  
 object 
>  
 parsedArgs 
 ) 
  
 { 
  
 string 
  
 accountId 
  
 = 
  
 ( 
 string 
 ) 
  
 parsedArgs 
 [ 
 "account_id" 
 ]; 
  
 string 
  
 auctionPackageId 
  
 = 
  
 ( 
 string 
 ) 
  
 parsedArgs 
 [ 
 "auction_package_id" 
 ]; 
  
 List<string> 
  
 clientIds 
  
 = 
  
 ( 
 List<string> 
 ) 
  
 parsedArgs 
 [ 
 "client_ids" 
 ]; 
  
 List<string> 
  
 clientNames 
  
 = 
  
 new 
  
 List<string> 
 (); 
  
 string 
  
 name 
  
 = 
  
 $"buyers/{accountId}/auctionPackages/{auctionPackageId}" 
 ; 
  
 Console 
 . 
 WriteLine 
 ( 
 "Subscribing the following clients for buyer \"{0}\" to auction " 
  
 + 
  
 "package \"{1}\":" 
 , 
  
 accountId 
 , 
  
 auctionPackageId 
 ); 
  
 foreach 
  
 ( 
 string 
  
 clientId 
  
 in 
  
 clientIds 
 ) 
  
 { 
  
 string 
  
 clientName 
  
 = 
  
 $"buyers/{accountId}/clients/{clientId}" 
 ; 
  
 clientNames 
 . 
 Add 
 ( 
 clientName 
 ); 
  
 Console 
 . 
 WriteLine 
 ( 
 $"- {clientName}" 
 ); 
  
 } 
  
 SubscribeClientsRequest 
  
 subscribeClientsRequest 
  
 = 
  
 new 
  
 SubscribeClientsRequest 
 () 
  
 { 
  
 Clients 
  
 = 
  
 clientNames 
  
 }; 
  
 BuyersResource 
 . 
 AuctionPackagesResource 
 . 
 SubscribeClientsRequest 
  
 request 
  
 = 
  
 mkService 
 . 
 Buyers 
 . 
 AuctionPackages 
 . 
 SubscribeClients 
 ( 
  
 subscribeClientsRequest 
 , 
  
 name 
 ); 
  
 AuctionPackage 
  
 response 
  
 = 
  
 null 
 ; 
  
 try 
  
 { 
  
 response 
  
 = 
  
 request 
 . 
 Execute 
 (); 
  
 } 
  
 catch 
  
 ( 
 Exception 
  
 exception 
 ) 
  
 { 
  
 throw 
  
 new 
  
 ApplicationException 
 ( 
  
 $"Marketplace API returned error response:\n{exception.Message}" 
 ); 
  
 } 
  
 Utilities 
 . 
 PrintAuctionPackage 
 ( 
 response 
 ); 
  
 } 
  
 } 
 } 

Java

 /* 
 * Copyright 2022 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.auctionPackages 
 ; 
 import 
  
 com.google.api.services.authorizedbuyersmarketplace.v1.AuthorizedBuyersMarketplace 
 ; 
 import 
  
 com.google.api.services.authorizedbuyersmarketplace.v1.model.AuctionPackage 
 ; 
 import 
  
 com.google.api.services.authorizedbuyersmarketplace.v1.model.SubscribeClientsRequest 
 ; 
 import 
  
 com.google.api.services.samples.authorizedbuyers.marketplace.Utils 
 ; 
 import 
  
 java.io.IOException 
 ; 
 import 
  
 java.security.GeneralSecurityException 
 ; 
 import 
  
 java.util.List 
 ; 
 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 subscribe one or more clients to a specified auction package. */ 
 public 
  
 class 
 SubscribeClientsToAuctionPackages 
  
 { 
  
 public 
  
 static 
  
 void 
  
 execute 
 ( 
 AuthorizedBuyersMarketplace 
  
 marketplaceClient 
 , 
  
 Namespace 
  
 parsedArgs 
 ) 
  
 { 
  
 Long 
  
 accountId 
  
 = 
  
 parsedArgs 
 . 
 getLong 
 ( 
 "account_id" 
 ); 
  
 Long 
  
 auctionPackageId 
  
 = 
  
 parsedArgs 
 . 
 getLong 
 ( 
 "auction_package_id" 
 ); 
  
 List<String> 
  
 clientIds 
  
 = 
  
 parsedArgs 
 . 
 getList 
 ( 
 "client_ids" 
 ); 
  
 String 
  
 name 
  
 = 
  
 String 
 . 
 format 
 ( 
 "buyers/%d/auctionPackages/%d" 
 , 
  
 accountId 
 , 
  
 auctionPackageId 
 ); 
  
 AuctionPackage 
  
 auctionPackage 
  
 = 
  
 null 
 ; 
  
 SubscribeClientsRequest 
  
 subscribeClientsRequest 
  
 = 
  
 new 
  
 SubscribeClientsRequest 
 (); 
  
 subscribeClientsRequest 
 . 
 setClients 
 ( 
 clientIds 
 ); 
  
 try 
  
 { 
  
 auctionPackage 
  
 = 
  
 marketplaceClient 
  
 . 
 buyers 
 () 
  
 . 
 auctionPackages 
 () 
  
 . 
 subscribeClients 
 ( 
 name 
 , 
  
 subscribeClientsRequest 
 ) 
  
 . 
 execute 
 (); 
  
 } 
  
 catch 
  
 ( 
 IOException 
  
 ex 
 ) 
  
 { 
  
 System 
 . 
 out 
 . 
 printf 
 ( 
 "Marketplace API returned error response:%n%s" 
 , 
  
 ex 
 ); 
  
 System 
 . 
 exit 
 ( 
 1 
 ); 
  
 } 
  
 System 
 . 
 out 
 . 
 printf 
 ( 
  
 "Subscribing the following clients for buyer \"%d\" to auction package " 
  
 + 
  
 "with ID \"%s\":%n" 
 , 
  
 accountId 
 , 
  
 auctionPackageId 
 ); 
  
 System 
 . 
 out 
 . 
 println 
 ( 
 "\t- " 
  
 + 
  
 String 
 . 
 join 
 ( 
 String 
 . 
 format 
 ( 
 "%n\t- " 
 ), 
  
 clientIds 
 )); 
  
 Utils 
 . 
 printAuctionPackage 
 ( 
 auctionPackage 
 ); 
  
 } 
  
 public 
  
 static 
  
 void 
  
 main 
 ( 
 String 
 [] 
  
 args 
 ) 
  
 { 
  
 ArgumentParser 
  
 parser 
  
 = 
  
 ArgumentParsers 
 . 
 newFor 
 ( 
 "SubscribeClientsToAuctionPackages" 
 ) 
  
 . 
 build 
 () 
  
 . 
 defaultHelp 
 ( 
 true 
 ) 
  
 . 
 description 
 (( 
 "Subscribe one or more clients to the specified auction package." 
 )); 
  
 parser 
  
 . 
 addArgument 
 ( 
 "-a" 
 , 
  
 "--account_id" 
 ) 
  
 . 
 help 
 ( 
  
 "The resource ID of the buyers resource under which the clients subscribing to the" 
  
 + 
  
 " auction package exist. This will be used to construct the name used as a path" 
  
 + 
  
 " parameter for the auctionPackages.subscribeClients request, and client names" 
  
 + 
  
 " that will be included in the body of the auctionPackages.subscribeClients" 
  
 + 
  
 " request." 
 ) 
  
 . 
 required 
 ( 
 true 
 ) 
  
 . 
 type 
 ( 
 Long 
 . 
 class 
 ); 
  
 parser 
  
 . 
 addArgument 
 ( 
 "--auction_package_id" 
 ) 
  
 . 
 help 
 ( 
  
 "The resource ID of the buyers.auctionPackages resource that the buyer is " 
  
 + 
  
 "subscribing their clients to. This will be used to construct the name used as a " 
  
 + 
  
 "path parameter for the auctionPackages.subscribeClients request." 
 ) 
  
 . 
 required 
 ( 
 true 
 ) 
  
 . 
 type 
 ( 
 Long 
 . 
 class 
 ); 
  
 parser 
  
 . 
 addArgument 
 ( 
 "--client_ids" 
 ) 
  
 . 
 help 
 ( 
  
 "The resource IDs of one or more buyers.clients resources that the buyer is subscribing" 
  
 + 
  
 " to an auction package. This will be used to construct client names that will be" 
  
 + 
  
 " included in the body of the auctionPackages.subscribeClients request. Specify" 
  
 + 
  
 " each client ID separated by a space." 
 ) 
  
 . 
 required 
 ( 
 true 
 ) 
  
 . 
 type 
 ( 
 Long 
 . 
 class 
 ) 
  
 . 
 nargs 
 ( 
 "+" 
 ); 
  
 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 
 ); 
  
 } 
 } 

Python

 #!/usr/bin/python 
 # 
 # Copyright 2021 Google Inc. All Rights Reserved. 
 # 
 # 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. 
 """Subscribes a given set of clients to a specified auction package. 
 Note that the specified buyer account will also be subscribed to the auction 
 package if it hasn't been already. 
 """ 
 import 
  
 argparse 
 import 
  
 os 
 import 
  
 pprint 
 import 
  
 sys 
 sys 
 . 
 path 
 . 
 insert 
 ( 
 0 
 , 
 os 
 . 
 path 
 . 
 abspath 
 ( 
 '../../..' 
 )) 
 from 
  
 googleapiclient.errors 
  
 import 
 HttpError 
 import 
  
 util 
 _AUCTION_PACKAGE_NAME_TEMPLATE 
 = 
 'buyers/ 
 %s 
 /auctionPackages/ 
 %s 
 ' 
 _CLIENT_NAME_TEMPLATE 
 = 
 'buyers/ 
 %s 
 /clients/ 
 %s 
 ' 
 DEFAULT_BUYER_RESOURCE_ID 
 = 
 'ENTER_BUYER_RESOURCE_ID_HERE' 
 DEFAULT_AUCTION_PACKAGE_RESOURCE_ID 
 = 
 'ENTER_CLIENT_RESOURCE_ID_HERE' 
 def 
  
 main 
 ( 
 marketplace 
 , 
 args 
 ): 
 account_id 
 = 
 args 
 . 
 account_id 
 auction_package_name 
 = 
 _AUCTION_PACKAGE_NAME_TEMPLATE 
 % 
 ( 
 account_id 
 , 
 args 
 . 
 auction_package_id 
 ) 
 body 
 = 
 { 
 'clients' 
 : 
 [ 
 _CLIENT_NAME_TEMPLATE 
 % 
 ( 
 account_id 
 , 
 client 
 ) 
 for 
 client 
 in 
 args 
 . 
 client_ids 
 ]} 
 print 
 ( 
 f 
 'Subscribing clients to auction package " 
 { 
 auction_package_name 
 } 
 " on ' 
 f 
 'behalf of buyer account w/ ID " 
 { 
 account_id 
 } 
 ":' 
 ) 
 try 
 : 
 # Construct and execute the request. 
 response 
 = 
 marketplace 
 . 
 buyers 
 () 
 . 
 auctionPackages 
 () 
 . 
 subscribeClients 
 ( 
 auctionPackage 
 = 
 auction_package_name 
 , 
 body 
 = 
 body 
 ) 
 . 
 execute 
 () 
 except 
 HttpError 
 as 
 e 
 : 
 print 
 ( 
 e 
 ) 
 sys 
 . 
 exit 
 ( 
 1 
 ) 
 pprint 
 . 
 pprint 
 ( 
 response 
 ) 
 if 
 __name__ 
 == 
 '__main__' 
 : 
 try 
 : 
 service 
 = 
 util 
 . 
 get_service 
 ( 
 version 
 = 
 'v1' 
 ) 
 except 
 IOError 
 as 
 ex 
 : 
 print 
 ( 
 f 
 'Unable to create marketplace service - 
 { 
 ex 
 } 
 ' 
 ) 
 print 
 ( 
 'Did you specify the key file in util.py?' 
 ) 
 sys 
 . 
 exit 
 ( 
 1 
 ) 
 parser 
 = 
 argparse 
 . 
 ArgumentParser 
 ( 
 description 
 = 
 ( 
 'Subscribe a given buyer 
 \' 
 s clients to a specified ' 
 'auction package.' 
 )) 
 # Required fields. 
 parser 
 . 
 add_argument 
 ( 
 '-a' 
 , 
 '--account_id' 
 , 
 default 
 = 
 DEFAULT_BUYER_RESOURCE_ID 
 , 
 help 
 = 
 ( 
 'The resource ID of the buyers resource that is to have its ' 
 'clients subscribed to an auction package. This will be used to ' 
 'construct the name used as a path parameter for the ' 
 'auctionPackages.subscribeClients request.' 
 )) 
 parser 
 . 
 add_argument 
 ( 
 '-p' 
 , 
 '--auction_package_id' 
 , 
 default 
 = 
 DEFAULT_AUCTION_PACKAGE_RESOURCE_ID 
 , 
 help 
 = 
 ( 
 'The resource ID of the buyers.auctionPackages resource that the ' 
 'buyer will subscribe one or more of its clients to. This will ' 
 'be used to construct the name used as a path parameter for the ' 
 'auctionPackages.subscribeClients request.' 
 )) 
 parser 
 . 
 add_argument 
 ( 
 '-c' 
 , 
 '--client_ids' 
 , 
 nargs 
 = 
 '*' 
 , 
 help 
 = 
 ( 
 'The resource IDs of the buyers.clients resources that are to ' 
 'be subscribed to the auction package. Specify each client ID ' 
 'separated by a space.' 
 )) 
 main 
 ( 
 service 
 , 
 parser 
 . 
 parse_args 
 ()) 
Create a Mobile Website
View Site in Mobile | Classic
Share by: