In Google Ads API, the “long-lived token” you want is the OAuth2 refresh token. It doesn’t have a fixed expiry (it lives until revoked or unused for a long time). Here’s the fastest, reliable way to get one and use it in Laravel.
OAuth Playground (fastest)
- Go to the OAuth Playground
 
- Click the gear (⚙️) → Use your own OAuth credentials → paste your Client ID and Client Secret.
 
- In Step 1, select the scope: https://www.googleapis.com/auth/adwords
- Click Authorize APIs and sign in with the Google account that owns your Google Ads (or MCC).
 
- Click Exchange authorization code for tokens.
 
- Copy the Refresh token shown. That’s your long-lived token.
 
- Save it in your adsapi_php.inior.envand you’re done.
 
If you don’t see a refresh token, you probably missed these parameters. Make sure the auth request includes:
- access_type=offline
 
- prompt=consent
If you git rejected by Google, make sure that redirect url is correctly set.
Go to: https://console.developers.google.com/auth/clients
and make sure "Aithorized redirect URIs" contains this uri:
https://developers.google.com/oauthplayground
And that is it!
 
                     
                                 
         
                            
                        
                            
                                