Issue regarding Invalid and/or missing SSL certificate for URL for an application

2014-10-28 Thread Kiran Kumar
Hello,
 
  I have my mcc client id and got authorized with the developer 
token . There by i am further processed to get the developer token and got 
the access token for that. After this i want to integrate my api with the 
application .On processing into that i am facing the issues as missing SSL 
certificate for url and if i change it as HTTP other that HTTPS i am 
redirecting to a code of the given product(what is mentioned in  url).Is it 
necessary to have SSL certificate.Or else what might be the issue regarding 
this error.

Thank You.

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 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 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 http://groups.google.com/group/adwords-api.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/adwords-api/e2bf8dfe-a2a0-493b-bcec-19143b6624aa%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


NPE in OAUTH

2014-10-28 Thread Gopi

While migrating to 201409, i am seeing the below exception with OAUTH. I 
verified the client ID and client secret, they are passed correctly. Is 
there any thing else i need to verify for this.

Using the Refresh token generatedby GetRefreshToken sample code.

Credential credential = new OfflineCredentials.Builder()
  .forApi(OfflineCredentials.Api.ADWORDS)
  .withClientSecrets(clientId, clientSecret)
  .withRefreshToken(refreshToken)
  .build()
  .generateCredential();

java.lang.NullPointerException
at 
com.google.api.client.repackaged.com.google.common.base.Preconditions.checkNotNull(Preconditions.java:191)
at 
com.google.api.client.util.Preconditions.checkNotNull(Preconditions.java:127)
at 
com.google.api.client.json.jackson2.JacksonFactory.createJsonParser(JacksonFactory.java:92)
at 
com.google.api.client.json.JsonObjectParser.parseAndClose(JsonObjectParser.java:85)
at 
com.google.api.client.json.JsonObjectParser.parseAndClose(JsonObjectParser.java:81)
at 
com.google.api.client.auth.oauth2.TokenResponseException.from(TokenResponseException.java:88)
at 
com.google.api.client.auth.oauth2.TokenRequest.executeUnparsed(TokenRequest.java:287)
at 
com.google.api.client.auth.oauth2.TokenRequest.execute(TokenRequest.java:307)
at 
com.google.api.client.auth.oauth2.Credential.executeRefreshToken(Credential.java:570)
at 
com.google.api.client.googleapis.auth.oauth2.GoogleCredential.executeRefreshToken(GoogleCredential.java:362)
at 
com.google.api.client.auth.oauth2.Credential.refreshToken(Credential.java:489)
at 
com.google.api.ads.common.lib.auth.OAuth2Helper.callRefreshToken(OAuth2Helper.java:70)
at 
com.google.api.ads.common.lib.auth.OfflineCredentials.generateCredential(OfflineCredentials.java:144)

Thanks
Gopi

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 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 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 http://groups.google.com/group/adwords-api.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/adwords-api/58941c8a-2051-4009-bfcd-6579815cdd66%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Click through rate bigger the 100%

2014-10-28 Thread Luca Fiaschi
Hi,
Pulling a keyword performance report

   SELECT  Clicks, Conversions, Cost, ConversionValue,Impressions, Id, 
KeywordText, Ctr,
AdGroupName, AccountDescriptiveName, MaxCpc, AverageCpc
FROM KEYWORDS_PERFORMANCE_REPORT
WHERE Id != 300 AND Id != 306 AND Impressions > 0 AND 
AdGroupStatus=ENABLED AND CampaignStatus=ENABLED AND Status=ENABLED
DURING 20140926, 20141026


I noticed several keywords with CTR above 100% (even 200%) how is this 
possible?

I tried to compute ctr as click/impression and the value returned by the 
API and both are the same: which means impressions below the number of 
clicks ! 




-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 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 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 http://groups.google.com/group/adwords-api.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/adwords-api/c7fe01b0-0e09-4071-967b-fd3c9ca16658%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: NullPointerException in Java-Client-Library

2014-10-28 Thread Gopi
I am facing the same issue while trying to migrate to 201409. Using 
GetRefreshToken sample code i created the refresh Token. 

I am trying to use the same refresh token that was generated and trying to 
generate GoogleCredential with OfflineCredentials am i missing something or 
something changed.

Thanks
Gopi

