/** Creates text ads that use ad customizations for the specified ad group IDs. */ private static void createAdsWithCustomizations( AdWordsServices adWordsServices, AdWordsSession session, List<Long> adGroupIds, String feedName) throws Exception { // Get the AdGroupAdService. AdGroupAdServiceInterface adGroupAdService = adWordsServices.get(session, AdGroupAdServiceInterface.class); TextAd textAd = new TextAd(); textAd.setHeadline(String.format("Luxury Cruise to {=%s.Name}", feedName)); textAd.setDescription1(String.format("Only {=%s.Price}", feedName)); textAd.setDescription2(String.format("Offer ends in {=countdown(%s.Date)}!", feedName)); textAd.setFinalUrls(new String[] {"http://www.example.com"}); textAd.setDisplayUrl("www.example.com"); // We add the same ad to both ad groups. When they serve, they will show different values, since // they match different feed items. List<AdGroupAdOperation> adGroupAdOperations = Lists.newArrayList(); for (Long adGroupId : adGroupIds) { AdGroupAd adGroupAd = new AdGroupAd(); adGroupAd.setAdGroupId(adGroupId); adGroupAd.setAd(textAd); AdGroupAdOperation adGroupAdOperation = new AdGroupAdOperation(); adGroupAdOperation.setOperand(adGroupAd); adGroupAdOperation.setOperator(Operator.ADD); adGroupAdOperations.add(adGroupAdOperation); } AdGroupAdReturnValue adGroupAdReturnValue = adGroupAdService.mutate( adGroupAdOperations.toArray(new AdGroupAdOperation[adGroupAdOperations.size()])); for (AdGroupAd addedAd : adGroupAdReturnValue.getValue()) { System.out.printf( "Created an ad with ID %d, type '%s' and status '%s'.%n", addedAd.getAd().getId(), addedAd.getAd().getAdType(), addedAd.getStatus()); } }
public static void runExample( AdWordsServices adWordsServices, AdWordsSession session, Long adGroupId, Long adId) throws Exception { // Get the AdGroupAdService. AdGroupAdServiceInterface adGroupAdService = adWordsServices.get(session, AdGroupAdServiceInterface.class); // Create ad with updated status. Ad ad = new Ad(); ad.setId(adId); AdGroupAd adGroupAd = new AdGroupAd(); adGroupAd.setAdGroupId(adGroupId); adGroupAd.setAd(ad); adGroupAd.setStatus(AdGroupAdStatus.PAUSED); // Create operations. AdGroupAdOperation operation = new AdGroupAdOperation(); operation.setOperand(adGroupAd); operation.setOperator(Operator.SET); AdGroupAdOperation[] operations = new AdGroupAdOperation[] {operation}; // Update ad. AdGroupAdReturnValue result = adGroupAdService.mutate(operations); // Display ads. for (AdGroupAd adGroupAdResult : result.getValue()) { System.out.println( "Ad with id \"" + adGroupAdResult.getAd().getId() + "\", type \"" + adGroupAdResult.getAd().getAdType() + "\", and status \"" + adGroupAdResult.getStatus() + "\" was updated."); } }