Re: Integer or Float with Customizer

2018-12-06 Thread 'Dannison Yao (AdWords API Team)' via AdWords API and Google Ads API Forum
Hi Costantin

My apologies for the confusion. Instead of using *INT64* as 
the AdCustomizerFeedAttribute.Type, you should use the *INTEGER *as the 
value instead. Also, the FLOAT type is not supported for 
AdCustomizerFeedAttribute.Type as it is not included in this guide 

.

Let me know if it works after trying my suggestion.

Regards,
Dannison
AdWords API Team

On Wednesday, December 5, 2018 at 6:45:00 PM UTC+8, Costantin wrote:
>
> Hi Dannison,
>
> Sorry but I still don't get it.
> The name field should be the column name, for type STRING, I can pass any 
> random name and the column gets appropriately labeled with that name on 
> Google Ads.
> I'm pretty sure that the same is supposed to happen also with type FLOAT 
> or other types. Why I would want to name a column with an integer name? The 
> value, however, must be an integer if I set the type as INT64, that does 
> make sense.
>
> As a very minimal example you could try to make this request:
>
> ad_customizer_feed_service = client.GetService("AdCustomizerFeedService", 
> version='v201809')
> customizer_feed = { 
> 'feedName': 'feed name xyz', 
> 'feedAttributes': [{'type': 'STRING', 'name': 'this 
> is the column name'}]} 
> feed_service_operation = {'operator': 'ADD', 'operand': customizer_feed} 
> response = ad_customizer_feed_service.mutate([feed_service_operation]) 
>
>
> if response and 'value' in response: r = "VALID: {}".format(response)  
> else: r = "NOT VALID: {}".format(response) 
>
>
> return r
>
>
>
>
> This correctly returns:
> VALID: { 'ListReturnValue.Type': 'AdCustomizerFeedReturnValue', 'value': [ 
> { 'feedId': 85X, 'feedName': 'feed name xyz', 'feedStatus': 'ENABLED', 
> 'feedAttributes': [ { 'id': 1, 'name': 'this is the column name', 'type': 
> 'STRING' } ] } ] }
>
> *Now if I try to submit a column with type INT64:*
>
>  ad_customizer_feed_service = client.GetService("AdCustomizerFeedService", 
> version='v201809')
>  customizer_feed = {
>  'feedName': 'feed name xyz 2',
>  'feedAttributes': [{'type': 'INT64', 'name': 'this is the column name 2'
> }]
> }
>  feed_service_operation = {'operator': 'ADD', 'operand': customizer_feed}
>  response = ad_customizer_feed_service.mutate([feed_service_operation])
>
>
>  if response and 'value' in response: r = "VALID: {}".format(response)
>  else: r = "NOT VALID: {}".format(response)
>
>
>  print(r)
>  return r
>
> This gives me the following error:
> googleads.errors.GoogleAdsServerFault: [RequiredError.REQUIRED @ 
> operations[0].operand.feedAttributes[0].type]
>
>
> I've tried to use an integer as the name but that also didn't work. I'm 
> pretty sure that the request above is supposed to work just like that. 
> Could someone try to make the same request and see why is not working? I 
> would really need this to work.
>
> This is the full SOAP logs of the failed (the second) request:
>
>
> [2018-12-05 12:39:41,601 - googleads.soap - INFO] Request made: Service: 
> "AdCustomizerFeedService" Method: "mutate" URL: "
> https://adwords.google.com/api/adwords/cm/v201809/AdCustomizerFeedService;
>
>  
>
> [2018-12-05 12:39:41,601 - googleads.soap - DEBUG] Outgoing request: {
> 'SOAPAction': '""', 'Content-Type': 'text/xml; charset=utf-8', 
> 'authorization': 'REDACTED'} 
>
> http://schemas.xmlsoap.org/soap/envelope/;> 
>
>
>
> https://adwords.google.com/api/adwords/cm/v201809;> 
>
>   197XX 
>
>   REDACTED 
>
>   unknown (AwApi-Python, googleads/15.0.0, Python/3.6.3
> , zeep) 
>
>   false 
>
>   false 
>
>  
>
>
>
>
>
> https://adwords.google.com/api/adwords/cm/v201809;> 
>
>
>
> ADD 
>
>  
>
>   feed name xyz 2 
>
>
>
> this is the column name 2 
>
> INT64 
>
>
>
>  
>
>
>
>  
>
>
>
>  
>
>
>  
>
> [2018-12-05 12:39:42,717 - googleads.soap - DEBUG] Incoming response:  
>
> b'http://schemas.xmlsoap.org/soap/envelope/;>\n 
>  \nhttps://adwords.google.com/api/adwords/cm/v201809;>\n 
>  00057c43ffeXXX\n 
>  AdCustomizerFeedService\n 
>  mutate\n  1\n 
>  520\n\n 
>  \n  \n\n 
>  soap:Client\n 
>  [RequiredError.REQUIRED @ 
> operations[0].operand.feedAttributes[0].type]\n 
>  \nhttps://adwords.google.com/api/adwords/cm/v201809;>\n 
>  [RequiredError.REQUIRED @ 
> operations[0].operand.feedAttributes[0].type]\n 
>  ApiException\n 
>  http://www.w3.org/2001/XMLSchema-instance; 
> xsi:type="RequiredError">\n   
>  operations[0].operand.feedAttributes[0].type\n 
>\n  operations\n   
>0\n\n   
>  \n  operand\n   
>  \n\n 
>  feedAttributes\n  0\n   
>  \n\n 

Re: Integer or Float with Customizer

2018-12-05 Thread Costantin
Hi Dannison,

Sorry but I still don't get it.
The name field should be the column name, for type STRING, I can pass any 
random name and the column gets appropriately labeled with that name on 
Google Ads.
I'm pretty sure that the same is supposed to happen also with type FLOAT or 
other types. Why I would want to name a column with an integer name? The 
value, however, must be an integer if I set the type as INT64, that does 
make sense.

As a very minimal example you could try to make this request:

ad_customizer_feed_service = client.GetService("AdCustomizerFeedService", 
version='v201809')
customizer_feed = { 
'feedName': 'feed name xyz', 
'feedAttributes': [{'type': 'STRING', 'name': 'this is 
the column name'}]} 
feed_service_operation = {'operator': 'ADD', 'operand': customizer_feed} 
response = ad_customizer_feed_service.mutate([feed_service_operation]) 


if response and 'value' in response: r = "VALID: {}".format(response)  
else: r = "NOT VALID: {}".format(response) 


return r




This correctly returns:
VALID: { 'ListReturnValue.Type': 'AdCustomizerFeedReturnValue', 'value': [ 
{ 'feedId': 85X, 'feedName': 'feed name xyz', 'feedStatus': 'ENABLED', 
'feedAttributes': [ { 'id': 1, 'name': 'this is the column name', 'type': 
'STRING' } ] } ] }

*Now if I try to submit a column with type INT64:*

 ad_customizer_feed_service = client.GetService("AdCustomizerFeedService", 
version='v201809')
 customizer_feed = {
 'feedName': 'feed name xyz 2',
 'feedAttributes': [{'type': 'INT64', 'name': 'this is the column name 2'}]
}
 feed_service_operation = {'operator': 'ADD', 'operand': customizer_feed}
 response = ad_customizer_feed_service.mutate([feed_service_operation])


 if response and 'value' in response: r = "VALID: {}".format(response)
 else: r = "NOT VALID: {}".format(response)


 print(r)
 return r

This gives me the following error:
googleads.errors.GoogleAdsServerFault: [RequiredError.REQUIRED @ operations[
0].operand.feedAttributes[0].type]


I've tried to use an integer as the name but that also didn't work. I'm 
pretty sure that the request above is supposed to work just like that. 
Could someone try to make the same request and see why is not working? I 
would really need this to work.

This is the full SOAP logs of the failed (the second) request:


[2018-12-05 12:39:41,601 - googleads.soap - INFO] Request made: Service: 
"AdCustomizerFeedService" Method: "mutate" URL: 
"https://adwords.google.com/api/adwords/cm/v201809/AdCustomizerFeedService;

 

[2018-12-05 12:39:41,601 - googleads.soap - DEBUG] Outgoing request: {
'SOAPAction': '""', 'Content-Type': 'text/xml; charset=utf-8', 
'authorization': 'REDACTED'} 

http://schemas.xmlsoap.org/soap/envelope/;> 

   

https://adwords.google.com/api/adwords/cm/v201809;> 

  197XX 

  REDACTED 

  unknown (AwApi-Python, googleads/15.0.0, Python/3.6.3, 
zeep) 

  false 

  false 

 

   

   

https://adwords.google.com/api/adwords/cm/v201809;> 

   

ADD 

 

  feed name xyz 2 

   

this is the column name 2 

INT64 

   

 

   

 

   

 


 

[2018-12-05 12:39:42,717 - googleads.soap - DEBUG] Incoming response:  

b'http://schemas.xmlsoap.org/soap/envelope/;>\n 
 \nhttps://adwords.google.com/api/adwords/cm/v201809;>\n 
 00057c43ffeXXX\n 
 AdCustomizerFeedService\n 
 mutate\n  1\n 
 520\n\n 
 \n  \n\n 
 soap:Client\n 
 [RequiredError.REQUIRED @ 
operations[0].operand.feedAttributes[0].type]\n 
 \nhttps://adwords.google.com/api/adwords/cm/v201809;>\n 
 [RequiredError.REQUIRED @ 
operations[0].operand.feedAttributes[0].type]\n 
 ApiException\n 
 http://www.w3.org/2001/XMLSchema-instance; 
xsi:type="RequiredError">\n   
 operations[0].operand.feedAttributes[0].type\n 
   \n  operations\n   
   0\n\n   
 \n  operand\n   
 \n\n 
 feedAttributes\n  0\n   
 \n\n 
 type\n\n   
 \n   
 RequiredError.REQUIRED\n   
 RequiredError\n   
 REQUIRED\n  \n   
 \n  \n\n 
 \n\n' 

[2018-12-05 12:39:42,718 - googleads.soap - WARNING] Error summary: {
'faultMessage': '[RequiredError.REQUIRED @ 
operations[0].operand.feedAttributes[0].type]', 'requestId': 
'00057c43ffe9XXX', 'serviceName': 'AdCustomizerFeedService', 
'methodName': 'mutate', 'operations': '1', 'responseTime': '520'}



-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 

Re: Integer or Float with Customizer

2018-12-04 Thread 'Dannison Yao (AdWords API Team)' via AdWords API and Google Ads API Forum
Hi Costantin,

Based on the latest logs that you have provided, you are specifying a wrong 
type for your feedAttributeName = price. Based on this documentation 
,
 
'Price' should have a type of STRING and not FLOAT.

Additionally, if you would need to create a feedAttribute with type INT64, 
the name should be Integer. You may refer to this sample code 

 in 
Python on how you can create multiple feedAttributes.

If the issue still persists after trying all these suggestions, please 
provide the latest SOAP logs again so I could check this with the team 
further. You may provide the logs using the *Reply privately to author* 
option.

Regards,
Dannison
AdWords API Team

On Tuesday, December 4, 2018 at 6:40:23 PM UTC+8, Costantin wrote:
>
> Hi Dannison,
>
> It's not an issue with the comma. The same request with STRING works just 
> fine. This is the soap log:
>
> [2018-12-04 12:33:45,246 - googleads.soap - INFO] Request made: Service: 
> "AdCustomizerFeedService" Method: "mutate" URL: "
> https://adwords.google.com/api/adwords/cm/v201809/AdCustomizerFeedService;
>
> [2018-12-04 12:33:45,249 - googleads.soap - DEBUG] Outgoing request: 
> {'SOAPAction': '""', 'Content-Type': 'text/xml; charset=utf-8', 
> 'authorization': 'REDACTED'}
>
> http://schemas.xmlsoap.org/soap/envelope/;>
>
>   
>
> https://adwords.google.com/api/adwords/cm/v201809;>
>
>   19
>
>   REDACTED
>
>   unknown (AwApi-Python, googleads/15.0.0, 
> Python/3.6.3, zeep)
>
>   false
>
>   false
>
> 
>
>   
>
>   
>
> https://adwords.google.com/api/adwords/cm/v201809;>
>
>   
>
> ADD
>
> 
>
>   XYZ_475D6Z
>
>   
>
> price
>
> FLOAT
>
>   
>
> 
>
>   
>
> 
>
>   
>
> 
>
>
> [2018-12-04 12:33:45,603 - googleads.soap - DEBUG] Incoming response: 
>
> b'http://schemas.xmlsoap.org/soap/envelope/;>\n  
> \nhttps://adwords.google.com/api/adwords/cm/v201809;>\n  
> 00057c2fccd4e220XXX\n  
> AdCustomizerFeedService\n  
> mutate\n  1\n  
> 137\n\n  
> \n  \n\n  
> soap:Client\n  
> [RequiredError.REQUIRED 
> @ operations[0].operand.feedAttributes[0].type]\n  
> \nhttps://adwords.google.com/api/adwords/cm/v201809;>\n  
> [RequiredError.REQUIRED 
> @ operations[0].operand.feedAttributes[0].type]\n  
> ApiException\n
>   http://www.w3.org/2001/XMLSchema-instance; 
> xsi:type="RequiredError">\n
> operations[0].operand.feedAttributes[0].type\n
> \n  operations\n
>   0\n\n
> \n  operand\n
> \n\n  
> feedAttributes\n  0\n  
>   \n\n  
> type\n\n
> \n
> RequiredError.REQUIRED\n
> RequiredError\n
> REQUIRED\n  \n
> \n  \n\n  
> \n\n'
>
> [2018-12-04 12:33:45,605 - googleads.soap - WARNING] Error summary: 
> {'faultMessage': '[RequiredError.REQUIRED @ 
> operations[0].operand.feedAttributes[0].type]', 'requestId': 
> '00057c2fccd4e2200aXX', 'serviceName': 'AdCustomizerFeedService', 
> 'methodName': 'mutate', 'operations': '1', 'responseTime': '137'}
>
>
>
>
>
> Please let me know if you find the issue!
> Thank you!
>
> On Tuesday, December 4, 2018 at 8:10:25 AM UTC+2, Dannison Yao (AdWords 
> API Team) wrote:
>>
>> Hi Costantin,
>>
>> Upon comparing your code to the sample code provided here 
>> ,
>>  
>> I am seeing unnecessary commas, could you try the code snippet below which 
>> I have removed the commas?
>>
>> customizer_feed = {
>>  'feedName': feed_name,
>>  'feedAttributes': [
>>  {'type': 'STRING', 'name': 'some string name'},
>>  {'type': 'INT64', 'name': 'Int Name'}
>>  ]
>> }
>>
>>
>> If the error is still persisting after trying the above suggestion, 
>> please send the complete SOAP request and response log so we could 
>> investigate this further. To enable SOAP logs on Python you can follow this 
>> guide 
>> 
>> .
>>
>> Regards,
>> Dannison
>> AdWords API Team
>>
>> On Monday, December 3, 2018 at 9:16:21 PM UTC+8, cos...@gmail.com wrote:
>>>
>>> Di Dannison,
>>>
>>> This is the full request:
>>>
>>>  ad_customizer_feed_service = client.GetService(
>>> "AdCustomizerFeedService", version='v201809')
>>>  feed_name = "feed_xyz"
>>>  customizer_feed = {
>>>  'feedName': feed_name,
>>>  'feedAttributes': [
>>>  {'type': 'STRING', 'name': 'some string name'},
>>>  {'type': 'INT64', 

Re: Integer or Float with Customizer

2018-12-04 Thread cosbgn
Hi Dannison,

It's not an issue with the comma. The same request with STRING works just 
fine. This is the soap log:

[2018-12-04 12:33:45,246 - googleads.soap - INFO] Request made: Service: 
"AdCustomizerFeedService" Method: "mutate" URL: 
"https://adwords.google.com/api/adwords/cm/v201809/AdCustomizerFeedService;

[2018-12-04 12:33:45,249 - googleads.soap - DEBUG] Outgoing request: 
{'SOAPAction': '""', 'Content-Type': 'text/xml; charset=utf-8', 
'authorization': 'REDACTED'}

http://schemas.xmlsoap.org/soap/envelope/;>

  

https://adwords.google.com/api/adwords/cm/v201809;>

  19

  REDACTED

  unknown (AwApi-Python, googleads/15.0.0, Python/3.6.3, 
zeep)

  false

  false



  

  

https://adwords.google.com/api/adwords/cm/v201809;>

  

ADD



  XYZ_475D6Z

  

price

FLOAT

  



  



  




[2018-12-04 12:33:45,603 - googleads.soap - DEBUG] Incoming response: 

b'http://schemas.xmlsoap.org/soap/envelope/;>\n  
\nhttps://adwords.google.com/api/adwords/cm/v201809;>\n  
00057c2fccd4e220XXX\n  
AdCustomizerFeedService\n  
mutate\n  1\n  
137\n\n  \n  
\n\n  soap:Client\n  
[RequiredError.REQUIRED @ 
operations[0].operand.feedAttributes[0].type]\n  
\nhttps://adwords.google.com/api/adwords/cm/v201809;>\n  
[RequiredError.REQUIRED 
@ operations[0].operand.feedAttributes[0].type]\n  
ApiException\n  
http://www.w3.org/2001/XMLSchema-instance; 
xsi:type="RequiredError">\n
operations[0].operand.feedAttributes[0].type\n  
  \n  operations\n
  0\n\n
\n  operand\n
\n\n  
feedAttributes\n  0\n
\n\n  
type\n\n
\nRequiredError.REQUIRED\n  
  RequiredError\n
REQUIRED\n  \n
\n  \n\n  
\n\n'

[2018-12-04 12:33:45,605 - googleads.soap - WARNING] Error summary: 
{'faultMessage': '[RequiredError.REQUIRED @ 
operations[0].operand.feedAttributes[0].type]', 'requestId': 
'00057c2fccd4e2200aXX', 'serviceName': 'AdCustomizerFeedService', 
'methodName': 'mutate', 'operations': '1', 'responseTime': '137'}





Please let me know if you find the issue!
Thank you!

On Tuesday, December 4, 2018 at 8:10:25 AM UTC+2, Dannison Yao (AdWords API 
Team) wrote:
>
> Hi Costantin,
>
> Upon comparing your code to the sample code provided here 
> ,
>  
> I am seeing unnecessary commas, could you try the code snippet below which 
> I have removed the commas?
>
> customizer_feed = {
>  'feedName': feed_name,
>  'feedAttributes': [
>  {'type': 'STRING', 'name': 'some string name'},
>  {'type': 'INT64', 'name': 'Int Name'}
>  ]
> }
>
>
> If the error is still persisting after trying the above suggestion, please 
> send the complete SOAP request and response log so we could investigate 
> this further. To enable SOAP logs on Python you can follow this guide 
> 
> .
>
> Regards,
> Dannison
> AdWords API Team
>
> On Monday, December 3, 2018 at 9:16:21 PM UTC+8, cos...@gmail.com 
>  wrote:
>>
>> Di Dannison,
>>
>> This is the full request:
>>
>>  ad_customizer_feed_service = client.GetService("AdCustomizerFeedService"
>> , version='v201809')
>>  feed_name = "feed_xyz"
>>  customizer_feed = {
>>  'feedName': feed_name,
>>  'feedAttributes': [
>>  {'type': 'STRING', 'name': 'some string name'},
>>  {'type': 'INT64', 'name': 'Int Name'},
>>  ],
>>  }
>>  # Types: 
>> https://developers.google.com/adwords/api/docs/reference/v201809/FeedService.FeedAttribute
>>  feed_service_operation = {'operator': 'ADD', 'operand': customizer_feed}
>>  response = ad_customizer_feed_service.mutate([feed_service_operation])
>>
>> The mutate fails and gives me this:
>>
>> Error summary: {'faultMessage': '[RequiredError.REQUIRED @ 
>> operations[0].operand.feedAttributes[1].type]', 'requestId': 
>> '00057c1de8XX', 'serviceName': 'AdCustomizerFeedService', 'methodName': 
>> 'mutate', 'operations': '1', 'responseTime': '311'}
>>
>> ..
>>
>> line 1394, in MakeSoapRequest
>>
>> e.detail, errors=error_list, message=e.message)
>>
>> googleads.errors.GoogleAdsServerFault: [RequiredError.REQUIRED @ 
>> operations[0].operand.feedAttributes[1].type]
>>
>>
>> This identical request with 'STRING' as the type for the second element (Int 
>> Name) works without any issue. 
>>
>> Please let me know if I can provide more info. 
>>
>> p.s. I'm using the official python library with Python 3.6
>>
>> On Thursday, November 29, 2018 at 11:19:39 PM UTC+2, Dannison Yao 
>> (AdWords API 

Re: Integer or Float with Customizer

2018-12-03 Thread 'Dannison Yao (AdWords API Team)' via AdWords API and Google Ads API Forum
Hi Costantin,

Upon comparing your code to the sample code provided here 
,
 
I am seeing unnecessary commas, could you try the code snippet below which 
I have removed the commas?

customizer_feed = {
 'feedName': feed_name,
 'feedAttributes': [
 {'type': 'STRING', 'name': 'some string name'},
 {'type': 'INT64', 'name': 'Int Name'}
 ]
}


If the error is still persisting after trying the above suggestion, please 
send the complete SOAP request and response log so we could investigate 
this further. To enable SOAP logs on Python you can follow this guide 

.

Regards,
Dannison
AdWords API Team

On Monday, December 3, 2018 at 9:16:21 PM UTC+8, cos...@gmail.com wrote:
>
> Di Dannison,
>
> This is the full request:
>
>  ad_customizer_feed_service = client.GetService("AdCustomizerFeedService", 
> version='v201809')
>  feed_name = "feed_xyz"
>  customizer_feed = {
>  'feedName': feed_name,
>  'feedAttributes': [
>  {'type': 'STRING', 'name': 'some string name'},
>  {'type': 'INT64', 'name': 'Int Name'},
>  ],
>  }
>  # Types: 
> https://developers.google.com/adwords/api/docs/reference/v201809/FeedService.FeedAttribute
>  feed_service_operation = {'operator': 'ADD', 'operand': customizer_feed}
>  response = ad_customizer_feed_service.mutate([feed_service_operation])
>
> The mutate fails and gives me this:
>
> Error summary: {'faultMessage': '[RequiredError.REQUIRED @ 
> operations[0].operand.feedAttributes[1].type]', 'requestId': 
> '00057c1de8XX', 'serviceName': 'AdCustomizerFeedService', 'methodName': 
> 'mutate', 'operations': '1', 'responseTime': '311'}
>
> ..
>
> line 1394, in MakeSoapRequest
>
> e.detail, errors=error_list, message=e.message)
>
> googleads.errors.GoogleAdsServerFault: [RequiredError.REQUIRED @ 
> operations[0].operand.feedAttributes[1].type]
>
>
> This identical request with 'STRING' as the type for the second element (Int 
> Name) works without any issue. 
>
> Please let me know if I can provide more info. 
>
> p.s. I'm using the official python library with Python 3.6
>
> On Thursday, November 29, 2018 at 11:19:39 PM UTC+2, Dannison Yao (AdWords 
> API Team) wrote:
>>
>> Hi Costantin,
>>
>> The RequiredError.REQUIRED 
>> 
>>  only 
>> error occurs when there are missing required fields.
>>
>> Can you provide the complete XML SOAP request and response logs so we 
>> can investigate this further? You may use the *R**eply privately to 
>> author *option. If you have not enabled the logging, you can tell me 
>> what client library you are using so I can point you to the proper guide.
>>
>> Regards,
>> Dannison
>> AdWords API Team
>>
>> On Friday, November 30, 2018 at 12:22:31 AM UTC+8, cos...@gmail.com 
>> wrote:
>>>
>>> I'm trying to add a customizer via the API. I would like to add it as an 
>>> integer or float. I do the following:
>>>
>>> customizer_feed = {
>>> 'feedName': feed_name,
>>> 'feedAttributes': [
>>> {'type': 'STRING', 'name': 'a'},
>>> ],
>>> }
>>>  feed_service_operation = {'operator': 'ADD', 'operand': 
>>> customizer_feed}
>>> response = ad_customizer_feed_service.mutate([feed_service_operation])
>>>
>>> The code above works, however, If I replace STRING with INT64 or FLOAT I 
>>> get the following error:
>>>
>>> googleads.errors.GoogleAdsServerFault: [RequiredError.REQUIRED @ 
>>> operations[0].operand.feedAttributes[1].type]
>>>
>>> I thought that the valid field types are these ones  
>>> -
>>>  
>>> Why it doesn't work?
>>>
>>

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 adwords-api@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
--- 
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 adwords-api+unsubscr...@googlegroups.com.
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/832bcf0e-8fa1-4d34-a92f-7c5122101a79%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: Integer or Float with Customizer

2018-12-03 Thread cosbgn
Di Dannison,

This is the full request:

 ad_customizer_feed_service = client.GetService("AdCustomizerFeedService", 
version='v201809')
 feed_name = "feed_xyz"
 customizer_feed = {
 'feedName': feed_name,
 'feedAttributes': [
 {'type': 'STRING', 'name': 'some string name'},
 {'type': 'INT64', 'name': 'Int Name'},
 ],
 }
 # Types: 
https://developers.google.com/adwords/api/docs/reference/v201809/FeedService.FeedAttribute
 feed_service_operation = {'operator': 'ADD', 'operand': customizer_feed}
 response = ad_customizer_feed_service.mutate([feed_service_operation])

The mutate fails and gives me this:

Error summary: {'faultMessage': '[RequiredError.REQUIRED @ 
operations[0].operand.feedAttributes[1].type]', 'requestId': 
'00057c1de8XX', 'serviceName': 'AdCustomizerFeedService', 'methodName': 
'mutate', 'operations': '1', 'responseTime': '311'}

..

line 1394, in MakeSoapRequest

e.detail, errors=error_list, message=e.message)

googleads.errors.GoogleAdsServerFault: [RequiredError.REQUIRED @ 
operations[0].operand.feedAttributes[1].type]


This identical request with 'STRING' as the type for the second element (Int 
Name) works without any issue. 

Please let me know if I can provide more info. 

p.s. I'm using the official python library with Python 3.6

On Thursday, November 29, 2018 at 11:19:39 PM UTC+2, Dannison Yao (AdWords 
API Team) wrote:
>
> Hi Costantin,
>
> The RequiredError.REQUIRED 
> 
>  only 
> error occurs when there are missing required fields.
>
> Can you provide the complete XML SOAP request and response logs so we can 
> investigate this further? You may use the *R**eply privately to author *
> option. If you have not enabled the logging, you can tell me what client 
> library you are using so I can point you to the proper guide.
>
> Regards,
> Dannison
> AdWords API Team
>
> On Friday, November 30, 2018 at 12:22:31 AM UTC+8, cos...@gmail.com 
>  wrote:
>>
>> I'm trying to add a customizer via the API. I would like to add it as an 
>> integer or float. I do the following:
>>
>> customizer_feed = {
>> 'feedName': feed_name,
>> 'feedAttributes': [
>> {'type': 'STRING', 'name': 'a'},
>> ],
>> }
>>  feed_service_operation = {'operator': 'ADD', 'operand': 
>> customizer_feed}
>> response = ad_customizer_feed_service.mutate([feed_service_operation])
>>
>> The code above works, however, If I replace STRING with INT64 or FLOAT I 
>> get the following error:
>>
>> googleads.errors.GoogleAdsServerFault: [RequiredError.REQUIRED @ 
>> operations[0].operand.feedAttributes[1].type]
>>
>> I thought that the valid field types are these ones  
>> -
>>  
>> Why it doesn't work?
>>
>

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 adwords-api@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
--- 
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 adwords-api+unsubscr...@googlegroups.com.
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/d2e7f46e-158f-4a39-b38f-c52a53a73f4e%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: Integer or Float with Customizer

2018-11-29 Thread 'Dannison Yao (AdWords API Team)' via AdWords API and Google Ads API Forum
Hi Costantin,

The RequiredError.REQUIRED 

 only 
error occurs when there are missing required fields.

Can you provide the complete XML SOAP request and response logs so we can 
investigate this further? You may use the *R**eply privately to author *
option. If you have not enabled the logging, you can tell me what client 
library you are using so I can point you to the proper guide.

Regards,
Dannison
AdWords API Team

On Friday, November 30, 2018 at 12:22:31 AM UTC+8, cos...@gmail.com wrote:
>
> I'm trying to add a customizer via the API. I would like to add it as an 
> integer or float. I do the following:
>
> customizer_feed = {
> 'feedName': feed_name,
> 'feedAttributes': [
> {'type': 'STRING', 'name': 'a'},
> ],
> }
>  feed_service_operation = {'operator': 'ADD', 'operand': 
> customizer_feed}
> response = ad_customizer_feed_service.mutate([feed_service_operation])
>
> The code above works, however, If I replace STRING with INT64 or FLOAT I 
> get the following error:
>
> googleads.errors.GoogleAdsServerFault: [RequiredError.REQUIRED @ 
> operations[0].operand.feedAttributes[1].type]
>
> I thought that the valid field types are these ones  
> -
>  
> Why it doesn't work?
>

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 adwords-api@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
--- 
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 adwords-api+unsubscr...@googlegroups.com.
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/ca0dfd2c-df53-4e67-a824-a9b8c983eac8%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.