On Tuesday, July 22, 2014 8:04:09 AM UTC-7, Josh Radcliff (AdWords API 
Team) wrote:
>
> Hi Stacie,
>
> It's quite possible that the transient *invalid_client* errors were 
> leading to the NPEs. I definitely would like to improve the error handling 
> so we do not mask the underlying OAuth error with an NPE.
>
> Cheers,
> Josh, AdWords API TEam
>
> On Monday, July 21, 2014 3:01:27 PM UTC-4, Stacie Waleyko wrote:
>>
>> Hi,
>>
>> We saw the exact same error on July 17 when trying to get a new access 
>> token. Since we have never seen it before, and it happened on the 17th, I 
>> was wondering if it was possibly triggered by errors from this other 
>> thread: "Failed to refresh access token. { "error" : "invalid_client" } 
>> on perfectly good client" 
>> ?
>>  
>> Unfortunately we didn't log any of the HTTP request/responses so I do not 
>> have anymore information but the error did go away later in the day.
>>
>> Thanks,
>>
>> Stacie
>>
>>
>> On Thursday, July 17, 2014 9:11:56 AM UTC-7, Josh Radcliff (AdWords API 
>> Team) wrote:
>>>
>>> Hi,
>>>
>>> Thanks for pointing this out. I believe this is the same issue 
>>> highlighted on our github issues list:
>>>
>>> https://github.com/googleads/googleads-java-lib/issues/19
>>>
>>> We're working on a fix -- please subscribe to notifications on the 
>>> github issue for updates.
>>>
>>> Thanks,
>>> Josh, AdWords API Team
>>>
>>> On Thursday, July 17, 2014 5:11:26 AM UTC-4, Alex wrote:

 If the httpRequest is not successfull then the client-library tries to 
 throw a TokenResponseException in 
 com.google.api.client.auth.oauth2.TokenRequest.executeUnparsed(). But 
 during the construction of that exception a NullPointerException is thrown.

 java.lang.NullPointerException


 com.google.api.client.repackaged.com.google.common.base.Preconditions.checkNotNull(Preconditions.java:191)


 com.google.api.client.util.Preconditions.checkNotNull(Preconditions.java:127)


 com.google.api.client.json.jackson2.JacksonFactory.createJsonParser(JacksonFactory.java:96)


 com.google.api.client.json.JsonObjectParser.parseAndClose(JsonObjectParser.java:85)


 com.google.api.client.json.JsonObjectParser.parseAndClose(JsonObjectParser.java:81)


 com.google.api.client.auth.oauth2.TokenResponseException.from(TokenResponseException.java:88)


 com.google.api.client.auth.oauth2.TokenRequest.executeUnparsed(TokenRequest.java:287)


 com.google.api.client.auth.oauth2.TokenRequest.execute(TokenRequest.java:307)


 com.google.api.client.auth.oauth2.Credential.executeRefreshToken(Credential.java:570)


 com.google.api.client.googleapis.auth.oauth2.GoogleCredential.executeRefreshToken(GoogleCredential.java:248)


 com.google.api.client.auth.oauth2.Credential.refreshToken(Credential.java:489)


 com.google.api.ads.common.lib.auth.OAuth2Helper.callRefreshToken(OAuth2Helper.java:70)


 com.google.api.ads.common.lib.auth.OfflineCredentials.generateCredential(OfflineCredentials.java:144)

>>>

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 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 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 http://groups.google.com/group/adwords-api.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/adwords-api/d1e8d232-de0a-4a20-87ec-b6586f59e3d2%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


typo in bidding scheme definition

2014-10-28 Thread Luca Fiaschi
Hi,
I just noticed a typo in the bidding scheme definition.

API_VERSION = v201406
googleads version = 1.0.7

Trying to upload a bidding scheme, this request works fine, with "Constained" 
misspelled


biddingScheme = {
'xsi_type': 'PageOnePromotedBiddingScheme',
'strategyGoal': strategy_goal,
'bidCeiling': {'microAmount':microAmount},
'bidModifier': bid_modifier,
'bidChangesForRaisesOnly': bid_changes_for_raises_only,
'raiseBidWhenBudgetConstained': raise_bid_when_budget_constrained,
'raiseBidWhenLowQualityScore': raise_bid_when_low_quality_score
}

but does not work when changed to "Constrained" (correct spelling) 
complaining that the fields does not exists.

Response:

