Thanks heaps for chasing that up for me Eric

On Dec 12, 5:40 am, AdWords API Advisor <adwordsapiadvi...@google.com>
wrote:
> Hi Fred,
>
> Currently all UNEXPECTED_INTERNAL_API_ERRORs are classified as server
> side errors, even if the root cause was bad user input.
>
> Best,
> - Eric
>
> On Dec 2, 12:14 pm, AdWords API Advisor <adwordsapiadvi...@google.com>
> wrote:
>
>
>
> > Hi Fred,
>
> > The inconsistent reporting of API units and operations for this error
> > is another important issue, and I've brought it to the attention of
> > the core engineering team.  I will take a deeper look into how units
> > are charge for UNEXPECTED_INTERNAL_API_ERRORs and get back to you.
>
> > Best,
> > - Eric
>
> > On Dec 1, 6:37 pm, fred <dec...@decideinteractive.com> wrote:
>
> > > Thanks for following this up Eric. I will make sure we account for
> > > quota on faults to.
> > > When you say "where the error was due to a problem on Google's
> > > servers" does that mean whenever the error is internal error?
>
> > > In the example I posted (reported as 787 quota) it was reported as an
> > > INTERNAL_API_ERROR, but was due to me deliberately using a bad adgroup
> > > ID. Is this considered a server error or input error? i.e. Would this
> > > be charged or not?
> > > Interstingly most of the time it was only 1 quota, but when I added a
> > > few more 0's to the invalid adgroup id it gave the 787
>
> > > On Dec 2, 3:53 am, AdWords API Advisor <adwordsapiadvi...@google.com>
> > > wrote:
>
> > > > Hi Fred,
>
> > > > Thank you for the follow up information.  The API units reported in
> > > > the SOAP header are billed to your account, even if the request
> > > > resulted in an error.  In cases where the error was due to a problem
> > > > on Google's servers and not user input the units will not be charged
> > > > to your account.
>
> > > > Because of the cost associated with errors, we recommend using the new
> > > > validateOnly header to check your request for errors before you
> > > > actually run them.  A blog post on this header will be published later
> > > > this week.
>
> > > > Best,
> > > > - Eric
>
> > > > On Nov 30, 7:27 pm, fred <dec...@decideinteractive.com> wrote:
>
> > > > > I assume you want the SOAP from the delete call which had the dodgy
> > > > > operations header. Unfortunately I did not save the XML last week, but
> > > > > was getting that behaviour consistently on Friday (Thursday evening in
> > > > > the US)
> > > > > This week I am unable to reproduce this issue. When deleting keywords
> > > > > with an invalid adgroup ID it still gives an INTERNAL ERROR but now
> > > > > returns a response with headers of 1 operation and one 1 unit. Most of
> > > > > the time. On one occasion I did get a very different operation/unit
> > > > > count (but still only 1 unit per operation). The SOAP is below.
>
> > > > > I will keep an eye on it, and will save the XML if I do get the issue
> > > > > again. If you wanted other SOAP (e.g. the 15 quota per invalid keyword
> > > > > in an Add operation) then I can still reproduce that.
>
> > > > > Do we actually get charged the quota reported in the headers of SOAP
> > > > > Faults?
>
> > > > > 1201-112153 W P4PGoogle.pm/2241 ERROR REQUEST:
> > > > > POSThttps://adwords.google.com/api/adwords/cm/v200909/AdGroupCriterionSer...
> > > > > HTTP/1.1
> > > > > Accept: text/xml
> > > > > Accept: multipart/*
> > > > > Content-Length: 2032
> > > > > Content-Type: text/xml; charset=utf-8
> > > > > SOAPAction: "https://adwords.google.com/api/adwords/cm/v200909#mutate";
>
> > > > > <?xml version="1.0" encoding="UTF-8"?>
> > > > > <SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-
> > > > > instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/";
> > > > > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/";
> > > > > xmlns:xsd="http://www.w3.org/2001/XMLSchema"; SOAP-
> > > > > ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";>
> > > > > <SOAP-ENV:Header>
> > > > > <RequestHeader xmlns="https://adwords.google.com/api/adwords/cm/
> > > > > v200909" SOAP-ENC:arrayType="xsd:string[4]">
> > > > > <authToken xsi:type="xsd:string">something1</authToken>
> > > > > <useragent xsi:type="xsd:string">something2</useragent>
> > > > > <developerToken xsi:type="xsd:string">something3</developerToken>
> > > > > <applicationToken xsi:type="xsd:string">something4</applicationToken>
> > > > > </RequestHeader>
> > > > > </SOAP-ENV:Header>
> > > > > <SOAP-ENV:Body>
> > > > > <mutate xmlns="https://adwords.google.com/api/adwords/cm/v200909";>
> > > > > <operations>
> > > > > <operator>REMOVE</operator>
> > > > > <operand xsi:type="BiddableAdGroupCriterion">
> > > > > <bids xsi:type="ManualCPCAdGroupCriterionBids" SOAP-
> > > > > ENC:arrayType="xsd:anyType[1]">
> > > > > <maxCpc>
> > > > > <amount>
> > > > > <microAmount xsi:nil="true"/>
> > > > > </amount>
> > > > > </maxCpc>
> > > > > </bids>
> > > > > <adGroupId>36907795200000</adGroupId>
> > > > > <userStatus xsi:nil="true"/>
> > > > > <criterion xsi:type="Keyword">
> > > > > <text xsi:nil="true"/>
> > > > > <id>14899356282</id>
> > > > > <matchType>BROAD</matchType>
> > > > > </criterion>
> > > > > <destinationUrl xsi:nil="true"/>
> > > > > </operand>
> > > > > </operations>
> > > > > <operations>
> > > > > <operator>REMOVE</operator>
> > > > > <operand xsi:type="BiddableAdGroupCriterion">
> > > > > <bids xsi:type="ManualCPCAdGroupCriterionBids" SOAP-
> > > > > ENC:arrayType="xsd:anyType[1]">
> > > > > <maxCpc>
> > > > > <amount>
> > > > > <microAmount xsi:nil="true"/>
> > > > > </amount>
> > > > > </maxCpc>
> > > > > </bids>
> > > > > <adGroupId>36907795200000</adGroupId>
> > > > > <userStatus xsi:nil="true"/>
> > > > > <criterion xsi:type="Keyword">
> > > > > <text xsi:nil="true"/>
> > > > > <id>14899572282</id>
> > > > > <matchType>BROAD</matchType>
> > > > > </criterion>
> > > > > <destinationUrl xsi:nil="true"/>
> > > > > </operand>
> > > > > </operations>
> > > > > </mutate>
> > > > > </SOAP-ENV:Body>
> > > > > </SOAP-ENV:Envelope>
>
> > > > > 1201-112153 W P4PGoogle.pm/2243 ERROR RESPONSE:
> > > > > HTTP/1.1 200 OK
> > > > > Cache-Control: private, max-age=0
> > > > > Connection: close
> > > > > Date: Tue, 01 Dec 2009 00:21:53 GMT
> > > > > Server: GFE/2.0
> > > > > Content-Type: text/xml; charset=UTF-8
> > > > > Expires: Tue, 01 Dec 2009 00:21:53 GMT
> > > > > Client-Date: Tue, 01 Dec 2009 00:21:53 GMT
> > > > > Client-Response-Num: 1
> > > > > Client-SSL-Cert-Issuer: /C=US/O=Equifax/OU=Equifax Secure Certificate
> > > > > Authority
> > > > > Client-SSL-Cert-Subject: /C=US/ST=California/L=Mountain View/O=Google
> > > > > Inc./CN=adwords.google.com
> > > > > Client-SSL-Cipher: AES256-SHA
> > > > > Client-SSL-Warning: Peer certificate not verified
> > > > > Client-Transfer-Encoding: chunked
> > > > > X-Content-Type-Options: nosniff
> > > > > X-Frame-Options: SAMEORIGIN
> > > > > X-XSS-Protection: 0
>
> > > > > <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";>
> > > > > <soap:Header>
> > > > > <ResponseHeader xmlns="https://adwords.google.com/api/adwords/cm/
> > > > > v200909">
> > > > > <requestId>5e72e19c21b7d51ee7e7304b27770e16</requestId>
> > > > > <operations>787</operations>
> > > > > <responseTime>172</responseTime>
> > > > > <units>787</units>
> > > > > </ResponseHeader>
> > > > > </soap:Header>
> > > > > <soap:Body>
> > > > > <soap:Fault>
> > > > > <faultcode>soap:Server</faultcode>
> > > > > <faultstring>InternalApiError.UNEXPECTED_INTERNAL_API_ERROR @ </
> > > > > faultstring>
> > > > > <detail>
> > > > > <ApiExceptionFault xmlns="https://adwords.google.com/api/adwords/cm/
> > > > > v200909">
> > > > > <message>InternalApiError.UNEXPECTED_INTERNAL_API_ERROR @ </message>
> > > > > <ApplicationException.Type>ApiException</ApplicationException.Type>
> > > > > <errors xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> > > > > xsi:type="InternalApiError">
> > > > > <fieldPath>
> > > > > </fieldPath>
> > > > > <trigger>
> > > > > </trigger>
> > > > > <ApiError.Type>InternalApiError</ApiError.Type>
> > > > > <reason>UNEXPECTED_INTERNAL_API_ERROR</reason>
> > > > > </errors>
> > > > > </ApiExceptionFault>
> > > > > </detail>
> > > > > </soap:Fault>
> > > > > </soap:Body>
> > > > > </soap:Envelope>
>
> > > > > On Dec 1, 5:43 am, AdWords API Advisor <adwordsapiadvi...@google.com>
> > > > > wrote:
>
> > > > > > Hi Fred,
>
> > > > > > Do you have the SOAP XML request and response that shows this
> > > > > > behavior?  The request ID would also suffice.
>
> > > > > > Best,
> > > > > > - Eric Koleda, AdWords API Team
>
> > > > > > On Nov 27, 12:45 am, fred <dec...@decideinteractive.com> wrote:
>
> > > > > > > Hello,
> > > > > > > While developing our client for the v2009 API I have been doing 
> > > > > > > some
> > > > > > > error condition tests.
> > > > > > > I have noticed that the 'operations' and 'units' headers come back
> > > > > > > even when requests fail.
>
> > > > > > > Some times this looks like its properly calculated. e.g. If the 
> > > > > > > error
> > > > > > > is in a mutate call which adds keywords then the 'operations' 
> > > > > > > matches
> > > > > > > the number of keyword objects which had the error, and the units 
> > > > > > > is 15
> > > > > > > per operation. So when I submit a mutate to add 5 keywords but 2 
> > > > > > > are
> > > > > > > missing match types, then it says that 30 units were used.
>
> > > > > > > But some times it looks completely random. e.g. I submit a mutate 
> > > > > > > call
> > > > > > > which deletes 3 keywords each with the same invalid adgroup id, 
> > > > > > > then
> > > > > > > the error is INTERNAL ERROR and I get different values for
> > > > > > > 'operations' and 'units'. Once was 22/330, another was 14/210. So 
> > > > > > > 15
> > > > > > > units per operataion, but operation count is just crud.
>
> > > > > > > So my main question is:
> > > > > > > - Are the quota 'units' reported in the header of a SOAP::Fault
> > > > > > > actually charged to our account?
>
> > > > > > > And if so, what about the buggy looking situations as shown in my
> > > > > > > second example?- Hide quoted text -
>
> > > > > > - Show quoted text -- Hide quoted text -
>
> > > > - Show quoted text -- Hide quoted text -
>
> - Show quoted text -

--

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-...@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.


Reply via email to