Hi Alex, I remember when the idea of having SET and ADD do the same operation <https://developers.google.com/adwords/api/docs/guides/extension-settings#adding_ad_extensions> came into being, so I can shed some light on it. From a coding perspective, people found it cumbersome to have to have to do a get() to see if something already existed before deciding if they needed to do a *SET* versus an *ADD*. That was an extra operation, and when you're doing a lot of these, it adds up. It was easier for people just to do a *SET* no matter what. The API could then figure out for them if it needed to be an *ADD* or not. There were fewer calls to the API, and it made the performance of people's applications that run against the API better as a result.
Batch processing does allow for you to create an object earlier in the job, and then mutate it in some way later on in the job. It does rely on that ID. Now, we do recommend against doing that in our Best Practices <https://developers.google.com/adwords/api/docs/guides/batch-jobs#best_practices>. The reason we recommend against doing that is because of performance and also that we don't guarantee the order of all the operations. That means some of those mutates() of the newly created object may happen in a different order than you would expect. I hope that clears it up for you! Best, Nadine, AdWords API Team On Thursday, March 2, 2017 at 10:05:54 AM UTC-5, Vishal Vinayak (Adwords API Team) wrote: > > Hi Alex, > > Thanks for confirming. To your question, you can use either ADD or SET to > add > <https://developers.google.com/adwords/api/docs/guides/extension-settings#adding_ad_extensions> > / update > <https://developers.google.com/adwords/api/docs/guides/extension-settings#update_ad_extensions> > extensions. > I can check with my team and let you know more on the purpose of their > existence as two operators (and not one) and why the batch job behaves the > way it does. Myself or somebody from my team will get back to you soon. > > Regards, > Vishal, 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/39d40508-b555-4f2b-ba2b-a4fd28f2a879%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.