La libreria client PHP dell'API Google Ads fornisce diverse impostazioni di configurazione che puoi utilizzare per personalizzare il comportamento della libreria.
File di configurazione
Puoi archiviare la maggior parte di queste impostazioni di configurazione in file di configurazione INI e utilizzarli quando crei istanze dei client, ad esempio google_ads_php.ini.
I builder di credenziali e client forniscono entrambi metodi fromFile per caricare
le impostazioni da questi file:
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile('/path/to/google_ads_php.ini')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile('/path/to/google_ads_php.ini')
->withOAuth2Credential($oAuth2Credential)
->build();
Se non viene fornito alcun percorso di configurazione come argomento, i metodi fromFile vengono caricati dal percorso di configurazione predefinito, ovvero:
- Il valore della variabile di ambiente denominata
GOOGLE_ADS_CONFIGURATION_FILE_PATH, se impostata. - In caso contrario, il file
google_ads_php.ininella directoryHOME.
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile()
->withOAuth2Credential($oAuth2Credential)
->build();
Configurazione dinamica
Puoi impostare queste impostazioni di configurazione in modo dinamico durante l'istanza dei client:
$oAuth2Credential = (new OAuth2TokenBuilder())
->withClientId('INSERT_CLIENT_ID_HERE')
->withClientSecret('INSERT_CLIENT_SECRET_HERE')
->withRefreshToken('INSERT_REFRESH_TOKEN_HERE')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->build();
Variabili di ambiente di configurazione
Puoi impostare alcune impostazioni di configurazione dalle variabili di ambiente durante l'istanza dei client (vedi le variabili di ambiente standard).
I generatori di credenziali e client forniscono entrambi metodi fromEnvironmentVariables
per caricare le impostazioni dalle variabili di ambiente.
$oAuth2Credential = (new OAuth2TokenBuilder())
// ...
->fromEnvironmentVariables()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->fromEnvironmentVariables()
->build();
Campi di configurazione
Le impostazioni di configurazione supportano diversi campi organizzati in categorie:
- Campi utilizzati da
OAuth2TokenBuilder:- Modalità applicazione:
[OAUTH2] clientId: il tuo ID client OAuth2.[OAUTH2] clientSecret: il client secret OAuth2.[OAUTH2] refreshToken: il token di aggiornamento OAuth2.
- Modalità service account:
[OAUTH2] jsonKeyFilePath: il percorso della chiave JSON.[OAUTH2] scopes: gli ambiti OAuth2 (il valore predefinito èhttps://www.googleapis.com/auth/adwordsinv32.1.0e versioni successive; obbligatori nelle versioni precedenti av32.1.0o quando si utilizzano ambiti personalizzati; non letti da una variabile di ambiente dafromEnvironmentVariables()).[OAUTH2] impersonatedEmail: indirizzo email facoltativo da impersonare quando utilizzi la delega a livello di dominio di Google Workspace.
- Modalità Credenziali predefinite dell'applicazione:
- Quando non sono impostati i campi Modalità applicazione e Modalità service account,
OAuth2TokenBuilderesegue automaticamente il fallback alle credenziali predefinite dell'applicazione (ADC).
- Quando non sono impostati i campi Modalità applicazione e Modalità service account,
- Modalità applicazione:
- Campi utilizzati da
GoogleAdsClientBuilder:[GOOGLE_ADS] developerToken: (ritiro il 9 settembre 2026) Il token sviluppatore dell'API Google Ads. Facoltativo, ignorato dai server API indipendentemente dalla versione della libreria client e verrà rifiutato in una futura versione principale dell'API Google Ads.v35.0.0e versioni successive: non richiesto all'inizializzazione del client (GoogleAdsClientBuilderrimossa la convalida del token sviluppatore lato client locale).- Versioni precedenti a
v35.0.0: richieste dalla convalida della configurazione lato client locale.
[GOOGLE_ADS] loginCustomerId: l'ID del cliente autorizzato da utilizzare nella richiesta.[GOOGLE_ADS] linkedCustomerId: l'ID cliente collegato.[GOOGLE_ADS] endpoint: endpoint del server API Google Ads alternativo facoltativo.[LOGGING] logFilePath: il percorso per l'output di logging.[LOGGING] logLevel: il livello di logging.[CONNECTION] proxy: l'URL del server proxy utilizzato per la connettività a internet.[CONNECTION] transport: il trasporto di rete (grpcorest).[CONNECTION] grpcChannelIsSecure: Indica se il canale gRPC è sicuro.[CONNECTION] grpcChannelCredential: le credenziali del canale gRPC.[CONNECTION] unaryMiddlewares: I middleware unari.[CONNECTION] streamingMiddlewares: I middleware di streaming.[CONNECTION] grpcInterceptors: gli intercettori gRPC.
Convalida della configurazione
Le impostazioni di configurazione vengono controllate durante l'istanza dei client e vengono generate eccezioni quando non sono valide. Le regole di convalida sono le seguenti:
- I campi
[OAUTH2]non devono essere impostati contemporaneamente per la modalità Applicazione e la modalità Service account. [OAUTH2] jsonKeyFilePathdeve essere impostato quando si utilizza la modalità Service account (nelle versioni precedenti av32.1.0, deve essere impostato anche[OAUTH2] scopes; inv32.1.0e versioni successive,scopesè impostato per impostazione predefinita suhttps://www.googleapis.com/auth/adwords).[OAUTH2] clientId,[OAUTH2] clientSecrete[OAUTH2] refreshTokendevono essere impostati quando si utilizza la modalità Applicazione.- Nelle versioni precedenti a
v35.0.0,[GOOGLE_ADS] developerTokenviene controllato dalla convalida lato client locale (inv35.0.0e versioni successive,[GOOGLE_ADS] developerTokennon è obbligatorio). - Se impostati,
[GOOGLE_ADS] loginCustomerIde[GOOGLE_ADS] linkedCustomerIddevono essere numeri positivi. - Se impostato,
[CONNECTION] proxydeve essere un URL valido (vedi il filtroFILTER_VALIDATE_URL). - Se impostato,
[LOGGING] logLeveldeve essere un livello di log PSR valido in lettere maiuscole, ad esempioINFO. - Se impostato,
[CONNECTION] transportdeve esseregrpcorest. - Se
[CONNECTION] transportè impostato sugrpc, il trasporto gRPC deve essere supportato dall'ambiente (vedi la guida al trasporto). [CONNECTION] grpcChannelIsSecuredeve esseretruequando[CONNECTION] transportnon è impostato sugrpc(le connessioni REST richiedono sempre HTTPS).[CONNECTION] grpcChannelCredentialpuò essere impostato solo quando[CONNECTION] transportè impostato sugrpc.[CONNECTION] grpcChannelCredentialpuò essere impostato solo quando[CONNECTION] grpcChannelIsSecureètrue.