Configuración

La biblioteca cliente de PHP de la API de Google Ads proporciona varios ajustes de configuración que 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 ini y usarlos al crear instancias de clientes, por ejemplo, google_ads_php.ini

Los compiladores de clientes y de credenciales proporcionan métodos fromFile para cargar de 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 del archivo de configuración como argumento, fromFile se cargan desde la ruta del archivo de configuración predeterminada, que es la siguiente:

  1. El valor de la variable de entorno llamada GOOGLE_ADS_CONFIGURATION_FILE_PATH si está configurado.
  2. De lo contrario, al archivo google_ads_php.ini de tu directorio HOME.
$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 parámetros de configuración desde las variables de entorno cuando crear instancias de los clientes (consulta la lista ).

Los compiladores de credenciales y clientes proporcionan fromEnvironmentVariables para cargar la configuración de las 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.

  1. Campos utilizados por OAuth2TokenBuilder:
    • Modo de aplicación
      • [OAUTH2] clientId: Es tu 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: La ruta del archivo de claves JSON.
      • [OAUTH2] scopes: Son los permisos.
      • [OAUTH2] impersonatedEmail: El correo electrónico que se usará en la identidad.
  2. Campos utilizados por GoogleAdsClientBuilder:
    • [GOOGLE_ADS] developerToken: Tu token de desarrollador para acceder a la API.
    • [GOOGLE_ADS] loginCustomerId: el ID de la cuenta autorizada cliente para 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: 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: El middleware unario.
    • [CONNECTION] streamingMiddlewares: El middleware de transmisión
    • [CONNECTION] grpcInterceptors: Los interceptores de gRPC.
  3. [GAPIC] useGapicV2Source: Indica si se debe usar o no la fuente de GAPIC v2. código cuando se crean clientes de servicio.

Validación de la configuración

Se verifican los parámetros de configuración cuando se crean instancias de clientes y excepciones se arrojan cuando no son válidas. Estas son las reglas:

  1. No se deben configurar los campos [OAUTH2] para el modo de aplicación y el servicio el Modo de cuenta al mismo tiempo.
  2. Se deben configurar [OAUTH2] jsonKeyFilePath y [OAUTH2] scopes cuando se usa el modo de cuenta de servicio.
  3. [OAUTH2] clientId, [OAUTH2] clientSecret y [OAUTH2] refreshToken deben cuando se usa el modo de aplicación.
  4. Siempre se debe establecer [GOOGLE_ADS] developerToken.
  5. Si se establece, [GOOGLE_ADS] loginCustomerId y [GOOGLE_ADS] linkedCustomerId deben ser números positivos.
  6. Si se establece, [CONNECTION] proxy debe ser una URL válida (consulta el filtro). FILTER_VALIDATE_URL).
  7. Si se establece, [LOGGING] logLevel debe ser un registro de PSP válido. nivel en mayúsculas, como INFO.
  8. Si se configura, [CONNECTION] transport debe ser grpc o rest.
  9. Si [CONNECTION] transport se configura como grpc, el transporte de gRPC debe compatibles con el entorno (consulta la guía de transporte).
  10. [CONNECTION] grpcChannelIsSecure debe ser true cuando [CONNECTION] transport no se establece en grpc.
  11. [CONNECTION] grpcChannelCredential solo se puede establecer cuando [CONNECTION] transport se establece en grpc.
  12. [CONNECTION] grpcChannelCredential solo se puede configurar cuando [CONNECTION] grpcChannelIsSecure es true.