BatchJobProcessingError.FILE_FORMAT_ERROR : upload labels

27 views
Skip to first unread message

FW API

unread,
Aug 27, 2019, 8:18:41 AM8/27/19
to AdWords API and Google Ads API Forum
Hi.

I wanted to copy some contents to a new account via BatchJob. This is the request and response that was sent and received:

***********
2019-08-27 13:37:08,600 DEBUG RemoteCallLoggerDelegate:
***********
SOAP request:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header>
<ns1:RequestHeader xmlns:ns1="https://adwords.google.com/api/adwords/cm/v201809" soapenv:mustUnderstand="0">
<ns1:clientCustomerId>5266062897</ns1:clientCustomerId>
<ns1:developerToken>REDACTED</ns1:developerToken>
<ns1:userAgent>FW (AwApi-Java, AdWords-Axis/4.1.0, Common-Java/4.1.0, Axis/1.4, Java/1.8.0_181, maven, SelectorBuilder)</ns1:userAgent>
<ns1:validateOnly>false</ns1:validateOnly>
<ns1:partialFailure>false</ns1:partialFailure>
</ns1:RequestHeader>
</soapenv:Header>
<soapenv:Body>
<mutate xmlns="https://adwords.google.com/api/adwords/cm/v201809">
<operations>
<operator>ADD</operator>
<operand/>
</operations>
</mutate>
</soapenv:Body>
</soapenv:Envelope>

***********
2019-08-27 13:37:08,600 DEBUG RemoteCallLoggerDelegate:
***********
SOAP response:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<ResponseHeader xmlns="https://adwords.google.com/api/adwords/cm/v201809">
<requestId>00059117b14620a90a3706d80f0b4de9</requestId>
<serviceName>BatchJobService</serviceName>
<methodName>mutate</methodName>
<operations>1</operations>
<responseTime>553</responseTime>
</ResponseHeader>
</soap:Header>
<soap:Body>
<mutateResponse xmlns="https://adwords.google.com/api/adwords/cm/v201809">
<rval>
<ListReturnValue.Type>BatchJobReturnValue</ListReturnValue.Type>
<value>
<id>1833476001</id>
<status>AWAITING_FILE</status>
<uploadUrl>
<url>https://batch-job-upload-prod-ebe9b43.storage.googleapis.com/333014115/1833476001.operations.xml?GoogleAccessId=926043054183-rbu1gkdus...@developer.gserviceaccount.com&amp;Expires=1567510628&amp;Signature=FymzSc2KGSZYFm9v44%2FSDcquEFwA4PDBZ51tiNfQKZUrQU01lqtpRBwLVz2tRkjwsV3rkjvVGo%2Ff1REz3gbL3eNmDmhg4kLoKnW%2F56MWgaeBVYVqrokRD4thU6%2BRECrO2M11PiiKTpK%2FfOzisgOKuLKDtF79qXRnHXKFwog%2FW5wcu%2BqEK5Wsq4qQ%2BtwDIoodVDbpJuZ9M%2Fv4dWt9nTMmAK4nbcL7s%2F%2FVRZOJjNZGEQ3nReNl%2BxD2tyoxQqbQvliZYM10thzSN60QmCsncQh%2BObJk%2Bk3V5oZM7v58ifW6iXKU940JPh625bPC8WxpKYjsSEd8DQqtiDk%2B8h%2F7l6bUuw%3D%3D</url>
<expiration>20190903 133708 Europe/Berlin</expiration>
</uploadUrl>
<diskUsageQuotaBalance>1048376</diskUsageQuotaBalance>
</value>
</rval>
</mutateResponse>
</soap:Body>
</soap:Envelope>

The mutate request contains a single operation with operator ADD and an empty operand, which I find weird. The objects to upload were a bunch of labels. I have followed the serialization process of the client library in the debugger. The following request was generated before sending:

<ns3:mutate xmlns:ns0="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://www.w3.org/2001/XMLSchema" xmlns:ns2="http://xml.apache.org/xml-soap" xmlns:ns3="https://adwords.google.com/api/adwords/cm/v201809">
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3621957329</id>
   <name xsi:type="ns1:string">Modul - NFZ</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3621957332</id>
   <name xsi:type="ns1:string">Gebotsstrategie</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3621957335</id>
   <name xsi:type="ns1:string">Modul - Aftersale</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3621957338</id>
   <name xsi:type="ns1:string">Modul - E</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3621957341</id>
   <name xsi:type="ns1:string">Modul - F</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3621957344</id>
   <name xsi:type="ns1:string">Modul - V</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3621957347</id>
   <name xsi:type="ns1:string">Modul - G</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3622010339</id>
   <name xsi:type="ns1:string">Effektiver 0,63 &#x20AC; CPC</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3623370042</id>
   <name xsi:type="ns1:string">Fallback</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3624189416</id>
   <name xsi:type="ns1:string">Abo</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3644277271</id>
   <name xsi:type="ns1:string">I - allg. AZG aktiv</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3644277274</id>
   <name xsi:type="ns1:string">II - beschleunigt</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3644277277</id>
   <name xsi:type="ns1:string">III - 40km Umkreis</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3674818538</id>
   <name xsi:type="ns1:string">N allgemein</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3674818541</id>
   <name xsi:type="ns1:string">effektiver 0,63 &#x20AC; CPC</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3674818544</id>
   <name xsi:type="ns1:string">Alte Anzeige</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3679923455</id>
   <name xsi:type="ns1:string">IIII - Konkurrenzliste entfernt</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3680403962</id>
   <name xsi:type="ns1:string">l&#xE4;uft aktuell nicht</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3710089373</id>
   <name xsi:type="ns1:string">IIIII - Zielregionenma&#xDF;nahme</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3832641913</id>
   <name xsi:type="ns1:string">effektiver 0,76 &#x20AC; CPC</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3832641916</id>
   <name xsi:type="ns1:string">effektiver 0,90 &#x20AC; CPC</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
 <operations xsi:type="ns3:LabelOperation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <operator xsi:type="ns3:Operator">ADD</operator>
  <operand xsi:type="ns3:TextLabel">
   <id xsi:type="ns1:long">-3840985099</id>
   <name xsi:type="ns1:string">Wechsel in Monatsbuchung Juni 2019</name>
   <status xsi:type="ns3:Label.Status">ENABLED</status>
   <Label.Type xsi:type="ns1:string">TextLabel</Label.Type>
  </operand>
 </operations>