[(SharedBiddingStrategy){
   biddingScheme = 
  (PageOnePromotedBiddingScheme){
 BiddingScheme.Type = "PageOnePromotedBiddingScheme"
 strategyGoal = "PAGE_ONE_PROMOTED"
 bidCeiling = 
(Money){
   ComparableValue.Type = "Money"
   microAmount = 400
}
 bidModifier = 1.2004768
 bidChangesForRaisesOnly = True
 raiseBidWhenBudgetConstained = False
 raiseBidWhenLowQualityScore = True
  }
   id = 614000238
   name = "DEAFULT_TOP_PAGE_PROMOTED"
   status = "ENABLED"
   type = "PAGE_ONE_PROMOTED"
 }]


I am not sure whether this was fixed in the new release,
Best


-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 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 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 http://groups.google.com/group/adwords-api.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/adwords-api/6cda0b46-904e-4883-b220-b5284e103c06%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Required Minimum Functionality field conflicts

2014-10-28 Thread Peter Kingswell
Hi,

I'm updating our app to follow the AdWords RMF 
(https://developers.google.com/adwords/api/docs/requirements).  RMF R.20 
states that ClickType must be shown.  This isn't possible for us since we 
have ReportDefinition.includeZeroImpressions set to true (which conflicts 
with ClickType).  Another conflict is that we download 
SearchBudgetLostImpressionShare and SearchRankLostImpressionShare, which 
also cannot be downloaded along with ClickType.  Here's the error message 
for the latter conflict:

Cannot select a combination of ClickType and 
AdvertiserExperimentId,AssistClicks,AssistClicksOverLastClicks,AssistImpressions,AssistImpressionsOverLastClicks,AverageFrequency,AveragePageviews,AverageTimeOnSite,AvgCallDurationSecs,BounceRate,Bounces,BudgetLostImpressionShare,CallDurationSecs,ClickAssistedConversionValue,ClickAssistedConversionValueLong,ClickAssistedConversionValueNonMoney,ClickAssistedConversions,ClickAssistedConversionsOverLastClickConversions,ClickReach,ContentBudgetLostImpressionShare,ContentImpressionShare,ContentLocalBidLostImpressions,ContentLocalShownImpressions,ContentLocalThrottledImpressions,ContentRankLostImpressionShare,CostPerEstimatedTotalConversion,EstimatedCrossDeviceConversions,EstimatedTotalConversionRate,EstimatedTotalConversionValue,EstimatedTotalConversionValuePerClick,EstimatedTotalConversionValuePerCost,EstimatedTotalConversions,EstimatedTotalConversionsManyPerClick,ExactMatchImpressionShare,ExternalAdChanges,ExternalBidChanges,ExternalBudgetChanges,ExternalChanges,ExternalKeywordChanges,ExternalNetworkChanges,ExternalStatusChanges,ExternalTargetingChanges,ImpressionAssistedConversionValue,ImpressionAssistedConversionValueLong,ImpressionAssistedConversionValueNonMoney,ImpressionAssistedConversions,ImpressionAssistedConversionsOverLastClickConversions,ImpressionReach,ImpressionShare,InternalAdChanges,InternalBidChanges,InternalBudgetChanges,InternalChanges,InternalKeywordChanges,InternalNetworkChanges,InternalStatusChanges,InternalTargetingChanges,LastClickConversions,LastClicks,NewVisitors,NumCalls,NumMissedCalls,NumReceivedCalls,Pageviews,PercentNewVisitors,QualityLostImpressionShare,ReachBucket,RelativeCtr,SearchBudgetLostImpressionShare,SearchExactMatchImpressionShare,SearchImpressionShare,SearchLocalBidLostImpressions,SearchLocalShownImpressions,SearchLocalThrottledImpressions,SearchRankLostImpressionShare,ValuePerEstimatedTotalConversion,VisitDuration,Visits

So it would seem to me that our options are:
- not download ClickType - and thus not entirely conform to the RMF
- not download the conflicting fields (e.g. SearchRankLostImpressionShare) 
- this would break important features in our app
- download the data twice - once for SearchRankLostImpressionShare and once 
for ClickType - obviously we want to avoid this (how would you merge the 
data?  sounds difficult)

Any advice appreciated!
Peter

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 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 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 http://groups.google.com/group/adwords-api.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/adwords-api/9dc7f122-42f0-4e82-af9c-3cbbcf4aa7b1%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: Error when calling getReportFields

2014-10-28 Thread chris h
Hi Anash,
Here is the full response:

http://schemas.xmlsoap.org/soap/envelope/";>https://adwords.google.com/api/adwords/cm/v201409";>0005067d03ec49e80aecc881b00042acReportDefinitionServicegetReportFields047soap:Server[AuthenticationError.CLIENT_CUSTOMER_ID_IS_REQUIRED
 
@ ; trigger:'']https://adwords.google.com/api/adwords/cm/v201409";>[AuthenticationError.CLIENT_CUSTOMER_ID_IS_REQUIRED
 
