Hi!
Lately, I noticed my code to update ad extensions stopped working... I'm
not sure if it happened after a change of release or at another time.
Language: PHP (5.6.1 and also tried with 7.1.10 on another server)
Library version: 19 (we're in the process of migrating to version 30 by the
end of the year)
Revision: 201705
Problem:
The code I built to update a sitelink (and other existing ad extensions in
fact) is not working anymore. I mean I create the operation, send it to
the FeedItemService and I get a reply without any error... but it doesn't
have all the information I sent. For Sitelinks, it doesn't retain the
destinationURLs information... thus making the SiteLink invalid and
unusuable. Same thing happens when I try to create a new Sitelink... it
provides me back with a FeedItemReturnValue object... with a FeedItemID but
without DestinationURLs (which in my opinion is weird because how could it
successfully generate an ID for an object that in its opinion is missing a
required field?).
Here's an example of the FeedItemOperation object I send to the service
(altered the string contents, but not anything else - all strngs really
used are valid, free of any illegal characters and encoded in UTF8 of
course):
Array
(
[0] => FeedItemOperation Object
(
[operand] => FeedItem Object
(
[feedId] => 99999999
[feedItemId] => 888888888888
[status] =>
[startTime] =>
[endTime] =>
[attributeValues] => Array
(
[0] => FeedItemAttributeValue Object
(
[feedAttributeId] => 1
[integerValue] =>
[doubleValue] =>
[booleanValue] =>
[stringValue] => Hello
[integerValues] =>
[doubleValues] =>
[booleanValues] =>
[stringValues] =>
[moneyWithCurrencyValue] =>
)
[1] => FeedItemAttributeValue Object
(
[feedAttributeId] => 5
[integerValue] =>
[doubleValue] =>
[booleanValue] =>
[stringValue] =>
[integerValues] =>
[doubleValues] =>
[booleanValues] =>
[stringValues] => Array
(
[0] =>
https://www.abc.ca/FinancePreQualForm
)
[moneyWithCurrencyValue] =>
)
[2] => FeedItemAttributeValue Object
(
[feedAttributeId] => 3
[integerValue] =>
[doubleValue] =>
[booleanValue] =>
[stringValue] => 1,2,3 Go
[integerValues] =>
[doubleValues] =>
[booleanValues] =>
[stringValues] =>
[moneyWithCurrencyValue] =>
)
[3] => FeedItemAttributeValue Object
(
[feedAttributeId] => 4
[integerValue] =>
[doubleValue] =>
[booleanValue] =>
[stringValue] => bla bla bla!
[integerValues] =>
[doubleValues] =>
[booleanValues] =>
[stringValues] =>
[moneyWithCurrencyValue] =>
)
)
[policyData] =>
[devicePreference] =>
[scheduling] =>
[campaignTargeting] =>
[adGroupTargeting] =>
[keywordTargeting] =>
[geoTargeting] =>
[geoTargetingRestriction] =>
[urlCustomParameters] =>
)
[operator] => SET
[OperationType] =>
[_parameterMap:Operation:private] => Array
(
[Operation.Type] => OperationType
)
)
)
Notice the presence of the AttributeValue[1] regarding the Destination_URLs
info.
In response, I do get the following object back:
FeedItemReturnValue Object
(
[value] => Array
(
[0] => FeedItem Object
(
[feedId] => 9999999
[feedItemId] => 88888888
[status] => ENABLED
[startTime] =>
[endTime] =>
[attributeValues] => Array
(
[0] => FeedItemAttributeValue Object
(
[feedAttributeId] => 1
[integerValue] =>
[doubleValue] =>
[booleanValue] =>
[stringValue] => Hello
[integerValues] =>
[doubleValues] =>
[booleanValues] =>
[stringValues] =>
[moneyWithCurrencyValue] =>
)
[1] => FeedItemAttributeValue Object
(
[feedAttributeId] => 3
[integerValue] =>
[doubleValue] =>
[booleanValue] =>
[stringValue] => 1,2,3 Go
[integerValues] =>
[doubleValues] =>
[booleanValues] =>
[stringValues] =>
[moneyWithCurrencyValue] =>
)
[2] => FeedItemAttributeValue Object
(
[feedAttributeId] => 4
[integerValue] =>
[doubleValue] =>
[booleanValue] =>
[stringValue] => bla bla bla!
[integerValues] =>
[doubleValues] =>
[booleanValues] =>
[stringValues] =>
[moneyWithCurrencyValue] =>
)
)
[policyData] =>
[devicePreference] =>
[scheduling] =>
[campaignTargeting] =>
[adGroupTargeting] =>
[keywordTargeting] =>
[geoTargeting] =>
[geoTargetingRestriction] =>
[urlCustomParameters] =>
)
)
[partialFailureErrors] =>
[ListReturnValueType] => FeedItemReturnValue
[_parameterMap:ListReturnValue:private] => Array
(
[ListReturnValue.Type] => ListReturnValueType
)
)
Notice the absence of the Destination_URLs info... and the absence of error too.
What am I missing?
Thanks,
Sylvain
--
--
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
Also find us on our blog and Google+:
https://googleadsdeveloper.blogspot.com/
https://plus.google.com/+GoogleAdsDevelopers/posts
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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
---
You received this message because you are subscribed to the Google Groups
"AdWords API Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
Visit this group at https://groups.google.com/group/adwords-api.
To view this discussion on the web visit
https://groups.google.com/d/msgid/adwords-api/a6c34d90-1e0e-43f7-bebf-fc16ee862740%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.