</ns3:mutate>

Upon requesting the BatchJob result, it noted a processing error FILE_FORMAT_ERROR:

***********
2019-08-27 13:37:40,257 DEBUG RemoteCallLoggerDelegate:
***********
SOAP request:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header>
<ns1:RequestHeader xmlns:ns1="https://adwords.google.com/api/adwords/cm/v201809" soapenv:mustUnderstand="0">
<ns1:clientCustomerId>5266062897</ns1:clientCustomerId>
<ns1:developerToken>REDACTED</ns1:developerToken>
<ns1:userAgent>Finnwaa API (AwApi-Java, AdWords-Axis/4.1.0, Common-Java/4.1.0, Axis/1.4, Java/1.8.0_181, maven, BatchJobHelper, SelectorBuilder, SelectorField)</ns1:userAgent>
<ns1:validateOnly>false</ns1:validateOnly>
<ns1:partialFailure>false</ns1:partialFailure>
</ns1:RequestHeader>
</soapenv:Header>
<soapenv:Body>
<get xmlns="https://adwords.google.com/api/adwords/cm/v201809">
<selector>
<fields>DownloadUrl</fields>
<fields>Id</fields>
<fields>ProcessingErrors</fields>
<fields>ProgressStats</fields>
<fields>Status</fields>
<predicates>
<field>Id</field>
<operator>EQUALS</operator>
<values>1833476001</values>
</predicates>
<paging>
<numberResults>100</numberResults>
</paging>
</selector>
</get>
</soapenv:Body>
</soapenv:Envelope>

***********
2019-08-27 13:37:40,257 DEBUG RemoteCallLoggerDelegate:
***********
SOAP response:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<ResponseHeader xmlns="https://adwords.google.com/api/adwords/cm/v201809">
<requestId>00059117b33013c00a37aec30c0fbf97</requestId>
<serviceName>BatchJobService</serviceName>
<methodName>get</methodName>
<operations>1</operations>
<responseTime>91</responseTime>
</ResponseHeader>
</soap:Header>
<soap:Body>
<getResponse xmlns="https://adwords.google.com/api/adwords/cm/v201809">
<rval>
<totalNumEntries>1</totalNumEntries>
<Page.Type>BatchJobPage</Page.Type>
<entries>
<id>1833476001</id>
<status>CANCELED</status>
<progressStats>
<numOperationsExecuted>0</numOperationsExecuted>
<numOperationsSucceeded>0</numOperationsSucceeded>
<estimatedPercentExecuted>0</estimatedPercentExecuted>
<numResultsWritten>0</numResultsWritten>
</progressStats>
<downloadUrl>
<url>https://batch-job-download-prod-ebe9b43.storage.googleapis.com/333014115/1833476001.results.xml?GoogleAccessId=926043054183-rbu1gkdus...@developer.gserviceaccount.com&amp;Expires=1569497837&amp;Signature=gkdNEcZr3bCHnGXCU2MSfeC3yrrzExv5nEffVA3TBA3Zp43pTLdkkCibVGx583we7%2Fj34%2FMijXEUc2TkRYjOHtoQVx%2BcrwObACrDxTFSRF4nA3yZmHNl79%2F2aN5GwWMJaifFFwbvIqNyVoIOSrfW5AzTH%2F7aEt8hWWvOoDX4IOs0blSD1bsbS5EA8AD%2F6b6EkVJ91GRj3WloPHdkGUX%2FmqhdB2%2BRzQ5ZrXHDPI0AVYDqVaMkMwfgHOJXPZIxvw9PLXEAag%2FwBYLHbpup8k8xPMlbycHVB9W4Mvk%2Fy4fPKqTNHrbrAYlxhQIe%2B7dXILJ4g633x2exOSEuyipkFIUuaA%3D%3D</url>
<expiration>20190926 133717 Europe/Berlin</expiration>
</downloadUrl>
<processingErrors>
<fieldPath/>
<trigger/>
<errorString>BatchJobProcessingError.FILE_FORMAT_ERROR</errorString>
<ApiError.Type>BatchJobProcessingError</ApiError.Type>
<reason>FILE_FORMAT_ERROR</reason>
</processingErrors>
</entries>
</rval>
</getResponse>
</soap:Body>
</soap:Envelope>

Google Ads API Forum Advisor Prod

unread,
Aug 28, 2019, 2:57:42 AM8/28/19
to adwor...@googlegroups.com
Hi,

Upon checking the SOAP logs you provided, you were including LabelOperation which is not supported for batch processing. This could be the reason why you are encountering the error. Please see this guide for the list of supported operations in the BatchJobService.

If you are creating new labels, you need to create these separately via LabelService.mutate(), and the operation should not be included in the BatchJobService. 

Regards,
Dannison
Google Ads API Team

ref:_00D1U1174p._5001UHEn5H:ref
Reply all
Reply to author
Forward
0 new messages