@ ; 
trigger:'']ApiExceptionhttp://www.w3.org/2001/XMLSchema-instance"; 
xsi:type="AuthenticationError">AuthenticationError.CLIENT_CUSTOMER_ID_IS_REQUIREDAuthenticationErrorCLIENT_CUSTOMER_ID_IS_REQUIRED

On Tuesday, October 28, 2014 8:39:37 AM UTC-4, Anash P. Oommen (AdWords API 
Team) wrote:
>
> Hi Chris,
>
> Could you post a request id for a failed request, so I can investigate 
> this further? It is part of the SOAP response header.
>
> Cheers,
> Anash P. Oommen,
> AdWords API Advisor.
>
> On Monday, October 27, 2014 8:22:09 PM UTC-4, chris h wrote:
>>
>> Hi Anash,
>> Yes, I did add it to the request header. Can you think of anything else 
>> which could be causing it not to work?
>>
>> On Monday, October 27, 2014 2:55:40 PM UTC-4, Anash P. Oommen (AdWords 
>> API Team) wrote:
>>>
>>> Hi Chris,
>>>
>>> ReportDefinitionService is a SOAP service, so clientCustomerId goes in 
>>> the SOAP RequestHeader header.
>>>
>>> Cheers,
>>> Anash
>>>
>>> On Monday, October 27, 2014 1:33:57 PM UTC-4, chris h wrote:

 Hi Anash,
 I did add the clientCustomerId to the header (was mentioned in my 
 original post) but I still get this error.  Does it matter which 
 clientCustomerId is used?

 On Monday, October 27, 2014 1:26:46 PM UTC-4, Anash P. Oommen (AdWords 
 API Team) wrote:
>
> Hi Chris,
>
> in v201409, we made client customer id a required field in all the 
> services. We have asked the team to relax this requirement for 
> ReportDefinitionService. Meanwhile, you can work around the issue by 
> setting the clientCustomerId header in the API calls to 
> ReportDefinitionService. Using your MCC CID should work fine.
>
> Cheers,
> Anash P. Oommen,
> AdWords API Advisor.
>
> On Monday, October 27, 2014 1:22:58 PM UTC-4, chris h wrote:
>>
>> Thanks, but I'm not using Python. I need to know what has changed 
>> with the protocol handshake that is causing my existing application to 
>> stop 
>> working.
>>
>> On Monday, October 27, 2014 6:52:11 AM UTC-4, Сергей Козловский wrote:
>>>
>>> Look here how get all fields by report name 
>>> https://github.com/googleads/googleads-python-lib/blob/master/examples/adwords/v201409/reporting/get_report_fields.py
>>>
>>> and here how correctly authorizing 
>>> https://github.com/googleads/googleads-python-lib/blob/master/examples/adwords/authentication/create_adwords_client_without_yaml.py
>>>
>>> понедельник, 27 октября 2014 г., 5:11:18 UTC+2 пользователь chris h 
>>> написал:

 Am migrating to v201409

 Getting error:

 AuthenticationError.CLIENT_CUSTOMER_ID_IS_REQUIRED
 when calling getReportFields

 Reading this:

 https://developers.google.com/adwords/api/docs/reference/v201409/ReportDefinitionService

 I find in errors section:

 CLIENT_CUSTOMER_ID_IS_REQUIRED Client Customer Id is required if 
 CustomerIdMode is set to CLIENT_EXTERNAL_CUSTOMER_ID. Starting version 
 V201409 ClientCustomerId will be required for all requests except for 
 CustomerService.get 
 
 I can't find anything in the docs about setting CustomerIdMode. And 
 anyway, I added the clientCustomerId header to the HTTP POST just like 
 with 
 other calls, but I still get the error. And finally, why does this 
 methods 
 require a Client Customer Id? Might the fields returned be different 
 for 
 different customers?



-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 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 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 http://gro

Re: Solution for creating a label when creating a TextAd

2014-10-28 Thread Alan Coleman
Hi Martin,

Thanks for making me stick with this one, I finally got it working. The 
issue was down to my code rather than your explanation.

I was attempting to add the label ID to the TextAd Object rather than 
creating a Label Object of its own.

This is what is required when using the PHP Library

$textAdLabel = new Label();
$textAdLabel->id = $val['labelid'];

Simple!

Thanks again for your help and explanation.


