Hello Dzmitry,

This campaign (ID 187185795) is indeed set up correctly for Display. But in 
the "Add vertical request" you are specifying an ad group that is not under 
this campaign. Please make sure to create the ad group under a proper 
campaign.


-Danial, AdWords API Team.


On Monday, July 14, 2014 5:10:59 PM UTC+4, Dzmitry Zahusta wrote:
>
> Yes, I believe that it should be so - but unfortunately I'm definitely 
> creating Display campaign:
>
> <advertisingChannelType>DISPLAY</advertisingChannelType>
>
> I put all requests and responses on google drive 
> <https://drive.google.com/folderview?id=0B0jKauxDjfI5ZnVNdDRrZE5saU0&usp=sharing>
>  so 
> it can be checked 
>
> понедельник, 14 июля 2014 г., 15:56:55 UTC+3 пользователь Danial Klimkin 
> написал:
>>
>> Hello Dzmitry,
>>
>>
>> Based on the documentation, "Use verticals to target or exclude 
>> placements in the Google Display Network based on the category into which 
>> the placement falls".
>>
>>   
>> https://developers.google.com/adwords/api/docs/reference/v201406/AdGroupCriterionService.Vertical
>>
>> The campaign you are trying to target is a search-only campaign, so this 
>> type of targeting is not applicable.
>>
>>
>> -Danial, AdWords API Team.
>>
>>
>> On Saturday, July 12, 2014 3:01:19 PM UTC+4, Dzmitry Zahusta wrote:
>>>
>>> For example - 187185795
>>>
>>> Also provide all the significant requests and responses here 
>>> <https://drive.google.com/folderview?id=0B0jKauxDjfI5ZnVNdDRrZE5saU0&usp=sharing>
>>> :
>>>
>>> пятница, 11 июля 2014 г., 21:53:26 UTC+3 пользователь Josh Radcliff 
>>> (AdWords API Team) написал:
>>>
>>>> Hi,
>>>>
>>>> I just looked through all of the failed AdGroupCriterionService calls I 
>>>> could find from today and in every case, the related campaign was either 
>>>> *Search 
>>>> Network only* or *Search Network with Display Select*. Could you 
>>>> provide the campaign ID and ad group ID to which you were trying to add 
>>>> the 
>>>> *Vertical* criterion?
>>>>
>>>> Thanks,
>>>> Josh, AdWords API Team
>>>>
>>>> On Friday, July 11, 2014 10:38:17 AM UTC-4, Dzmitry Zahusta wrote:
>>>>>
>>>>> Hi!
>>>>>
>>>>> But actually my campaign is already DISPLAY campaign and I'm not using 
>>>>> existing one:
>>>>>
>>>>>         // Create campaign.
>>>>>         Campaign campaign = new Campaign();
>>>>>         ....
>>>>>         
>>>>> campaign.setAdvertisingChannelType(AdvertisingChannelType.DISPLAY);
>>>>>         ....
>>>>>         // Add campaign.
>>>>>         CampaignReturnValue result = 
>>>>> campaignService.mutate(operations);
>>>>>         ....
>>>>>         createAdGroup(result.getValue(0).getId());
>>>>>         ....
>>>>>
>>>>> And only than the part of code that we discussed:
>>>>>         ....
>>>>>         / Execute mutate request.
>>>>>         AdGroupCriterionReturnValue result = 
>>>>> adGroupCriterionService.mutate(operations);
>>>>>
>>>>> пятница, 11 июля 2014 г., 17:12:45 UTC+3 пользователь Josh Radcliff 
>>>>> (AdWords API Team) написал:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> Yes, sorry - typo on my part.
>>>>>>
>>>>>> The error you are now getting is due to the fact that *Vertical* 
>>>>>> criteria 
>>>>>> apply to *Display Campaigns*, but on *Search with Display Select* 
>>>>>> (search+) 
>>>>>> campaigns, AdWords manages all aspects of the Display side of the 
>>>>>> campaign 
>>>>>> for you. See the following AdWords Help Center article for more details.
>>>>>>
>>>>>> https://support.google.com/adwords/answer/3437721?hl=en
>>>>>>
>>>>>> You may find our recent blog post on Search with Display Select 
>>>>>> campaigns 
>>>>>> <http://googleadsdeveloper.blogspot.com/2014/05/update-creating-snds-campaigns-in.html>
>>>>>>  helpful 
>>>>>> as well.
>>>>>>
>>>>>> If you want finer-grained control over how your ads serve on the 
>>>>>> Display Network, then I'd recommend:
>>>>>>
>>>>>> 1. Set Campaign.networkSetting.targetContentNetwork 
>>>>>> <https://developers.google.com/adwords/api/docs/reference/v201406/CampaignService.NetworkSetting>
>>>>>>  to 
>>>>>> false on your existing campaign.
>>>>>> 2. Create a new campaign with Campaign.advertisingChannelType 
>>>>>> <https://developers.google.com/adwords/api/docs/reference/v201406/CampaignService.Campaign#advertisingChannelType>
>>>>>>  set 
>>>>>> to DISPLAY. This will be a Display Network-only campaign that you can 
>>>>>> set 
>>>>>> up as you see fit.
>>>>>>
>>>>>> Best regards,
>>>>>> Josh, AdWords API Team
>>>>>>
>>>>>> On Friday, July 11, 2014 9:01:15 AM UTC-4, Dzmitry Zahusta wrote:
>>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> Seems that you mean BiddableAdGroupCriterion:
>>>>>>>
>>>>>>>         Vertical interest = new Vertical();
>>>>>>>         interest.setPath(new String[] {"Autos & Vehicles"});
>>>>>>>         interest.setVerticalId(47L);
>>>>>>>
>>>>>>>         BiddableAdGroupCriterion criterion = new 
>>>>>>> BiddableAdGroupCriterion();
>>>>>>>
>>>>>>>         criterion.setAdGroupId(adGroupId);
>>>>>>>         criterion.setCriterion(interest);
>>>>>>>
>>>>>>>         AdGroupCriterionOperation operation = new 
>>>>>>> AdGroupCriterionOperation();
>>>>>>>         operation.setOperand(criterion);
>>>>>>>         operation.setOperator(Operator.ADD);
>>>>>>>
>>>>>>> With this code I get different 
>>>>>>> error: CriterionError.CANNOT_ADD_CRITERION_TO_SEARCH_PLUS_CAMPAIGNS
>>>>>>>
>>>>>>> пятница, 11 июля 2014 г., 0:24:34 UTC+3 пользователь Josh Radcliff 
>>>>>>> (AdWords API Team) написал:
>>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> The CONCRETE_TYPE_REQUIRED error occurred because you created an 
>>>>>>>> instance of the base class AdGroupCriterion, but the API expects one 
>>>>>>>> of the 
>>>>>>>> concrete implementations (BiddableAdGroupCriterion 
>>>>>>>> or NegativeAdGroupCriterion). If you change your example from:
>>>>>>>>
>>>>>>>> AdGroupCriterionOperation operation = new 
>>>>>>>> AdGroupCriterionOperation();
>>>>>>>>         operation.setOperand(criterion);
>>>>>>>>         operation.setOperator(operator);
>>>>>>>>
>>>>>>>> to:
>>>>>>>>
>>>>>>>> BiddableAdGroupCriterionOperation operation = new 
>>>>>>>> AdGroupCriterionOperation();
>>>>>>>>         operation.setOperand(criterion);
>>>>>>>>         operation.setOperator(operator);
>>>>>>>>
>>>>>>>> then the ADD should succeed.
>>>>>>>>
>>>>>>>> Cheers,
>>>>>>>> Josh, AdWords API Team
>>>>>>>>
>>>>>>>> On Thursday, July 10, 2014 10:13:28 AM UTC-4, Dzmitry Zahusta wrote:
>>>>>>>>>
>>>>>>>>> Version of pom - 1.29.1, API - v201402, and I'm not using jaxws
>>>>>>>>>
>>>>>>>>> четверг, 10 июля 2014 г., 0:50:50 UTC+3 пользователь Josh Radcliff 
>>>>>>>>> (AdWords API Team) написал:
>>>>>>>>>>
>>>>>>>>>> Hi,
>>>>>>>>>>
>>>>>>>>>> Are you using jaxws by any chance? If so, this may be the same 
>>>>>>>>>> issue identified recently in github 20:
>>>>>>>>>>
>>>>>>>>>> https://github.com/googleads/googleads-java-lib/issues/20
>>>>>>>>>>
>>>>>>>>>> Also, could you let me know which *version* (v201309, v201402, 
>>>>>>>>>> or v201406) of the API you are using?
>>>>>>>>>>
>>>>>>>>>> Thanks,
>>>>>>>>>> Josh, AdWords API Team
>>>>>>>>>>
>>>>>>>>>> On Tuesday, July 8, 2014 10:23:03 AM UTC-4, Dzmitry Zahusta wrote:
>>>>>>>>>>>
>>>>>>>>>>> Would you be so kind to show your code? Because mine is not 
>>>>>>>>>>> working - I'm always getting CONCRETE_TYPE_REQUIRED error.
>>>>>>>>>>>
>>>>>>>>>>>         Vertical interest = new Vertical();
>>>>>>>>>>>         interest.setVerticalId(1252L);
>>>>>>>>>>>
>>>>>>>>>>>         AdGroupCriterion criterion = new AdGroupCriterion();
>>>>>>>>>>>
>>>>>>>>>>>         criterion.setAdGroupId(adGroupId);
>>>>>>>>>>>         criterion.setCriterion(interest);
>>>>>>>>>>>
>>>>>>>>>>>         AdGroupCriterionOperation operation = new 
>>>>>>>>>>> AdGroupCriterionOperation();
>>>>>>>>>>>         operation.setOperand(criterion);
>>>>>>>>>>>         operation.setOperator(operator);
>>>>>>>>>>>
>>>>>>>>>>>         AdGroupCriterionOperation[] operations = new 
>>>>>>>>>>> AdGroupCriterionOperation[] { operation };
>>>>>>>>>>>
>>>>>>>>>>>         // Execute mutate request.
>>>>>>>>>>>         AdGroupCriterionReturnValue result = 
>>>>>>>>>>> adGroupCriterionService.mutate(operations);
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> пятница, 24 января 2014 г., 17:42:16 UTC+3 пользователь Josh 
>>>>>>>>>>> Radcliff (AdWords API Team) написал:
>>>>>>>>>>>>
>>>>>>>>>>>> Hi,
>>>>>>>>>>>>
>>>>>>>>>>>> Are you using one of our client libraries 
>>>>>>>>>>>> <https://developers.google.com/adwords/api/docs/clientlibraries> 
>>>>>>>>>>>> or are you generating the SOAP requests manually?  I just ran a 
>>>>>>>>>>>> check with 
>>>>>>>>>>>> the Java client library and was able to add a Vertical with 
>>>>>>>>>>>> verticalId 1252 
>>>>>>>>>>>> to an ad group without any issues.  One possibility is that in the 
>>>>>>>>>>>> XML 
>>>>>>>>>>>> you're generating the *xsi:type* for the *Vertical* is set to 
>>>>>>>>>>>> *Criterion*, since the CONCRETE_TYPE_REQUIRED error is thrown 
>>>>>>>>>>>> when the type of the Criterion is the base (abstract) superclass 
>>>>>>>>>>>> Criterion. 
>>>>>>>>>>>>  The client library will take care of this for you automatically, 
>>>>>>>>>>>> but if 
>>>>>>>>>>>> you're generating the requests manually you'll have to set the 
>>>>>>>>>>>> type 
>>>>>>>>>>>> yourself.
>>>>>>>>>>>>
>>>>>>>>>>>> If that's not the source of the problem, could you post the 
>>>>>>>>>>>> request XML you are submitting?  Please make sure you remove any 
>>>>>>>>>>>> sensitive 
>>>>>>>>>>>> information such as clientId, clientSecret, refreshToken, etc.
>>>>>>>>>>>>
>>>>>>>>>>>> Thanks,
>>>>>>>>>>>> Josh, AdWords API Team
>>>>>>>>>>>>
>>>>>>>>>>>> On Friday, January 24, 2014 7:37:03 AM UTC-5, Andrew Ambrosio 
>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>> I noticed that we are using both Vertical.VerticalId and 
>>>>>>>>>>>>> Vertical.Id, thanks for pointing that out.
>>>>>>>>>>>>>
>>>>>>>>>>>>> I got a different error now. CONCRETE_TYPE_REQUIRED
>>>>>>>>>>>>>
>>>>>>>>>>>>> I am using "statistics" as vertical for this test. I give 1252 
>>>>>>>>>>>>> as VerticalId.
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Wednesday, January 22, 2014 2:50:21 AM UTC+8, Josh Radcliff 
>>>>>>>>>>>>> (AdWords API Team) wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Hi,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Could you confirm that you are passing Vertical.VerticalId 
>>>>>>>>>>>>>> <https://developers.google.com/adwords/api/docs/reference/v201309/AdGroupCriterionService.Vertical#verticalId>,
>>>>>>>>>>>>>>  
>>>>>>>>>>>>>> and *not *Vertical.Id 
>>>>>>>>>>>>>> <https://developers.google.com/adwords/api/docs/reference/v201309/AdGroupCriterionService.Vertical#id>?
>>>>>>>>>>>>>>  
>>>>>>>>>>>>>>  The former should be set to the vertical ID from the list of 
>>>>>>>>>>>>>> available 
>>>>>>>>>>>>>> verticals.  The latter is automatically generated by AdWords 
>>>>>>>>>>>>>> when you 
>>>>>>>>>>>>>> create a new Vertical and should not be set in your mutate + ADD 
>>>>>>>>>>>>>> request.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> If that's not the issue, please pass along the vertical ID 
>>>>>>>>>>>>>> you are trying to use and I will attempt the same request on my 
>>>>>>>>>>>>>> side.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Cheers,
>>>>>>>>>>>>>> Josh, AdWords API Team
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Friday, January 17, 2014 2:17:06 AM UTC-5, Andrew Ambrosio 
>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> I am trying to add a Vertical on an Ad Group using 
>>>>>>>>>>>>>>> AdGroupCriterionService.Mutate. As I give the Vertical.Id based 
>>>>>>>>>>>>>>> on the CSV provided 
>>>>>>>>>>>>>>> <https://developers.google.com/adwords/api/docs/appendix/verticals>by
>>>>>>>>>>>>>>>  
>>>>>>>>>>>>>>> AdWords. I got EntityNotFound.INVALID_ID on Partial Error.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Can you guys assist me on using Vertical on Ad Groups?
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
Also find us on our blog and Google+:
https://googleadsdeveloper.blogspot.com/
https://plus.google.com/+GoogleAdsDevelopers/posts
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~

You received this message because you are subscribed to the Google
Groups "AdWords API Forum" group.
To post to this group, send email to adwords-api@googlegroups.com
To unsubscribe from this group, send email to
adwords-api+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/adwords-api?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"AdWords API Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to adwords-api+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to