Hello! Firstly, I want to point that in link which you left in your response there is a banner which says: "*Note:* You can use either the ADD or SET operator here, since the two operators are equivalent in extension setting services." And I did try with SET operation but result was the same... So issue is not about ADD or SET, I believe...
About different feed_item_id ... that is my bad, because I copied wrong extension item. New attach where you can see the same flow. Thanks for helping! On Thursday, October 1, 2020 at 3:47:04 PM UTC+3 adsapiforumadvisor wrote: > Hi Roman, > > I am not sure if you already got the chance to check the dedicated guide > just yet but there is a section > <https://developers.google.com/adwords/api/docs/guides/extension-settings#update_ad_extensions> > > about how to update ad extensions that could help. > > I took a look at the requests you provided and wanted to clarify a few > things about the second request: > > - The ADD operator is used instead of SET > - The feed item ID is not the same as the one returned by the first > request > > > Thanks, > Pierrick - Google Ads API Team > > ref:_00D1U1174p._5004Q25Y07u:ref > -- -- =~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~ Also find us on our blog: https://googleadsdeveloper.blogspot.com/ =~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~ You received this message because you are subscribed to the Google Groups "AdWords API and Google Ads 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 --- You received this message because you are subscribed to the Google Groups "AdWords API and Google Ads API Forum" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/adwords-api/239728b6-8901-4711-98f0-4f118cec938bn%40googlegroups.com.
service | Request made: Service: "CampaignExtensionSettingService" Method: "mutate" URL: "https://adwords.google.com/api/adwords/cm/v201809/CampaignExtensionSettingService" service | Outgoing request: {'SOAPAction': '""', 'Content-Type': 'text/xml; charset=utf-8', 'authorization': 'REDACTED'} service | <soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/"> service | <soap-env:Header> service | <ns0:RequestHeader xmlns:ns0="https://adwords.google.com/api/adwords/cm/v201809"> service | <ns0:clientCustomerId>712-689-1293</ns0:clientCustomerId> service | <ns0:developerToken>REDACTED</ns0:developerToken> service | <ns0:userAgent>712-689-1293 (AwApi-Python, googleads/17.0.0, Python/3.7.7, zeep)</ns0:userAgent> service | <ns0:validateOnly>false</ns0:validateOnly> service | <ns0:partialFailure>true</ns0:partialFailure> service | </ns0:RequestHeader> service | </soap-env:Header> service | <soap-env:Body> service | <ns0:mutate xmlns:ns0="https://adwords.google.com/api/adwords/cm/v201809"> service | <ns0:operations> service | <ns0:operator>ADD</ns0:operator> service | <ns0:operand> service | <ns0:campaignId>2065194675</ns0:campaignId> service | <ns0:extensionType>PROMOTION</ns0:extensionType> service | <ns0:extensionSetting> service | <ns0:extensions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns0:PromotionFeedItem"> service | <ns0:startTime>00000101 000000</ns0:startTime> service | <ns0:endTime>00000101 000000</ns0:endTime> service | <ns0:devicePreference/> service | <ns0:scheduling/> service | <ns0:promotionTarget>Shoes1</ns0:promotionTarget> service | <ns0:discountModifier>UP_TO</ns0:discountModifier> service | <ns0:percentOff>99990000</ns0:percentOff> service | <ns0:promotionCode>WEAR_ME</ns0:promotionCode> service | <ns0:promotionStart>20200913 000000</ns0:promotionStart> service | <ns0:promotionEnd>20200920 000000</ns0:promotionEnd> service | <ns0:occasion>FALL_SALE</ns0:occasion> service | <ns0:finalUrls> service | <ns0:urls>https://www.example1.com/foo</ns0:urls> service | </ns0:finalUrls> service | <ns0:finalMobileUrls/> service | <ns0:trackingUrlTemplate></ns0:trackingUrlTemplate> service | <ns0:finalUrlSuffix></ns0:finalUrlSuffix> service | <ns0:promotionUrlCustomParameters> service | <ns0:doReplace>true</ns0:doReplace> service | </ns0:promotionUrlCustomParameters> service | <ns0:language>uk</ns0:language> service | </ns0:extensions> service | </ns0:extensionSetting> service | </ns0:operand> service | </ns0:operations> service | </ns0:mutate> service | </soap-env:Body> service | </soap-env:Envelope> service | service | Incoming response: service | 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>0005b0ad14a46c440a371192cc03b20a</requestId>\n <serviceName>CampaignExtensionSettingService</serviceName>\n <methodName>mutate</methodName>\n <operations>2</operations>\n <responseTime>351</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>CampaignExtensionSettingReturnValue</ListReturnValue.Type>\n <value>\n <campaignId>2065194675</campaignId>\n <extensionType>PROMOTION</extensionType>\n <extensionSetting>\n <extensions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="PromotionFeedItem">\n <feedId>202191712</feedId>\n <feedItemId>139907160795</feedItemId>\n <status>ENABLED</status>\n <feedType>PROMOTION</feedType>\n <ExtensionFeedItem.Type>PromotionFeedItem</ExtensionFeedItem.Type>\n <promotionTarget>Shoes1</promotionTarget>\n <discountModifier>UP_TO</discountModifier>\n <percentOff>99990000</percentOff>\n <promotionCode>WEAR_ME</promotionCode>\n <promotionStart>20200913 000000 null</promotionStart>\n <promotionEnd>20200920 000000 null</promotionEnd>\n <occasion>FALL_SALE</occasion>\n <finalUrls>\n <urls>https://www.example1.com/foo</urls>\n </finalUrls>\n <language>uk</language>\n </extensions>\n <platformRestrictions>NONE</platformRestrictions>\n </extensionSetting>\n </value>\n </rval>\n </mutateResponse>\n </soap:Body>\n</soap:Envelope>\n' service | service | service | service | [{'operator': 'ADD', 'operand': {'campaignId': '2065194675', 'extensionType': 'PROMOTION', 'extensionSetting': {'extensions': [{'feedId': None, 'feedItemId': None, 'xsi_type': 'PromotionFeedItem', 'promotionTarget': 'Shoes1', 'discountModifier': 'UP_TO', 'percentOff': 99990000, 'moneyAmountOff': None, 'promotionCode': 'WEAR_ME', 'ordersOverAmount': None, 'promotionStart': '20200913 000000', 'promotionEnd': '20200920 000000', 'occasion': 'FALL_SALE', 'language': 'uk', 'finalUrls': {'urls': ['https://www.example1.com/foo']}, 'trackingUrlTemplate': '', 'finalUrlSuffix': '', 'finalMobileUrls': [], 'promotionUrlCustomParameters': {'doReplace': True, 'parameters': []}, 'startTime': '00000101 000000', 'endTime': '00000101 000000', 'devicePreference': {}, 'scheduling': {'feedItemSchedules': []}}]}}}] service | service | {'Success: ': { service | 'campaignId': 2065194675, service | 'extensionType': 'PROMOTION', service | 'extensionSetting': { service | 'extensions': [ service | { service | 'feedId': 202191712, service | 'feedItemId': 139907160795, service | 'status': 'ENABLED', service | 'feedType': 'PROMOTION', service | 'startTime': None, service | 'endTime': None, service | 'devicePreference': None, service | 'scheduling': None, service | 'campaignTargeting': None, service | 'adGroupTargeting': None, service | 'keywordTargeting': None, service | 'geoTargeting': None, service | 'geoTargetingRestriction': None, service | 'policySummaries': [], service | 'ExtensionFeedItem.Type': 'PromotionFeedItem', service | 'promotionTarget': 'Shoes1', service | 'discountModifier': 'UP_TO', service | 'percentOff': 99990000, service | 'moneyAmountOff': None, service | 'promotionCode': 'WEAR_ME', service | 'ordersOverAmount': None, service | 'promotionStart': '20200913 000000 null', service | 'promotionEnd': '20200920 000000 null', service | 'occasion': 'FALL_SALE', service | 'finalUrls': { service | 'urls': [ service | 'https://www.example1.com/foo' service | ] service | }, service | 'finalMobileUrls': None, service | 'trackingUrlTemplate': None, service | 'finalUrlSuffix': None, service | 'promotionUrlCustomParameters': None, service | 'language': 'uk' service | } service | ], service | 'platformRestrictions': 'NONE' service | } service | }} service | {'Error': []} service | [02/Oct/2020 09:51:46] "POST /api/adwords/v1/adwords-campaigns/3999/extensions/promotion/ HTTP/1.1" 201 13 service | Request made: Service: "CampaignExtensionSettingService" Method: "mutate" URL: "https://adwords.google.com/api/adwords/cm/v201809/CampaignExtensionSettingService" service | Outgoing request: {'SOAPAction': '""', 'Content-Type': 'text/xml; charset=utf-8', 'authorization': 'REDACTED'} service | <soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/"> service | <soap-env:Header> service | <ns0:RequestHeader xmlns:ns0="https://adwords.google.com/api/adwords/cm/v201809"> service | <ns0:clientCustomerId>712-689-1293</ns0:clientCustomerId> service | <ns0:developerToken>REDACTED</ns0:developerToken> service | <ns0:userAgent>712-689-1293 (AwApi-Python, googleads/17.0.0, Python/3.7.7, zeep)</ns0:userAgent> service | <ns0:validateOnly>false</ns0:validateOnly> service | <ns0:partialFailure>true</ns0:partialFailure> service | </ns0:RequestHeader> service | </soap-env:Header> service | <soap-env:Body> service | <ns0:mutate xmlns:ns0="https://adwords.google.com/api/adwords/cm/v201809"> service | <ns0:operations> service | <ns0:operator>SET</ns0:operator> service | <ns0:operand> service | <ns0:campaignId>2065194675</ns0:campaignId> service | <ns0:extensionType>PROMOTION</ns0:extensionType> service | <ns0:extensionSetting> service | <ns0:extensions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns0:PromotionFeedItem"> service | <ns0:feedId>202191712</ns0:feedId> service | <ns0:feedItemId>139907160795</ns0:feedItemId> service | <ns0:startTime>00000101 000000</ns0:startTime> service | <ns0:endTime>00000101 000000</ns0:endTime> service | <ns0:devicePreference/> service | <ns0:scheduling/> service | <ns0:promotionTarget>Shoes1</ns0:promotionTarget> service | <ns0:discountModifier>UP_TO</ns0:discountModifier> service | <ns0:moneyAmountOff> service | <ns0:money> service | <ns0:microAmount>1010000</ns0:microAmount> service | </ns0:money> service | <ns0:currencyCode>USD</ns0:currencyCode> service | </ns0:moneyAmountOff> service | <ns0:promotionCode>WEAR_ME</ns0:promotionCode> service | <ns0:promotionStart>20200913 000000</ns0:promotionStart> service | <ns0:promotionEnd>20200920 000000</ns0:promotionEnd> service | <ns0:occasion>FALL_SALE</ns0:occasion> service | <ns0:finalUrls> service | <ns0:urls>https://www.example1.com/foo</ns0:urls> service | </ns0:finalUrls> service | <ns0:finalMobileUrls/> service | <ns0:trackingUrlTemplate></ns0:trackingUrlTemplate> service | <ns0:finalUrlSuffix></ns0:finalUrlSuffix> service | <ns0:promotionUrlCustomParameters> service | <ns0:doReplace>true</ns0:doReplace> service | </ns0:promotionUrlCustomParameters> service | <ns0:language>uk</ns0:language> service | </ns0:extensions> service | </ns0:extensionSetting> service | </ns0:operand> service | </ns0:operations> service | </ns0:mutate> service | </soap-env:Body> service | </soap-env:Envelope> service | service | Incoming response: service | 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>0005b0ad1910903a0a37020ef406caa7</requestId>\n <serviceName>CampaignExtensionSettingService</serviceName>\n <methodName>mutate</methodName>\n <operations>2</operations>\n <responseTime>493</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>CampaignExtensionSettingReturnValue</ListReturnValue.Type>\n <value/>\n <partialFailureErrors xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ExtensionSettingError">\n <fieldPath>operations[0].operand.extensionSetting.extensions[0].moneyAmountOff</fieldPath>\n <fieldPathElements>\n <field>operations</field>\n <index>0</index>\n </fieldPathElements>\n <fieldPathElements>\n <field>operand</field>\n </fieldPathElements>\n <fieldPathElements>\n <field>extensionSetting</field>\n </fieldPathElements>\n <fieldPathElements>\n <field>extensions</field>\n <index>0</index>\n </fieldPathElements>\n <fieldPathElements>\n <field>moneyAmountOff</field>\n </fieldPathElements>\n <trigger/>\n <errorString>ExtensionSettingError.PROMOTION_CANNOT_SET_PERCENT_OFF_AND_MONEY_AMOUNT_OFF</errorString>\n <ApiError.Type>ExtensionSettingError</ApiError.Type>\n <reason>PROMOTION_CANNOT_SET_PERCENT_OFF_AND_MONEY_AMOUNT_OFF</reason>\n </partialFailureErrors>\n </rval>\n </mutateResponse>\n </soap:Body>\n</soap:Envelope>\n' service | service | service | service | [{'operator': 'SET', 'operand': {'campaignId': '2065194675', 'extensionType': 'PROMOTION', 'extensionSetting': {'extensions': [{'feedId': 202191712, 'feedItemId': 139907160795, 'xsi_type': 'PromotionFeedItem', 'promotionTarget': 'Shoes1', 'discountModifier': 'UP_TO', 'percentOff': None, 'moneyAmountOff': {'money': {'microAmount': 1010000}, 'currencyCode': 'USD'}, 'promotionCode': 'WEAR_ME', 'ordersOverAmount': None, 'promotionStart': '20200913 000000', 'promotionEnd': '20200920 000000', 'occasion': 'FALL_SALE', 'language': 'uk', 'finalUrls': {'urls': ['https://www.example1.com/foo']}, 'trackingUrlTemplate': '', 'finalUrlSuffix': '', 'finalMobileUrls': [], 'promotionUrlCustomParameters': {'doReplace': True, 'parameters': []}, 'startTime': '00000101 000000', 'endTime': '00000101 000000', 'devicePreference': {}, 'scheduling': {'feedItemSchedules': []}}]}}}] service | service | {'Success: ': None} service | {'Error': [{'ad_groups': None, service | 'campaigns': None, service | 'currency': 'USD', service | 'currency_symbol': '$', service | 'custom_parameters': [], service | 'device_preference': {'mobile': False}, service | 'discount_modifier': 'UP_TO', service | 'end_date': None, service | 'errors': {'money_amount_off': ['Promotion extensions with percent ' service | 'off could not be transformed to ' service | 'amount off and vice versa.']}, service | 'feed_id': 202191712, service | 'feed_item_id': 139907160795, service | 'final_url_suffix': None, service | 'frontend_notes': None, service | 'id': None, service | 'item': 'Shoes1', service | 'language': 'uk', service | 'mobile_url': None, service | 'money_amount_off': '1.01', service | 'occasion': 'FALL_SALE', service | 'orders_over_amount': None, service | 'percent_off': None, service | 'promotion_code': 'WEAR_ME', service | 'promotion_end_date': '2020-09-20', service | 'promotion_start_date': '2020-09-13', service | 'schedule': [], service | 'start_date': None, service | 'tracking_template': None, service | 'url': 'https://www.example1.com/foo'}]} service | [02/Oct/2020 09:53:00] "POST /api/adwords/v1/adwords-campaigns/3999/extensions/promotion/ HTTP/1.1" 201 757