On Monday, October 27, 2014 6:27:39 PM UTC, Martin wrote:
>
> Hi Alan,
>
> That's right! The outcome is the same.
> I'm using MutateJobServive,mutate and the operations are a list of the ads 
> created. My previous snippet is the creation of such a list.
> So it's a regular TextAd creation operation, with an additional key in the 
> dictionary.
> Relevant documentation: type AdGroupAd (v201409) 
> 
> For the label field it states: This field is read only and will be ignored 
> when sent to the API for the following Operator 
> s:
>  
> REMOVE and SET.
> What we are doing is an ADD operation because we want to assign the label 
> at the time of creation, so there's no conflict there.
>
> Possible issues that might make your request fail:
>
>1. Old API version (I guess not as the link you sent is from v201409)
>2. Wrong label structure. What I'm sending in the labels field is a 
>list of dictionaries, just with the labelId. (... 'labels': [{'id': 
>Label_id}], ...)
>3. Wrong method. MutateJobServive,mutate or AdGroupAdService.mutate 
>should work fine as well. Just don't use  AdGroupAdService.mutateLabel, 
>because as you've realised, that's for existing ads.
>
>
> Let me know if you get it working.
> Cheers!
>
> On Thursday, 23 October 2014 06:14:40 UTC-3, Alan Coleman wrote:
>>
>> Hi Martin,
>>
>> Sorry to keep going on about this but I'm confused about how you're 
>> getting this to work.
>>
>> Can I confirm that I'm trying to achieve the same outcome as yourself?
>>
>>1.  A Label has been created previously and I have the ID
>>2. I want to create a TextAd and assign the above label whilst 
>>creating the TextAd
>>
>> I've tried two services:
>>
>>1. AdGroupAdService
>>2. MutateJobService
>>
>> With variations on the following code:
>>
>> $textAd->displayUrl = $textDisplayUrl;
>> $textAd->url = $textUrl;
>> $textAd->labels = $labelid;
>>
>> This is returning an Undefined index error.
>>
>> The documentation clearly states that the services are read only and that 
>> AdGroupAdService.mutateLabel 
>> 
>>  should 
>> be used to add an *existing Label* to an *existing AdGroupAd.*
>> I'd really like to be able to add an existing label when creating a 
>> TextAd, I'm just confused about how you're achieving this.
>>
>> Many thanks
>>
>>
>> On Wednesday, October 8, 2014 11:18:46 PM UTC+1, Martin wrote:
>>>
>>> Hi all!
>>> I disagree with the accepted solution. I am currently assigning labels 
>>> to Text Ads in a single operation at the time of creation. Below is the 
>>> relevant snippet from my python code. I'm using the MutateJobService and it 
>>> works just fine.
>>> adgroup_ad_operations.append({
>>> 'xsi_type': 'AdGroupAdOperation',
>>> 'operator': 'ADD',
>>> 'operand': {
>>> 'xsi_type': 'AdGroupAd',
>>> 'adGroupId': adGroupId,
>>> 'ad': textad,
>>> 'status': 'ENABLED',
>>> 'labels': [{'id': Label_id}],
>>> },
>>> })
>>>
>>> I hope this helps. :)
>>> Cheers!
>>> Martin
>>>
>>>
>>> On Wednesday, 8 October 2014 05:18:07 UTC-3, Alan Coleman wrote:

 Thanks for getting back to me Michael! :-)

 On Friday, October 3, 2014 6:19:06 PM UTC+1, Michael Cloonan (AdWords 
 API Team) wrote:
>
> Hello,
>
> You are correct; you must create the TextAd first, and then in a 
> separate operation you may assign a label to it. There is no way to 
> assign 
> a label to the TextAd at the time of creation.
>
> Regards,
> Mike, AdWords API Team
>
> On Friday, October 3, 2014 6:37:01 AM UTC-4, Alan Coleman wrote:
>>
>> Hello everyone,
>>
>> I'd like to be able to add a *label* to a *TextAd *when creating the 
>> TextAd.
>>
>> I'm creating the TextAd using AdGroupAdOperation 
>> 
>> .
>>
>> If I want to use AdGroupAdLabelOperation 
>> 

Re: Are all Campaign settings available via the API

2014-10-28 Thread Danial Klimkin
Hello Alan,


It's read only as it can't be changed once criterion is created. You can 
change campaign setting by adding or removing criteria, not updating it.

I recommend checking out our client libraries. Each of them has a solid set 
of examples covering many typical use cases:

  https://developers.google.com/adwords/api/docs/clientlibraries


