Hello!
We are facing the following error = SERVICE_ACCESS_DENIED when trying to call the following API
We have already verified:
* Project creation
* OAuth creation - creation of clientid and clientsecret codes
* Enable Google Ads API
* Allow Access CliendId to Google Ads Account - creation of authorization code
* Create Valid Access Token
If we test with invalid access token the error differs
API = https://adwords.google.com/api/adwords/rm/v201809/AdwordsUserListService [adwords.google.com]
REQUEST = <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/ [schemas.xmlsoap.org]" xmlns:v20="https://adwords.google.com/api/adwords/rm/v201809 [adwords.google.com]" xmlns:v201="https://adwords.google.com/api/adwords/cm/v201809 [adwords.google.com]">
<soapenv:Header>
<v20:RequestHeader>
<v201:clientCustomerId>*******</v201:clientCustomerId>
<v201:developerToken>*******</v201:developerToken>
<v201:partialFailure>true</v201:partialFailure>
</v20:RequestHeader>
</soapenv:Header>
<soapenv:Body>
<v20:mutateMembers>
<!--Zero or more repetitions:-->
<v20:operations>
<!--Optional:-->
<v201:operator>ADD</v201:operator>
<v20:operand>
<!--Optional:-->
<v20:userListId>**********</v20:userListId>
<v20:membersList>
<v20:hashedemail>****@*****.***</v20:hashedEmail>
</v20:membersList>
</v20:operand>
</v20:operations>
</v20:mutateMembers>
</soapenv:Body>
</soapenv:Envelope>
RESPONSE = <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/ [schemas.xmlsoap.org]">
<soap:Header>
<ns2:ResponseHeader xmlns:ns2="https://adwords.google.com/api/adwords/rm/v201809 [adwords.google.com]" xmlns="https://adwords.google.com/api/adwords/cm/v201809 [adwords.google.com]">
<requestId>0005a29f660d549d0a81df01b30cac68</requestId>
<serviceName>AdwordsUserListService</serviceName>
<methodName>mutateMembers</methodName>
<operations>1</operations>
<responseTime>155</responseTime>
</ns2:ResponseHeader>
</soap:Header>
<soap:Body>
<soap:Fault>
<faultcode>soap:Client</faultcode>
<faultstring>[AuthorizationError.SERVICE_ACCESS_DENIED @ ]</faultstring>
<detail>
<ns2:ApiExceptionFault xmlns="https://adwords.google.com/api/adwords/cm/v201809 [adwords.google.com]" xmlns:ns2="https://adwords.google.com/api/adwords/rm/v201809 [adwords.google.com]">
<message>[AuthorizationError.SERVICE_ACCESS_DENIED @ ]</message>
<ApplicationException.Type>ApiException</ApplicationException.Type>
<errors xsi:type="AuthorizationError" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance [w3.org]">
<fieldPath/>
<trigger/>
<errorString>AuthorizationError.SERVICE_ACCESS_DENIED</errorString>
<ApiError.Type>AuthorizationError</ApiError.Type>
<reason>SERVICE_ACCESS_DENIED</reason>
</errors>
</ns2:ApiExceptionFault>
</detail>
</soap:Fault>
</soap:Body>
</soap:Envelope>
Hi Luciano,
Thank you for reaching out. The SERVICE_ACCESS_DENIED error usually occurs when the developer token is approved for a different product and is used to make the Adwords API/Google Ads API call. Is your developer token approved for App Conversion Tracking and Remarketing API or some other API instead? You could contact the Compliance Team to have your developer token approved for the Adwords/Google Ads API.
Thanks and regards,
Xiaoming, Google Ads API Team
Hi Luciano,
I would suggest you to use the email associated with your MCC account to re-generate the OAuth2 credentials by following steps in this guide and use the new OAuth2 credentials to make the Adwords/Google Ads API calls. If the issue still persists, please allow some more time and then try it again as it might take some time for the token to take effect for the Adwords API/Google Ads API after it’s approved. However, in the case that the issue persists, please contact the Compliance Team via this form for further support as our team is only focused on the Adwords API/Google Ads API related issues.
Thanks and regards,
Xiaoming, Google Ads API Team