Hi, Yes, I get standard SOAP fault containing QuotaExceededError and the reason QUOTA_EXCEEDED.
As I said we need to synchronize many adgroups/ads/criterions. To do that we need to download data from AdWords, make some modifications and then upload modifications to the AdWords. We have made component that is responsible for downloading/uploading data from/to AdWords. To do such job component has some download/ upload strategy. (Strategy 1) Before, the strategy was (this is for download, it's similar for upload): 1. Download all campaigns, all adgroups, all criterions, all ads. 2. Build model from downloaded data. This approach was too expensive (because we need only adgroups from certain campaigns, we don't need deleted objects - some selectors don't support selecting by status, for example AdGroupSelector - http://code.google.com/apis/adwords/v2009/docs/reference/AdGroupService.AdGroupSelector.html) so we have modified that to (Strategy 2) : 1. Download all campaigns. 2. Download all AdGroups (from campaigns that we want). 3. Download all Criterions and Ads from AdGroups (from adgroups that we want) - in single call. 4. Build model. This was ok for small accounts, but for account with more criterions, this wasn't good strategy. If account had too many criterions -> one call took too much time -> connection was closed before we finished with the call. In upload, if one criterion failed -> all criterions failed. (Strategy 3) Now we have the following strategy: 1. Download all campaigns. 2. Download all AdGroups (from campaigns that we want). 3. Download all Criterions and Ads from AdGroups (from adgroups that we want) - one call for each adgroup. 4. Build model. The following strategy is not good when account has too many adgroups, because we make too many calls (that's the reason for Qouta Exceeded). Now I make little delay between two calls (75 milliseconds) and that solves the problem with Quota Exceeded error, but I'm not satisfied with that. In final release I'll probably make solution that combines strategy 2 and 3, something like: 1. Download all campaigns. 2. Download all AdGroups (from campaigns that we want). 3. Download all Criterions and Ads from AdGroups (from adgroups that we want) - one call for multiple adgroup. 4. Build model. To make optimized strategy I need to know how many calls can I do in step 3 (x per minute)? Do you have some suggestion? Regards, -- Josip GemBox.Ppc - www.GemBoxSoftware.com/Ppc/Overview.htm - Advanced AdWords API for C# / VB.NET On Apr 6, 4:41 pm, AdWords API Advisor <[email protected]> wrote: > Hi Rick, > > When you trigger this error you'll receive a standard SOAP fault, > containing a QuotaExceededError and the reason QUOTA_EXCEEDED. > > http://code.google.com/apis/adwords/v2009/docs/reference/CampaignServ... > > Best, > - Eric > > On Apr 5, 12:58 pm, Rick <[email protected]> wrote: > > > In order to handle this quota message programatically, can you give us > > an example of what the QUOTA_EXCEEDED produces? Is it a 500 error, or > > something else? > > > Can you tell us if the quota is per Developer Token, per IP, or what? > > > Rick > > > On Apr 5, 7:33 am, AdWords API Advisor <[email protected]> > > wrote: > > > > Hi Josip, > > > > TO address your questions: > > > > 1) The exact limits of the AdWords API are not made public, but if you > > > receive a QUOTA_EXCEEDED then we recommend you wait 30 seconds and try > > > your request again. > > > > 2) Documentation on campaign size limits is available > > > here:http://adwords.google.com/support/aw/bin/answer.py?hl=en&answer=40907 > > > > 3) Do you have the request ids of some requests that demonstrate this > > > difference in time? > > > > Best, > > > - Eric Koleda, AdWords API Team > > > > On Apr 2, 8:22 am, JosipK <[email protected]> wrote: > > > > > Hi, > > > > > We are developing some component that would synchronize our database > > > > with AdWords platform. We have test it against sandbox and now against > > > > real AdWords account and it's all working for small data (few > > > > thousands adgroups/criterions/ads). > > > > > But when we include larger set of data (15 campaigns * 900 adgroups * > > > > (2 criterions + 1 ad)), sometimes we get > > > > QuotaExceededError.QUOTA_EXCEEDED (You have exceeded the quota in the > > > > following categories : RequestsPerMinute. Please retry your request > > > > after 30 seconds.) error. > > > > > Also, when we have made more calls (like two/three synchronizations > > > > per day), then we have experienced some slowdown. Call (actually API > > > > calls) that before last 5 minute, now last 10 or more minutes. > > > > > My questions are: > > > > 1. What are the limits of AdWords platform? How many calls can I call > > > > per minute/hour/day? > > > > 2. Is there some document that describes those limits? I know that > > > > account can have 25 campaigns, ..., but what with other limits? > > > > 3. Why we experience slowdown? > > > > > Regards, > > > > Josip -- =~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~ Have you migrated to v200909 yet? The v13 sunset is on April 22, 2010. Also find us on our blog and discussion group: http://adwordsapi.blogspot.com http://groups.google.com/group/adwords-api =~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~ You received this message because you are subscribed to the Google Groups "AdWords API Forum" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/adwords-api?hl=en To unsubscribe, reply using "remove me" as the subject.
