Hi Danial,

Just tried replacing the method with OAuth2_jwt and we are doing good 
progress, because i think the authentication passed successfully. 

I have the following error now: 
<soap:Envelope 
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";><soap:Header><ResponseHeader
 
xmlns="https://adwords.google.com/api/adwords/cm/v201209";><requestId>0004d3788a92a0600ae5630d0000276f</requestId><serviceName>CampaignService</serviceName><methodName>get</methodName><operations>0</operations><responseTime>27</responseTime><units>0</units></ResponseHeader></soap:Header><soap:Body><soap:Fault><faultcode>soap:Server</faultcode><faultstring>[AuthenticationError.NOT_ADS_USER
 
@ ; trigger:'&lt;null&gt;']</faultstring><detail><ApiExceptionFault 
xmlns="https://adwords.google.com/api/adwords/cm/v201209";><message>[AuthenticationError.NOT_ADS_USER
 
@ ; 
trigger:'&lt;null&gt;']</message><ApplicationException.Type>ApiException</ApplicationException.Type><errors
 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:type="AuthenticationError"><fieldPath></fieldPath><trigger>&lt;null&gt;</trigger><errorString>AuthenticationError.NOT_ADS_USER</errorString><ApiError.Type>AuthenticationError</ApiError.Type><reason>NOT_ADS_USER</reason></errors></ApiExceptionFault></detail></soap:Fault></soap:Body></soap:Envelope>

Is there any chance to get this error because of the domain administration 
rights - how can check and verify them (is this the google analytics domain 
owner verification)?

Thank you in advance,

All the best,
Georgi