-Danial, AdWords API Team.



On Monday, October 27, 2014 8:31:36 PM UTC+3, Alan Coleman wrote:
>
> Thanks for getting back to me Danial,
>
> I notice that the enumerations for Type are ReadOnly.
>
> Does this mean that I can't set these features when creating a Campaign? 
>
> The reason I ask this is that I want to be able to copy a campaign as 
> closely as possible.
>
> I'm doing this at the moment by getting and adding a Campaign by using the
>  CampaignService 
> 
>  Which 
> doesn't include the fields I mentioned above.
>
> Thanks again.
>
> On Wednesday, October 22, 2014 9:25:23 AM UTC+1, Alan Coleman wrote:
>>
>> Hello everyone,
>>
>> I'm using CampaignService 
>> 
>>  
>> to get hold of a Campaign and it's settings.
>>
>> However when I look at the campaign in the AdWords interface there are 
>> settings that don't seem to be available via the API.
>>
>> For example:
>>
>>- Language
>>- Devices
>>- Ad schedule
>>- Location
>>
>> Can anyone shed any light on this?
>>
>> Many thanks.
>>
>

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 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 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 http://groups.google.com/group/adwords-api.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/adwords-api/4fedabd3-4e72-4fbb-9cf8-64a35e30999d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: Solution for creating a label when creating a TextAd

2014-10-28 Thread Alan Coleman
Hi Martin,

Thanks for making me stick with this one, I finally got it working. The 
issue was down to my code rather than your explanation.

I was attempting to add the label ID to the TextAd Object rather than 
creating a Label Object of its own.

NO:

$textAd->displayUrl = $textDisplayUrl;
$textAd->url = $textUrl;
$textAd->labels = $labelid;





On Monday, October 27, 2014 6:27:39 PM UTC, Martin wrote:
>
> Hi Alan,
>
> That's right! The outcome is the same.
> I'm using MutateJobServive,mutate and the operations are a list of the ads 
> created. My previous snippet is the creation of such a list.
> So it's a regular TextAd creation operation, with an additional key in the 
> dictionary.
> Relevant documentation: type AdGroupAd (v201409) 
> 
> For the label field it states: This field is read only and will be ignored 
> when sent to the API for the following Operator 
> s:
>  
> REMOVE and SET.
> What we are doing is an ADD operation because we want to assign the label 
> at the time of creation, so there's no conflict there.
>
> Possible issues that might make your request fail:
>
>1. Old API version (I guess not as the link you sent is from v201409)
>2. Wrong label structure. What I'm sending in the labels field is a 
>list of dictionaries, just with the labelId. (... 'labels': [{'id': 
>Label_id}], ...)
>3. Wrong method. MutateJobServive,mutate or AdGroupAdService.mutate 
>should work fine as well. Just don't use  AdGroupAdService.mutateLabel, 
>because as you've realised, that's for existing ads.
>
>
> Let me know if you get it working.
> Cheers!
>
> On Thursday, 23 October 2014 06:14:40 UTC-3, Alan Coleman wrote:
>>
>> Hi Martin,
>>
>> Sorry to keep going on about this but I'm confused about how you're 
>> getting this to work.
>>
>> Can I confirm that I'm trying to achieve the same outcome as yourself?
>>
>>1.  A Label has been created previously and I have the ID
>>2. I want to create a TextAd and assign the above label whilst 
>>creating the TextAd
>>
>> I've tried two services:
>>
>>1. AdGroupAdService
>>2. MutateJobService
>>
>> With variations on the following code:
>>
>> $textAd->displayUrl = $textDisplayUrl;
>> $textAd->url = $textUrl;
>> $textAd->labels = $labelid;
>>
>> This is returning an Undefined index error.
>>
>> The documentation clearly states that the services are read only and that 
>> AdGroupAdService.mutateLabel 
>> 
>>  should 
>> be used to add an *existing Label* to an *existing AdGroupAd.*
>> I'd really like to be able to add an existing label when creating a 
>> TextAd, I'm just confused about how you're achieving this.
>>
>> Many thanks
>>
>>
>> On Wednesday, October 8, 2014 11:18:46 PM UTC+1, Martin wrote:
>>>
>>> Hi all!
>>> I disagree with the accepted solution. I am currently assigning labels 
>>> to Text Ads in a single operation at the time of creation. Below is the 
>>> relevant snippet from my python code. I'm using the MutateJobService and it 
>>> works just fine.
>>> adgroup_ad_operations.append({
>>> 'xsi_type': 'AdGroupAdOperation',
>>> 'operator': 'ADD',
>>> 'operand': {
>>> 'xsi_type': 'AdGroupAd',
>>> 'adGroupId': adGroupId,
>>> 'ad': textad,
>>> 'status': 'ENABLED',
>>> 'labels': [{'id': Label_id}],
>>> },
>>> })
>>>
>>> I hope this helps. :)
>>> Cheers!
>>> Martin
>>>
>>>
>>> On Wednesday, 8 October 2014 05:18:07 UTC-3, Alan Coleman wrote:

 Thanks for getting back to me Michael! :-)

 On Friday, October 3, 2014 6:19:06 PM UTC+1, Michael Cloonan (AdWords 
 API Team) wrote:
