La biblioteca cliente de PHP de la API de Google Ads proporciona varios parámetros de configuración que puedes usar para personalizar el comportamiento de la biblioteca.
Archivo de configuración
Puedes almacenar la mayoría de estos parámetros de configuración en archivos ini
y usarlos cuando crees instancias de clientes, por ejemplo, google_ads_php.ini
.
Los compiladores de credenciales y de clientes proporcionan métodos fromFile
para cargar la configuración desde esos archivos:
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile('/path/to/google_ads_php.ini')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile('/path/to/google_ads_php.ini')
->withOAuth2Credential($oAuth2Credential)
->build();
Si no se proporciona una ruta de archivo de configuración como argumento, los métodos fromFile
se cargan desde la ruta de acceso del archivo de configuración predeterminada, que es la siguiente:
- El valor de la variable de entorno llamada
GOOGLE_ADS_CONFIGURATION_FILE_PATH
si se configura. - De lo contrario, el archivo
google_ads_php.ini
de tu directorioHOME
.
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile()
->withOAuth2Credential($oAuth2Credential)
->build();
Configuración dinámica
Puedes establecer estos parámetros de configuración de forma dinámica cuando creas instancias de clientes.
$oAuth2Credential = (new OAuth2TokenBuilder())
->withClientId('INSERT_CLIENT_ID')
// ...
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
// ...
->build();
Variables de entorno de configuración
Puedes establecer algunos de los ajustes de configuración desde las variables de entorno cuando creas instancias de clientes (consulta la lista exhaustiva).
Los compiladores de credenciales y de clientes proporcionan métodos fromEnvironmentVariables
para cargar la configuración desde variables de entorno:
$oAuth2Credential = (new OAuth2TokenBuilder())
// ...
->fromEnvironmentVariables()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->fromEnvironmentVariables()
->build();
Campos de configuración
Los parámetros de configuración admiten varios campos organizados en categorías.
- Campos que usa
OAuth2TokenBuilder
:- Modo de aplicación
[OAUTH2] clientId
: Es el ID de cliente de OAuth2.[OAUTH2] clientSecret
: Tu secreto del cliente de OAuth2.[OAUTH2] refreshToken
: Es el token de actualización de OAuth2.
- Modo de cuenta de servicio
[OAUTH2] jsonKeyFilePath
: Es la ruta de acceso al archivo de claves JSON.[OAUTH2] scopes
: Los permisos[OAUTH2] impersonatedEmail
: Es el correo electrónico que se usará para robar la identidad.
- Modo de aplicación
- Campos que usa
GoogleAdsClientBuilder
:[GOOGLE_ADS] developerToken
: Es el token de desarrollador para acceder a la API.[GOOGLE_ADS] loginCustomerId
: Es el ID del cliente autorizado que se usará en la solicitud.[GOOGLE_ADS] linkedCustomerId
: Es el ID de cliente vinculado.[LOGGING] logFilePath
: Es la ruta de acceso del archivo para el registro.[LOGGING] logLevel
: El nivel de registro[CONNECTION] proxy
: La URL del servidor proxy que se usa para la conectividad a Internet.[CONNECTION] transport
: Es el transporte.[CONNECTION] grpcChannelIsSecure
: Determina si el canal de gRPC es seguro o no.[CONNECTION] grpcChannelCredential
: Las credenciales del canal de gRPC.[CONNECTION] unaryMiddlewares
: Es el middleware unario.[CONNECTION] streamingMiddlewares
: Son los middlewares de transmisión.[CONNECTION] grpcInterceptors
: Los interceptores de gRPC.
[GAPIC] useGapicV2Source
: Indica si se debe usar el código fuente de GAPIC v2 cuando se crean clientes de servicios.
Validación de la configuración
Se verifica la configuración cuando se crean instancias de clientes, y se producen excepciones cuando no son válidas. Estas son las reglas:
- Los campos
[OAUTH2]
no se deben configurar para el modo de aplicación y el modo de cuenta de servicio al mismo tiempo. - Se deben configurar
[OAUTH2] jsonKeyFilePath
y[OAUTH2] scopes
cuando se usa el modo de cuenta de servicio. - Se deben configurar
[OAUTH2] clientId
,[OAUTH2] clientSecret
y[OAUTH2] refreshToken
cuando se usa el modo de aplicación. - Siempre se debe establecer
[GOOGLE_ADS] developerToken
. - Si se establecen,
[GOOGLE_ADS] loginCustomerId
y[GOOGLE_ADS] linkedCustomerId
deben ser números positivos. - Si se configura,
[CONNECTION] proxy
debe ser una URL válida (consulta el filtro FILTER_VALIDATE_URL). - Si se configura,
[LOGGING] logLevel
debe ser un nivel de registro de PRS válido en letras mayúsculas, comoINFO
. - Si se configura,
[CONNECTION] transport
debe sergrpc
orest
. - Si
[CONNECTION] transport
se configura comogrpc
, el transporte de gRPC debe ser compatible con el entorno (consulta la guía sobre transporte). [CONNECTION] grpcChannelIsSecure
debe sertrue
cuando[CONNECTION] transport
no se establezca engrpc
.[CONNECTION] grpcChannelCredential
solo se puede configurar cuando[CONNECTION] transport
se establece engrpc
.[CONNECTION] grpcChannelCredential
solo se puede configurar cuando[CONNECTION] grpcChannelIsSecure
estrue
.