On Thursday, January 17, 2013 11:18:11 AM UTC+2, Danial Klimkin wrote:
>
> Hello Georgi,
>
>
> From the stack trace I can see OAUTH2 method is used. You should use 
> OAUTH2_JWT instead. Please check this line in the configuration:
>
> :authentication => {
>     :method: OAUTH2_JWT
> ...
>
>
> Not related to the issue below, but require for the next step. Please make 
> sure you are signed up for a domain and have domain administration rights. 
> This is a pre-requisite for using JWT authorization.
>
>
> -Danial, AdWords API Team.
>
>
> On Wednesday, January 16, 2013 4:15:54 PM UTC+4, teamma...@gmail.comwrote:
>>
>> Hi Danial,
>>
>> Thanks for the quick reply, we've replaced the adwords initialization 
>> with the one you've suggested and we are having a progress, but still there 
>> is another error:
>>
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/google-ads-common-0.9.0/lib/ads_common/auth/oauth2_handler.rb:116:in
>>  
>> `validate_credentials': Client id is not included in the credentials. 
>> (AdsCommon::Errors::AuthError)
>> from 
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/google-ads-common-0.9.0/lib/ads_common/auth/oauth2_handler.rb:148:in
>>  
>> `create_token'
>> from 
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/google-ads-common-0.9.0/lib/ads_common/auth/base_handler.rb:50:in
>>  
>> `get_token'
>> from 
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/google-ads-common-0.9.0/lib/ads_common/auth/oauth2_handler.rb:82:in
>>  
>> `get_token'
>> from 
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/google-ads-common-0.9.0/lib/ads_common/auth/oauth2_handler.rb:75:in
>>  
>> `auth_string'
>> from 
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/google-ads-common-0.9.0/lib/ads_common/savon_headers/oauth_header_handler.rb:45:in
>>  
>> `generate_headers'
>> from 
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/google-ads-common-0.9.0/lib/ads_common/savon_headers/base_header_handler.rb:75:in
>>  
>> `prepare_request'
>> from 
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/google-ads-common-0.9.0/lib/ads_common/savon_service.rb:103:in
>>  
>> `block in execute_soap_request'
>> from 
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/savon-1.2.0/lib/savon/client.rb:129:in 
>> `yield_objects'
>> from 
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/savon-1.2.0/lib/savon/client.rb:122:in 
>> `process'
>> from 
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/savon-1.2.0/lib/savon/client.rb:84:in 
>> `block in request'
>> from 
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/savon-1.2.0/lib/savon/soap/request_builder.rb:56:in
>>  
>> `call'
>> from 
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/savon-1.2.0/lib/savon/soap/request_builder.rb:56:in
>>  
>> `request'
>> from 
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/savon-1.2.0/lib/savon/client.rb:86:in 
>> `request'
>> from 
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/google-ads-common-0.9.0/lib/ads_common/savon_service.rb:101:in
>>  
>> `execute_soap_request'
>> from 
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/google-ads-common-0.9.0/lib/ads_common/savon_service.rb:81:in
>>  
>> `execute_action'
>> from 
>> /path/.rvm/gems/ruby-1.9.3-p327/gems/google-adwords-api-0.8.0/lib/adwords_api/v201209/campaign_service.rb:21:in
>>  
>> `get'
>>
>> The application now requires client id. We've tried to add 
>> :oauth2_client_id and the :oauth2_client_secret (didn't work either), but 
>> i'm not sure if this is the right direction.
>>
>> Let me know if you need further information,
>>
>> All the best,
>> Georgi
>>
>> On Tuesday, January 15, 2013 2:04:53 PM UTC+2, Danial Klimkin wrote:
>>>
>>> Hello Georgi,
>>>
>>>
>>> If you initialize the library with a hash, you need to make sure to 
>>> provide all required credentials. Make sure to include all required fields 
>>> like this:
>>>
>>> adwords = AdwordsApi::Api.new({
>>>   :service => {
>>>     :environment => :PRODUCTION
>>>   },
>>>   :library => {
>>>     :log_level => "DEBUG"
>>>   },
>>>   :authentication => {
>>>     :method: OAUTH2_JWT
>>>     :oauth2_issuer: '12345...@developer.gserviceaccount.com'
>>>     :oauth2_secret: 'key_secret'
>>>     :oauth2_keyfile: '/path/to/key.p12'
>>>     :developer_token: '<dev_token>',
>>>     :client_customer_id: '123-456-7890'    
>>>   }
>>> }) 
>>>
>>>
>>> -Danial, AdWords API Team.
>>>
>>> On Monday, January 14, 2013 4:05:36 PM UTC+4, teamma...@gmail.com wrote:
>>>>
>>>> Hello everyone, 
>>>>
>>>> We’ve recently started to use adwords api and now we are trying to 
>>>> automate few tasks. We’re using OAuth2 authentication and ruby. 
>>>>
>>>> We’ve followed the example here 
>>>> https://code.google.com/p/google-api-ads-ruby/source/browse/adwords_api/examples/v201209/misc/use_oauth2_jwt.rb<https://code.google.com/p/google-api-ads-ruby/source/browse/adwords_api/examples/v201209/misc/use_oauth2.rb>to
>>>>  authenticate, the only difference is how we initialize the adwords api:
>>>>
>>>> adwords = AdwordsApi::Api.new({
>>>>
>>>>     :library => {
>>>>
>>>>       :log_level => "DEBUG"
>>>>
>>>> }}) 
>>>>
>>>> # option 1 and option 2 not modified from the example
>>>>
>>>> campaign_srv = adwords.service(:CampaignService, API_VERSION)
>>>>
>>>>
>>>> We’ve downloaded the private key file and the path is set correctly and 
>>>> we’ve tried both options. This is the error we get: 
>>>>
>>>> /path/.rvm/gems/ruby-1.9.3-p327/gems/google-ads-common-0.9.0/lib/ads_common/credential_handler.rb:65:in
>>>>  
>>>> `set_credential': undefined method `[]=' for nil:NilClass (NoMethodError)
>>>>
>>>> from 
>>>> /path/.rvm/gems/ruby-1.9.3-p327/gems/google-ads-common-0.9.0/lib/ads_common/api.rb:103:in
>>>>  
>>>> `block in authorize'
>>>>
>>>> from 
>>>> /path/.rvm/gems/ruby-1.9.3-p327/gems/google-ads-common-0.9.0/lib/ads_common/api.rb:102:in
>>>>  
>>>> `each_pair'
>>>>
>>>> from 
>>>> /path/.rvm/gems/ruby-1.9.3-p327/gems/google-ads-common-0.9.0/lib/ads_common/api.rb:102:in
>>>>  
>>>> `authorize'
>>>>
>>>>
>>>> Let me know if you need further information, i would like to find out 
>>>> the possible reason for that error or if there is any error in our 
>>>> configuration or code?
>>>>
>>>>  
>>>>
>>>> Thank you in advance for your time,
>>>>
>>>> Georgi
>>>>
>>>

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
Also find us on our blog and discussion group:
http://adwordsapi.blogspot.com
http://groups.google.com/group/adwords-api
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~

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



Reply via email to