[
{
'operand': {
'adGroupId': 68069102381,
'extensionType': 'SITELINK',
'extensionSetting': {
'extensions': [
{
'xsi_type': 'SitelinkFeedItem',
'sitelinkText': '008642-74-86 really long field to make all the things fail',
'sitelinkLine2': '008642-74-86 really long field to make all the things fail',
'sitelinkLine3': 'stuff',
'sitelinkFinalUrls': {'urls': ['https://channable.com']},
}
]
},
},
'operator': 'ADD',
'xsi_type': 'AdGroupExtensionSettingOperation',
},
{
'operand': {
'ad': {
'id': -2,
'path1': '',
'path2': '',
'xsi_type': 'ExpandedTextAd',
'finalUrls': 'https://channable.com',
'description': 'd1',
'description2': 'd2',
'headlinePart1': 'h1',
'headlinePart2': 'h2',
'headlinePart3': 'h3',
},
'status': 'ENABLED',
'xsi_type': 'AdGroupAd',
'adGroupId': 68069102381,
},
'operator': 'ADD',
'xsi_type': 'AdGroupAdOperation',
},
]
1488888306
[OrderedDict([('errorList',
OrderedDict([('errors',
[OrderedDict([('@xmlns:xsi',
'http://www.w3.org/2001/XMLSchema-instance'),
('@xsi:type', 'StringLengthError'),
('fieldPath',
'operations[0].operand.extensionSetting.extensions[0].sitelinkText'),
('fieldPathElements',
[OrderedDict([('field',
'operations'),
('index', '0')]),
OrderedDict([('field',
'operand')]),
OrderedDict([('field',
'extensionSetting')]),
OrderedDict([('field',
'extensions'),
('index', '0')]),
OrderedDict([('field',
'sitelinkText')])]),
('trigger', None),
('errorString',
'StringLengthError.TOO_LONG'),
('ApiError.Type',
'StringLengthError'),
('reason', 'TOO_LONG')]),
OrderedDict([('@xmlns:xsi',
'http://www.w3.org/2001/XMLSchema-instance'),
('@xsi:type', 'StringLengthError'),
('fieldPath',
'operations[0].operand.extensionSetting.extensions[0].sitelinkLine2'),
('fieldPathElements',
[OrderedDict([('field',
'operations'),
('index', '0')]),
OrderedDict([('field',
'operand')]),
OrderedDict([('field',
'extensionSetting')]),
OrderedDict([('field',
'extensions'),
('index', '0')]),
OrderedDict([('field',
'sitelinkLine2')])]),
('trigger', None),
('errorString',
'StringLengthError.TOO_LONG'),
('ApiError.Type',
'StringLengthError'),
('reason', 'TOO_LONG')])])])),
('index', '0')]),
OrderedDict([('errorList',
OrderedDict([('errors',
[OrderedDict([('@xmlns:xsi',
'http://www.w3.org/2001/XMLSchema-instance'),
('@xsi:type', 'StringLengthError'),
('fieldPath',
'operations[1].operand.extensionSetting.extensions[0].sitelinkLine2'),
('fieldPathElements',
[OrderedDict([('field',
'operations'),
('index', '1')]),
OrderedDict([('field',
'operand')]),
OrderedDict([('field',
'extensionSetting')]),
OrderedDict([('field',
'extensions'),
('index', '0')]),
OrderedDict([('field',
'sitelinkLine2')])]),
('trigger', None),
('errorString',
'StringLengthError.TOO_LONG'),
('ApiError.Type',
'StringLengthError'),
('reason', 'TOO_LONG')]),
OrderedDict([('@xmlns:xsi',
'http://www.w3.org/2001/XMLSchema-instance'),
('@xsi:type', 'StringLengthError'),
('fieldPath',
'operations[1].operand.extensionSetting.extensions[0].sitelinkText'),
('fieldPathElements',
[OrderedDict([('field',
'operations'),
('index', '1')]),
OrderedDict([('field',
'operand')]),
OrderedDict([('field',
'extensionSetting')]),
OrderedDict([('field',
'extensions'),
('index', '0')]),
OrderedDict([('field',
'sitelinkText')])]),
('trigger', None),
('errorString',
'StringLengthError.TOO_LONG'),
('ApiError.Type',
'StringLengthError'),
('reason', 'TOO_LONG')])])])),
('index', '1')])]
I see that you are performingAdGroupExtensionSettingOperation and AdGroupAdOperation which should be performed with 2 different services AdGroupExtensionSettingService and AdGroupAdService. In such two API calls should be done.
batch job id = 1501998529
[2019-06-07 07:44:14,029 - googleads.soap - INFO] Request made: Service: "BatchJobService" Method: "mutate" URL: "https://adwords.google.com/api/adwords/cm/v201809/BatchJobService"
[2019-06-07 07:44:14,029 - googleads.soap - DEBUG] Outgoing request: {'SOAPAction': '""', 'Content-Type': 'text/xml; charset=utf-8', 'authorization': 'REDACTED'}
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Header>
<ns0:RequestHeader xmlns:ns0="https://adwords.google.com/api/adwords/cm/v201809">
<ns0:clientCustomerId>2740564982</ns0:clientCustomerId>
<ns0:developerToken>REDACTED</ns0:developerToken>
<ns0:userAgent>channable (AwApi-Python, googleads/18.1.0, Python/3.6.7, zeep)</ns0:userAgent>
<ns0:validateOnly>false</ns0:validateOnly>
<ns0:partialFailure>true</ns0:partialFailure>
</ns0:RequestHeader>
</soap-env:Header>
<soap-env:Body>
<ns0:mutate xmlns:ns0="https://adwords.google.com/api/adwords/cm/v201809">
<ns0:operations>
<ns0:operator>ADD</ns0:operator>
<ns0:operand/>
</ns0:operations>
</ns0:mutate>
</soap-env:Body>
</soap-env:Envelope>
[2019-06-07 07:44:14,830 - googleads.soap - DEBUG] Incoming response:
b'<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">\n <soap:Header>\n <ResponseHeader xmlns="https://adwords.google.com/api/adwords/cm/v201809">\n <requestId>00058ab55218d2cc02ab424a590ca754</requestId>\n <serviceName>BatchJobService</serviceName>\n <methodName>mutate</methodName>\n <operations>1</operations>\n <responseTime>146</responseTime>\n </ResponseHeader>\n </soap:Header>\n <soap:Body>\n <mutateResponse xmlns="https://adwords.google.com/api/adwords/cm/v201809">\n <rval>\n <ListReturnValue.Type>BatchJobReturnValue</ListReturnValue.Type>\n <value>\n <id>1501998529</id>\n <status>AWAITING_FILE</status>\n <uploadUrl>\n <url>https://batch-job-upload-prod-ebe9b43.storage.googleapis.com/311377146/1501998529.operations.xml?GoogleAccessId=926043054183-rbu1gkdus...@developer.gserviceaccount.com&Expires=1560491054&Signature=n%2Fwk7W%2BUEs73lc3ne2YEmQDw1U8wlUHkHzPMj%2F6RRaiEHJ8AUSpPcuW9rY%2FjyFoYELxOlMGcyrLR8cwzNI%2BLL4AsOKCN01VnQe7V1NGD0axVhyY596%2FFNfqY2bW5xmivb9G7DrI7lO0MeuscmgiocDLKtiaahubfc2c%2FN%2B9Ah7w1Blq%2FyTB0xvI%2F1tA4Opx%2BvZjP7uPgwslq%2Fn1lMq2qodsi9FUO9fiHI2cFjKzdL8j28%2BV8iYgoRgT8hHzglubDX31hiiMHYfrR9odhmq%2BThYnziojPcCSE6uZrSkGBVoAyfQoAeL9ksz0MGj3VfRGaiglwF%2BAz9H0fTt5WFT7Dbw%3D%3D</url>\n <expiration>20190614 074414 Europe/Amsterdam</expiration>\n </uploadUrl>\n <diskUsageQuotaBalance>1048576</diskUsageQuotaBalance>\n </value>\n </rval>\n </mutateResponse>\n </soap:Body>\n</soap:Envelope>\n'
[2019-06-07 07:44:15,871 - googleads.soap - INFO] Request made: Service: "AdGroupExtensionSettingService" Method: "mutate" URL: "https://adwords.google.com/api/adwords/cm/v201809/AdGroupExtensionSettingService"
[2019-06-07 07:44:15,871 - googleads.soap - DEBUG] Outgoing request: {'SOAPAction': '""', 'Content-Type': 'text/xml; charset=utf-8', 'authorization': 'REDACTED'}
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Header>
<ns0:RequestHeader xmlns:ns0="https://adwords.google.com/api/adwords/cm/v201809">
<ns0:clientCustomerId>2740564982</ns0:clientCustomerId>
<ns0:developerToken>REDACTED</ns0:developerToken>
<ns0:userAgent>channable (AwApi-Python, googleads/18.1.0, Python/3.6.7, BatchJobHelper)</ns0:userAgent>
<ns0:validateOnly>false</ns0:validateOnly>
<ns0:partialFailure>true</ns0:partialFailure>
</ns0:RequestHeader>
</soap-env:Header>
<soap-env:Body>
<ns0:mutate xmlns:ns0="https://adwords.google.com/api/adwords/cm/v201809">
<ns0:operations>
<ns0:operator>ADD</ns0:operator>
<ns0:Operation.Type>AdGroupExtensionSettingOperation</ns0:Operation.Type>
<ns0:operand>
<ns0:adGroupId>68069102381</ns0:adGroupId>
<ns0:extensionType>SITELINK</ns0:extensionType>
<ns0:extensionSetting>
<ns0:extensions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns0:SitelinkFeedItem">
<ns0:ExtensionFeedItem.Type>SitelinkFeedItem</ns0:ExtensionFeedItem.Type>
<ns0:sitelinkText>008642-74-86 really long field to make all the things fail</ns0:sitelinkText>
<ns0:sitelinkLine2>008642-74-86 really long field to make all the things fail</ns0:sitelinkLine2>
<ns0:sitelinkLine3>stuff</ns0:sitelinkLine3>
<ns0:sitelinkFinalUrls>
<ns0:urls>https://channable.com</ns0:urls>
</ns0:sitelinkFinalUrls>
</ns0:extensions>
</ns0:extensionSetting>
</ns0:operand>
</ns0:operations>
</ns0:mutate>
</soap-env:Body>
</soap-env:Envelope>
[2019-06-07 07:44:16,776 - googleads.soap - INFO] Request made: Service: "AdGroupAdService" Method: "mutate" URL: "https://adwords.google.com/api/adwords/cm/v201809/AdGroupAdService"
[2019-06-07 07:44:16,776 - googleads.soap - DEBUG] Outgoing request: {'SOAPAction': '""', 'Content-Type': 'text/xml; charset=utf-8', 'authorization': 'REDACTED'}
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Header>
<ns0:RequestHeader xmlns:ns0="https://adwords.google.com/api/adwords/cm/v201809">
<ns0:clientCustomerId>2740564982</ns0:clientCustomerId>
<ns0:developerToken>REDACTED</ns0:developerToken>
<ns0:userAgent>channable (AwApi-Python, googleads/18.1.0, Python/3.6.7)</ns0:userAgent>
<ns0:validateOnly>false</ns0:validateOnly>
<ns0:partialFailure>true</ns0:partialFailure>
</ns0:RequestHeader>
</soap-env:Header>
<soap-env:Body>
<ns0:mutate xmlns:ns0="https://adwords.google.com/api/adwords/cm/v201809">
<ns0:operations>
<ns0:operator>ADD</ns0:operator>
<ns0:Operation.Type>AdGroupAdOperation</ns0:Operation.Type>
<ns0:operand>
<ns0:adGroupId>68069102381</ns0:adGroupId>
<ns0:ad xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns0:ExpandedTextAd">
<ns0:id>-2</ns0:id>
<ns0:finalUrls>https://channable.com</ns0:finalUrls>
<ns0:Ad.Type>ExpandedTextAd</ns0:Ad.Type>
<ns0:headlinePart1>h1</ns0:headlinePart1>
<ns0:headlinePart2>h2</ns0:headlinePart2>
<ns0:headlinePart3>h3</ns0:headlinePart3>
<ns0:description>d1</ns0:description>
<ns0:description2>d2</ns0:description2>
<ns0:path1></ns0:path1>
<ns0:path2></ns0:path2>
</ns0:ad>
<ns0:status>ENABLED</ns0:status>
</ns0:operand>
</ns0:operations>
</ns0:mutate>
</soap-env:Body>
</soap-env:Envelope>
[2019-06-07 07:44:17,167 - googleads.adwords.batch_job_helper - INFO] Request summary: {'server': 'https://batch-job-upload-prod-ebe9b43.storage.googleapis.com/311377146/1501998529.operations.xml?GoogleAccessId=926043054183-rbu1gkdus...@developer.gserviceaccount.com&Expires=1560491054&Signature=n%2Fwk7W%2BUEs73lc3ne2YEmQDw1U8wlUHkHzPMj%2F6RRaiEHJ8AUSpPcuW9rY%2FjyFoYELxOlMGcyrLR8cwzNI%2BLL4AsOKCN01VnQe7V1NGD0axVhyY596%2FFNfqY2bW5xmivb9G7DrI7lO0MeuscmgiocDLKtiaahubfc2c%2FN%2B9Ah7w1Blq%2FyTB0xvI%2F1tA4Opx%2BvZjP7uPgwslq%2Fn1lMq2qodsi9FUO9fiHI2cFjKzdL8j28%2BV8iYgoRgT8hHzglubDX31hiiMHYfrR9odhmq%2BThYnziojPcCSE6uZrSkGBVoAyfQoAeL9ksz0MGj3VfRGaiglwF%2BAz9H0fTt5WFT7Dbw%3D%3D&upload_id=AEnB2UpoohtYaOJsVCr53yx3yBbyyPH6MvqNwmFlz-Sq7Djj7fDNwNlIWE7B5H4zhFtDxzQ6nv8g8gQQxNKl7d1iuquUcWbroBDV-YP5XHdFikuhLH6vNuA', 'contentRange': 'bytes 0-262143/262144', 'contentLength': 262144, 'isError': False}
<ns0:partialFailure>true</ns0:partialFailure>