La biblioteca cliente de PHP de la API de Google Ads proporciona varias opciones 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 clientes proporcionan métodos fromFile para cargar la configuración de 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 acceso de configuración como argumento, los métodos fromFile se cargan desde la ruta de acceso de configuración predeterminada, que es la siguiente:
- El valor de la variable de entorno llamada
GOOGLE_ADS_CONFIGURATION_FILE_PATHsi está configurada. - De lo contrario, al archivo
google_ads_php.inide 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 crees 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 parámetros de configuración desde las variables de entorno cuando creas instancias de clientes (consulta la lista exhaustiva).
Los compiladores de credenciales y 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
La configuración admite varios campos organizados en categorías.
- Campos que usa
OAuth2TokenBuilder:- Modo de la aplicación
[OAUTH2] clientId: Tu ID de cliente de OAuth2.[OAUTH2] clientSecret: Tu secreto de cliente de OAuth2.[OAUTH2] refreshToken: Tu token de actualización de OAuth2.
- Modo de cuenta de servicio
[OAUTH2] jsonKeyFilePath: Es la ruta de acceso al archivo de clave JSON.[OAUTH2] scopes: Los permisos[OAUTH2] impersonatedEmail: El correo electrónico que se usará para suplantar la identidad.
- Modo de la aplicación
- Campos que usa
GoogleAdsClientBuilder:[GOOGLE_ADS] developerToken: Es tu 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 de registro.[LOGGING] logLevel: Es el nivel de registro.[CONNECTION] proxy: Es la URL del servidor proxy que se usa para la conectividad a Internet.[CONNECTION] transport: Es el transporte.[CONNECTION] grpcChannelIsSecure: Indica si el canal de gRPC es seguro o no.[CONNECTION] grpcChannelCredential: Son las credenciales del canal de gRPC.[CONNECTION] unaryMiddlewares: Los middlewares unarios.[CONNECTION] streamingMiddlewares: El middleware de transmisión[CONNECTION] grpcInterceptors: Los interceptores de gRPC.
Validación de la configuración
La configuración se verifica cuando se crean instancias de clientes y se arrojan 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] jsonKeyFilePathy[OAUTH2] scopescuando se usa el modo de cuenta de servicio. [OAUTH2] clientId,[OAUTH2] clientSecrety[OAUTH2] refreshTokense deben configurar cuando se usa el modo de aplicación.- Siempre se debe establecer
[GOOGLE_ADS] developerToken. - Si se establecen,
[GOOGLE_ADS] loginCustomerIdy[GOOGLE_ADS] linkedCustomerIddeben ser números positivos. - Si se establece,
[CONNECTION] proxydebe ser una URL válida (consulta el filtro FILTER_VALIDATE_URL). - Si se configura,
[LOGGING] logLeveldebe ser un nivel de registro de PSP válido en letras mayúsculas, comoINFO. - Si se establece,
[CONNECTION] transportdebe sergrpcorest. - Si
[CONNECTION] transportse establece engrpc, el entorno debe admitir el transporte de gRPC (consulta la guía transporte). [CONNECTION] grpcChannelIsSecuredebe sertruecuando[CONNECTION] transportno se establece engrpc.[CONNECTION] grpcChannelCredentialsolo se puede configurar cuando[CONNECTION] transportse establece comogrpc.[CONNECTION] grpcChannelCredentialsolo se puede configurar cuando[CONNECTION] grpcChannelIsSecureestrue.