Google Ads API PHP 클라이언트 라이브러리는 라이브러리 동작을 맞춤설정하는 데 사용할 수 있습니다.
구성 파일
이러한 구성 설정 대부분은
ini
파일을 만들고 클라이언트를 인스턴스화할 때 사용합니다. 예를 들어
google_ads_php.ini
사용자 인증 정보와 클라이언트 빌더는 둘 다 로드할 fromFile
메서드를 제공합니다.
다음과 같이 설정합니다.
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile('/path/to/google_ads_php.ini')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile('/path/to/google_ads_php.ini')
->withOAuth2Credential($oAuth2Credential)
->build();
인수로 제공된 구성 파일 경로가 없으면 fromFile
메서드는 다음과 같은 기본 구성 파일 경로에서 로드됩니다.
- 이름이
설정된 경우
GOOGLE_ADS_CONFIGURATION_FILE_PATH
입니다. - 그 외의 경우에는
HOME
디렉터리의google_ads_php.ini
파일입니다.
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile()
->withOAuth2Credential($oAuth2Credential)
->build();
동적 구성
클라이언트를 인스턴스화할 때 이러한 구성 설정을 동적으로 설정할 수 있습니다.
$oAuth2Credential = (new OAuth2TokenBuilder())
->withClientId('INSERT_CLIENT_ID')
// ...
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
// ...
->build();
구성 환경 변수
gcloud 명령어를 사용하거나 실행하지 않을 때 환경 변수에서 인스턴스화하고 (자세한 내용은 목록 참조).
사용자 인증 정보와 클라이언트 빌더는 모두 fromEnvironmentVariables
를 제공합니다.
메서드를 사용하여 환경 변수에서 설정을 로드합니다.
$oAuth2Credential = (new OAuth2TokenBuilder())
// ...
->fromEnvironmentVariables()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->fromEnvironmentVariables()
->build();
구성 필드
구성 설정은 카테고리별로 구성된 여러 필드를 지원합니다.
OAuth2TokenBuilder
에서 사용하는 필드:- 애플리케이션 모드
[OAUTH2] clientId
: OAuth2 클라이언트 ID입니다.[OAUTH2] clientSecret
: OAuth2 클라이언트 보안 비밀번호입니다.[OAUTH2] refreshToken
: OAuth2 갱신 토큰입니다.
- 서비스 계정 모드
[OAUTH2] jsonKeyFilePath
: JSON 키 파일 경로입니다.[OAUTH2] scopes
: 범위입니다.[OAUTH2] impersonatedEmail
: 가장할 이메일입니다.
- 애플리케이션 모드
GoogleAdsClientBuilder
에서 사용하는 필드:[GOOGLE_ADS] developerToken
: API에 액세스하기 위한 개발자 토큰입니다.[GOOGLE_ADS] loginCustomerId
: 승인된 ID 고객을 요청에 사용할 수 있습니다.[GOOGLE_ADS] linkedCustomerId
: 연결된 고객 ID입니다.[LOGGING] logFilePath
: 로깅을 위한 파일 경로입니다.[LOGGING] logLevel
: 로깅 수준입니다.[CONNECTION] proxy
: 인터넷 연결에 사용되는 프록시 서버 URL입니다.[CONNECTION] transport
: 전송입니다.[CONNECTION] grpcChannelIsSecure
: gRPC 채널이 안전한지 아닙니다.[CONNECTION] grpcChannelCredential
: gRPC 채널 사용자 인증 정보입니다.[CONNECTION] unaryMiddlewares
: 단항 미들웨어입니다.[CONNECTION] streamingMiddlewares
: 스트리밍 미들웨어입니다.[CONNECTION] grpcInterceptors
: gRPC 인터셉터입니다.
[GAPIC] useGapicV2Source
: GAPIC v2 소스 사용 여부 서비스 클라이언트를 만들 때 코드를 생성합니다.
구성 검증
클라이언트 및 예외를 인스턴스화할 때 구성 설정을 확인합니다. 잘못된 경우 발생합니다 규칙은 다음과 같습니다.
- 애플리케이션 모드와 서비스 모두에
[OAUTH2]
필드를 설정하면 안 됩니다. 동시에 계정 모드로 전환하세요. [OAUTH2] jsonKeyFilePath
및[OAUTH2] scopes
는 서비스 계정 모드입니다[OAUTH2] clientId
,[OAUTH2] clientSecret
,[OAUTH2] refreshToken
은(는) 다음을 충족해야 합니다. 애플리케이션 모드를 사용할 때 설정해야 합니다.[GOOGLE_ADS] developerToken
는 항상 설정해야 합니다.- 설정된 경우
[GOOGLE_ADS] loginCustomerId
및[GOOGLE_ADS] linkedCustomerId
양수여야 합니다. - 설정할 경우
[CONNECTION] proxy
은(는) 유효한 URL이어야 합니다(필터 참조). FILTER_VALIDATE_URL). - 설정된 경우
[LOGGING] logLevel
는 유효한 PSR 로그여야 합니다. 등급 대문자(예:INFO
) - 설정하는 경우
[CONNECTION] transport
는grpc
또는rest
여야 합니다. [CONNECTION] transport
가grpc
로 설정된 경우 gRPC 전송은 지원되는 환경입니다 (전송 가이드 참고).[CONNECTION] transport
가grpc
로 설정되지 않은 경우[CONNECTION] grpcChannelIsSecure
는true
여야 합니다.[CONNECTION] transport
가grpc
로 설정된 경우에만[CONNECTION] grpcChannelCredential
를 설정할 수 있습니다.[CONNECTION] grpcChannelIsSecure
가true
인 경우에만[CONNECTION] grpcChannelCredential
를 설정할 수 있습니다.