>
> Hello,
>
> You are correct; you must create the TextAd first, and then in a 
> separate operation you may assign a label to it. There is no way to 
> assign 
> a label to the TextAd at the time of creation.
>
> Regards,
> Mike, AdWords API Team
>
> On Friday, October 3, 2014 6:37:01 AM UTC-4, Alan Coleman wrote:
>>
>> Hello everyone,
>>
>> I'd like to be able to add a *label* to a *TextAd *when creating the 
>> TextAd.
>>
>> I'm creating the TextAd using AdGroupAdOperation 
>> 
>> .
>>
>> If I want to use AdGroupAdLabelOperation 
>> 
>>  
>> to add a label then I first have to return the TextA

Re: Error when calling getReportFields

2014-10-28 Thread Anash P. Oommen (AdWords API Team)
Hi Chris,

Could you post a request id for a failed request, so I can investigate this 
further? It is part of the SOAP response header.

Cheers,
Anash P. Oommen,
AdWords API Advisor.

On Monday, October 27, 2014 8:22:09 PM UTC-4, chris h wrote:
>
> Hi Anash,
> Yes, I did add it to the request header. Can you think of anything else 
> which could be causing it not to work?
>
> On Monday, October 27, 2014 2:55:40 PM UTC-4, Anash P. Oommen (AdWords API 
> Team) wrote:
>>
>> Hi Chris,
>>
>> ReportDefinitionService is a SOAP service, so clientCustomerId goes in 
>> the SOAP RequestHeader header.
>>
>> Cheers,
>> Anash
>>
>> On Monday, October 27, 2014 1:33:57 PM UTC-4, chris h wrote:
>>>
>>> Hi Anash,
>>> I did add the clientCustomerId to the header (was mentioned in my 
>>> original post) but I still get this error.  Does it matter which 
>>> clientCustomerId is used?
>>>
>>> On Monday, October 27, 2014 1:26:46 PM UTC-4, Anash P. Oommen (AdWords 
>>> API Team) wrote:

 Hi Chris,

 in v201409, we made client customer id a required field in all the 
 services. We have asked the team to relax this requirement for 
 ReportDefinitionService. Meanwhile, you can work around the issue by 
 setting the clientCustomerId header in the API calls to 
 ReportDefinitionService. Using your MCC CID should work fine.

 Cheers,
 Anash P. Oommen,
 AdWords API Advisor.

 On Monday, October 27, 2014 1:22:58 PM UTC-4, chris h wrote:
>
> Thanks, but I'm not using Python. I need to know what has changed with 
> the protocol handshake that is causing my existing application to stop 
> working.
>
> On Monday, October 27, 2014 6:52:11 AM UTC-4, Сергей Козловский wrote:
>>
>> Look here how get all fields by report name 
>> https://github.com/googleads/googleads-python-lib/blob/master/examples/adwords/v201409/reporting/get_report_fields.py
>>
>> and here how correctly authorizing 
>> https://github.com/googleads/googleads-python-lib/blob/master/examples/adwords/authentication/create_adwords_client_without_yaml.py
>>
>> понедельник, 27 октября 2014 г., 5:11:18 UTC+2 пользователь chris h 
>> написал:
>>>
>>> Am migrating to v201409
>>>
>>> Getting error:
>>>
>>> AuthenticationError.CLIENT_CUSTOMER_ID_IS_REQUIRED
>>> when calling getReportFields
>>>
>>> Reading this:
>>>
>>> https://developers.google.com/adwords/api/docs/reference/v201409/ReportDefinitionService
>>>
>>> I find in errors section:
>>>
>>> CLIENT_CUSTOMER_ID_IS_REQUIRED Client Customer Id is required if 
>>> CustomerIdMode is set to CLIENT_EXTERNAL_CUSTOMER_ID. Starting version 
>>> V201409 ClientCustomerId will be required for all requests except for 
>>> CustomerService.get 
>>> 
>>> I can't find anything in the docs about setting CustomerIdMode. And 
>>> anyway, I added the clientCustomerId header to the HTTP POST just like 
>>> with 
>>> other calls, but I still get the error. And finally, why does this 
>>> methods 
>>> require a Client Customer Id? Might the fields returned be different 
>>> for 
>>> different customers?
>>>
>>>

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 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 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 http://groups.google.com/group/adwords-api.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/adwords-api/3bdc37db-508d-41f8-881f-2f9e2511bc85%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: ERROR_GETTING_RESPONSE_FROM_BACKEND

