Hi Ivan,

As for your last statement, I want to clarify that you want to have the 
> option to send a single operation for adding or removing of extensions to 
> multiple ad groups wherein you can specify an array of ad groups and array 
> of extensions in a single operation?


Yes. I want to be able to perform bulk changes synchronously like AdWords 
UI.

While working with the Extension Setting Services, I also found some 
inconveniences. Please correct me if I am wrong here.

For example, if I want to update an extension feed item -- it would have to 
be set in either Customer, Campaign or Ad Group because I can only access 
them in their respective ExtensionSettings. *If I want to update them and 
they are not set within these entities*, I would have to use Feed Services. 
It wouldn't be so much of a problem if I can use the concrete feed items 
like CalloutFeedItem 
<https://developers.google.com/adwords/api/docs/reference/v201702/CustomerExtensionSettingService.CalloutFeedItem>
 like 
in the rest of my application, but in Feed Services, I must first convert 
them to FeedItem 
<https://developers.google.com/adwords/api/docs/reference/v201702/FeedItemService.FeedItem>.
 
The conversion process is particularly difficult as it requires that I 
retrieve the Feed 
<https://developers.google.com/adwords/api/docs/reference/v201702/FeedService.Feed>
 
and FeedMapping 
<https://developers.google.com/adwords/api/docs/reference/v201702/FeedMappingService.FeedMapping>
 
and use the placeholder Ids 
<https://developers.google.com/adwords/api/docs/appendix/placeholders>. 
Then, manually set each attribute.

The same is true for getting the list of available extensions. In AdWords 
UI, the list of available extensions in the *add panel* are on the left. I 
have replicated the UI in my app. In order to get the list of available 
extensions, I can also only use Feed Services. Whereas setting/adding them 
into Customer, Campaign or Ad Group, I can use Extension Setting Services. 
So I had to convert them here as well.

Optimally, I would like to be able to update and get a list of extension 
feed items in their concrete form. e.g. CalloutFeedItem SitelinkFeedItem 
and so on.

Expanding on retrieving the Feed to do the above: I would need to know 
which feed to retrieve in the first place. There's no explicit way to know 
which feeds contains the callouts and so on. I found out that AdWords UI 
places the callouts in a feed named "Main callout feed" so I am selecting 
using the feed name in the get operation. As this is not documented, I 
imagine it can be changed at anytime without notice and thus breaking my 
application.

Can you please feedback the above to the team as well?


On Tuesday, 21 March 2017 14:49:11 UTC+8, Ivan Bautista wrote:
>
> Hi JC,
>
> Yes, validation of your extensions should be done separately from removal 
> of extensions. However, for adding of extensions, you might not need to 
> validate because the ADD and SET operator for 
> AdGroupExtensionSettingService.mutate() 
> <https://developers.google.com/adwords/api/docs/reference/v201702/AdGroupExtensionSettingService#mutate>
>  are 
> treated identically so if you try to ADD an existing extension, it will 
> just be treated as a SET operation.
>
> As for your last statement, I want to clarify that you want to have the 
> option to send a single operation for adding or removing of extensions to 
> multiple ad groups wherein you can specify an array of ad groups and array 
> of extensions in a single operation? I will try to raise this to the team 
> but I can't guarantee that it will be added to future release.
>
> However, you may try to achieve similar behavior by:
>
>    1. Getting the list of ad groups
>    2. Traversing through each ad group and validate existing extensions 
>    (validation could possibly be for REMOVE operation only)
>    3. Perform multiple separate REMOVE or ADD operation of extensions to 
>    each ad group
>
> The decision to do Step 3 synchronously via AdGroupExtensionSettingService 
> or asynchronously via BatchJobService or your own mechanism depends on your 
> design. In addition, here's a guide 
> <https://developers.google.com/adwords/api/docs/guides/extension-settings> in 
> managing ad extensions via Extension Setting Services.
>
> Regards,
> Ivan
> AdWords API Team
>

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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.
Visit this group at https://groups.google.com/group/adwords-api.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/adwords-api/d4b4924f-9456-4871-823d-d3c5637dd5c0%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to