Hi,
I'm blocked by a persistent PERMISSION_DENIED error when trying to make a simple, read-only query to a Google Ads Test Account.
I can get a new refresh token, and I can successfully use that refresh token to get a new access token. However, when I use those same credentials to make an API call, I get PERMISSION_DENIED, even though the UI confirms my user has "Admin" access on both the Manager and the Test account.
Failing Request Details:
Target Customer ID: [TEST_ACCOUNT_ID]
Manager Account (for login-customer-id header): [MANAGER_ACCOUNT_ID]
GAQL Query: SELECT campaign.id, campaign.name FROM campaign
Exact Error Message:
Summary of Troubleshooting Already Performed:
GCP Project: Confirmed OAuth Consent Screen is "In Production" and the Google Ads API is enabled.
Ads Account Hierarchy: Confirmed a simple hierarchy (1 Manager, 1 Test Account) and that my user has "Admin" access to both accounts in the UI. The Test Account is active and has a sample campaign.
Token Validity: Confirmed via a standalone script that a fresh token (obtained after revoking app access on myaccount.google.com/permissions) can be successfully refreshed.
Code/Config: Confirmed the correct [MANAGER_ACCOUNT_ID] is used for the login-customer-id and the correct Developer Token is used.
Given that the token refresh is successful and the user permissions appear correct in the UI, what could be the remaining cause for a PERMISSION_DENIED error? Are there known issues with permission propagation or other settings not visible in the "Access and security" screen?
Thank you.
Hi,
Thank you for contacting the Google Ads API support team.
Upon reviewing your concern, I understand that you are getting the USER_PERMISSION_DENIED error. This error indicates the user doesn't have permission to access the customer. In order to resolve this error, you need to ensure the following points:
As per the provided description, it seems that you have satisfied both the above conditions. Therefore, in order to investigate the issue further and to check why you are getting the error, please provide the following details to us:
You can send the details via Reply privately to the author option, or direct private reply to this email.
![]() |
Google Ads API Team |
[2025-10-15 07:18:37Z GMT] This message is in relation to case "ref:!00D1U01174p.!500Ht01vQqvI:ref" (ADR-00335554)