2014-10-28 Thread Anash P. Oommen (AdWords API Team)
Hi Mark,

I can't find this error code in our logs, could you please provide a failed 
request id?

Cheers,
Anash P. Oommen,
AdWords API Advisor.

On Thursday, October 23, 2014 7:40:41 AM UTC-4, Mark wrote:
>
> Hello Anash,
>
> I am facing same issue since two days! 
> Please let me know how I can figure this out?
>
>
>
> On Friday, January 3, 2014 8:06:04 PM UTC+5:30, Anash P. Oommen (AdWords 
> API Team) wrote:
>>
>> Hi Mesut,
>>
>> Let me know if the issue persists, I'll ask the reports team to 
>> investigate this further.
>>
>> Cheers,
>> Anash P. Oommen,
>> AdWords API Advisor.
>>
>> On Monday, December 30, 2013 1:02:24 PM UTC-5, Mesut Eyrice wrote:
>>>
>>> I'm having the same problem.
>>>
>>> 17 Eylül 2013 Salı 19:50:02 UTC+3 tarihinde Alex yazdı:

 We get the error ERROR_GETTING_RESPONSE_FROM_BACKEND very often today. 
 Is there a problem? Will it be fixed soon?

>>>

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 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 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 http://groups.google.com/group/adwords-api.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/adwords-api/93b4d2e1-a03c-4cc7-a65c-96b49ea0099a%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: Big problems with REPORTS data values

2014-10-28 Thread Florio
I give you more information.
The values of Clicks and Impressions are perfectly good, but cost are 
different.

Florio

On Tuesday, October 28, 2014 11:58:55 AM UTC+1, Florio wrote:
>
> Hi all,
>
> as I written in the subject I have big problems with the values in REPORTS 
> that I download.
> Until 3-4 weeks ago everything worked well but now something looks 
> changed. More or less the same time the API are changed.
>
> I use an MCC account with more than 1000 accounts inside. I download 
> reports everyday and many times for each day. I get, for example, the cost 
> value for each account splitted for device. 
> I'm using the PHP API version: v201406. 
>
> When I read the values and I compare to the WebUI values they are 
> different. Not always but very often. 
> I get no errors during the download, everything technically looks to work. 
> It happens for reports setted to TODAY or YESTERDAY. 
> Every account is setted to pacific time and I download reports 1 hour and 
> half after the day ends in pacific time. 
> As I said it worked well for years until few weeks ago.
>
> What is changed? What can I do to solve it? 
>
> Thank you,
> Florio.
>

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 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 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 http://groups.google.com/group/adwords-api.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/adwords-api/bfb1c96b-1011-4d3d-a9b5-e130cbab4020%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Big problems with REPORTS data values

2014-10-28 Thread Florio
Hi all,

as I written in the subject I have big problems with the values in REPORTS 
that I download.
Until 3-4 weeks ago everything worked well but now something looks changed. 
More or less the same time the API are changed.

I use an MCC account with more than 1000 accounts inside. I download 
reports everyday and many times for each day. I get, for example, the cost 
value for each account splitted for device. 
I'm using the PHP API version: v201406. 

When I read the values and I compare to the WebUI values they are 
different. Not always but very often. 
I get no errors during the download, everything technically looks to work. 
It happens for reports setted to TODAY or YESTERDAY. 
Every account is setted to pacific time and I download reports 1 hour and 
half after the day ends in pacific time. 
As I said it worked well for years until few weeks ago.

What is changed? What can I do to solve it? 

Thank you,
Florio.

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 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 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 http://groups.google.com/group/adwords-api.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/adwords-api/b595722a-9597-4618-9b4d-f65d78c93536%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.