A biblioteca de cliente da API Google Ads para PHP oferece várias configurações que podem ser usadas para personalizar o comportamento da biblioteca.
Arquivo de configuração
É possível armazenar a maioria dessas configurações em
É possível armazenar a maioria dessas configurações em
ini
arquivos e usá-las ao instanciar clientes, por exemplo,
google_ads_php.ini.
Os criadores de credenciais e clientes oferecem métodos fromFile para carregar configurações desses arquivos:
$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 nenhum caminho de configuração for fornecido como argumento, os métodos fromFile serão carregados do caminho de configuração padrão, que é:
- O valor da variável de ambiente chamada
GOOGLE_ADS_CONFIGURATION_FILE_PATH, se definida. - Caso contrário, o arquivo
google_ads_php.inino diretórioHOME.
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile()
->withOAuth2Credential($oAuth2Credential)
->build();
Configuração dinâmica
É possível definir essas configurações dinamicamente ao instanciar clientes.
$oAuth2Credential = (new OAuth2TokenBuilder())
->withClientId('INSERT_CLIENT_ID')
// ...
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->build();
Variáveis de ambiente de configuração
É possível definir algumas das configurações das variáveis de ambiente ao instanciar clientes (consulte a lista completa).
Os criadores de credenciais e clientes oferecem métodos fromEnvironmentVariables para carregar configurações de variáveis de ambiente:
$oAuth2Credential = (new OAuth2TokenBuilder())
// ...
->fromEnvironmentVariables()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->fromEnvironmentVariables()
->build();
Campos de configuração
As configurações aceitam vários campos organizados em categorias.
- Campos usados por
OAuth2TokenBuilder:- Modo do aplicativo
[OAUTH2] clientId: seu ID de cliente OAuth2.[OAUTH2] clientSecret: sua chave secreta do cliente OAuth2.[OAUTH2] refreshToken: seu token de atualização do OAuth2.
- Modo de conta de serviço
[OAUTH2] jsonKeyFilePath: o caminho da chave Json.[OAUTH2] scopes: os escopos.[OAUTH2] impersonatedEmail: o e-mail a ser representado.
- Modo do aplicativo
- Campos usados por
GoogleAdsClientBuilder:[GOOGLE_ADS] loginCustomerId: o ID do cliente autorizado a ser usado na solicitação.[GOOGLE_ADS] linkedCustomerId: o ID do cliente vinculado.[LOGGING] logFilePath: o caminho para registro.[LOGGING] logLevel: o nível de registro.[CONNECTION] proxy: o URL do servidor proxy usado para conectividade com a Internet.[CONNECTION] transport: o transporte.[CONNECTION] grpcChannelIsSecure: indica se o canal gRPC é seguro ou não.[CONNECTION] grpcChannelCredential: as credenciais do canal gRPC.[CONNECTION] unaryMiddlewares: os middlewares unários.[CONNECTION] streamingMiddlewares: os middlewares de streaming.[CONNECTION] grpcInterceptors: os interceptores gRPC.
Validação de configuração
As configurações são verificadas ao instanciar clientes, e exceções são geradas quando inválidas. Confira as regras:
- Os campos
[OAUTH2]não podem ser definidos para o modo do aplicativo e o modo de conta de serviço ao mesmo tempo. [OAUTH2] jsonKeyFilePathe[OAUTH2] scopesprecisam ser definidos ao usar o modo de conta de serviço.[OAUTH2] clientId,[OAUTH2] clientSecrete[OAUTH2] refreshTokenprecisam ser definidos ao usar o modo do aplicativo.- Se definidos,
[GOOGLE_ADS] loginCustomerIde[GOOGLE_ADS] linkedCustomerIdprecisam ser números positivos. - Se definido,
[CONNECTION] proxyprecisa ser um URL válido (consulte o filtro FILTER_VALIDATE_URL). - Se definido,
[LOGGING] logLevelprecisa ser um nível de registro PSR válido em letras maiúsculas, comoINFO. - Se definido,
[CONNECTION] transportprecisa sergrpcourest. - Se
[CONNECTION] transportestiver definido comogrpc, o transporte gRPC precisa ser compatível com o ambiente (consulte o transporte do guia ). [CONNECTION] grpcChannelIsSecureprecisa sertruequando[CONNECTION] transportnão estiver definido comogrpc.[CONNECTION] grpcChannelCredentialsó pode ser definido quando[CONNECTION] transportestiver definido comogrpc.[CONNECTION] grpcChannelCredentialsó pode ser definido quando[CONNECTION] grpcChannelIsSecurefortrue.