Google Ads는 텍스트, 이미지, 모바일 광고 등 다양한 광고 유형을 지원합니다. 이 가이드에서는 Google Ads 스크립트를 사용하여 광고를 만들고, 검색하고, 보고하는 방법을 설명합니다. Google Ads에서 지원하는 모든 광고 유형에 대한 개요는 API 가이드를 참고하세요.
생성
스크립트는 인스턴스에서 메서드를 사용하여 광고를 만들 수 있습니다.newAd()AdGroup 그러면 지원되는 광고 유형의 빌더를 만드는
AdBuilderSpace
가 반환됩니다.
다음 스니펫은 반응형 검색 광고를 만드는 방법을 보여줍니다.
let adOperation = adGroup.newAd().responsiveSearchAdBuilder()
.withHeadlines(["Headline 1", "Headline 2", "Headline 3"])
.withDescriptions(["Description 1", "Description 2"])
.withFinalUrl("http://www.example.com")
.withPath1("path1")
.withPath2("path2")
.build();
검사
모든 광고 유형과 연결된 일부 정보(예: 광고의 ID 및 승인 상태)는
Ad에서 즉시 확인할 수 있습니다. 또한 모든 광고를 일시중지, 사용 설정 또는 삭제할 수 있습니다.
반응형 검색 광고의 광고 제목과 같이 광고 유형과 관련된 필드에 액세스하려면 asType() 메서드를 사용하여 AdViewSpace를 만듭니다.
이렇게 하면 유형별 메서드를 노출하는 확장된 버전의
Ad에 액세스할 수 있습니다.
다음 스니펫은 모든 반응형 검색 광고의 광고 제목을 가져옵니다.
const iterator = AdsApp.ads().withCondition("Type = RESPONSIVE_SEARCH_AD").get();
while (iterator.hasNext()) {
let ad = iterator.next();
let responsiveSearchAd = ad.asType().responsiveSearchAd();
let headlines = responsiveSearchAd.getHeadlines();
}
Type = RESPONSIVE_SEARCH_AD 조건은 반복기의 모든 광고가 반응형 검색 광고임을 보장합니다. 잘못된 유형의 광고를 보려고 하면 스크립트 실행이 중지되는 오류가 발생하므로 광고 유형을 알고 있는 경우에만 유형별 필드를 보는 것이 중요합니다.
다음 스니펫은 광고가 올바른 유형인지 확인하는 방법을 보여줍니다.
다음을 사용하여
Ad.isType()
메서드:
if (ad.isType().responsiveSearchAd()) {
let responsiveSearchAd = ad.asType().responsiveSearchAd();
let headlines = responsiveSearchAd.getHeadlines();
let descriptions = responsiveSearchAd.getDescriptions();
}
표준 선택 도구를 사용하여 광고 제목 텍스트로 광고를 필터링할 수는 없지만 검색한 후 JavaScript에서 필터링할 수 있습니다.
const iterator = AdsApp.ads().withCondition("Type = RESPONSIVE_SEARCH_AD").get();
while (iterator.hasNext()) {
let ad = iterator.next();
let responsiveSearchAd = ad.asType().responsiveSearchAd();
let headlines = responsiveSearchAd.getHeadlines();
// Filter for ads containing a specific headline.
if (headlines.some(h => h.getText().includes("Special Offer"))) {
console.log(`Found ad with ID ${ad.getId()}`);
}
}
보고
ad_group_ad 뷰를 사용하여 일반 통계 외에 광고 필드를 쿼리할 수 있습니다. 예를 들어
광고 유형을 기준으로
ad_group_ad.ad.type를 사용하여 필터링할 수 있습니다.
다음 스니펫은 모든 반응형 검색 광고의 통계를 검색하는 방법을 보여줍니다.
const results = AdsApp.search(
"SELECT ad_group_ad.ad_group.id, " +
"ad_group_ad.ad.id, " +
"metrics.clicks, " +
"metrics.impressions, " +
"metrics.cost " +
"FROM ad_group_ad " +
"WHERE ad_group_ad.ad.type = 'RESPONSIVE_SEARCH_AD' " +
"AND segments.date DURING LAST_7_DAYS");
while (results.hasNext()) {
let row = results.next();
let adId = row.adGroupAd.ad.id;
let clicks = row.metrics.clicks;
...
}
애셋 콘텐츠별 필터링
반응형 검색 광고를 광고 제목 또는
설명의 콘텐츠별로 대규모로 필터링하려면
ad_group_ad_asset_view
리소스를 사용하세요. 이 뷰는 각 광고 제목과 설명을 별도의 행으로 처리하므로 애셋의 텍스트를 기준으로 필터링할 수 있습니다.
다음 스니펫은 특정 광고 제목이 포함된 모든 반응형 검색 광고의 통계를 검색합니다.
const results = AdsApp.search(
"SELECT ad_group_ad.ad.id, " +
"asset.text_asset.text, " +
"metrics.clicks, " +
"metrics.impressions " +
"FROM ad_group_ad_asset_view " +
"WHERE asset.text_asset.text LIKE '%Special Offer%' " +
"AND ad_group_ad_asset_view.field_type = 'HEADLINE'");
while (results.hasNext()) {
let row = results.next();
let adId = row.adGroupAd.ad.id;
let text = row.asset.textAsset.text;
let clicks = row.metrics.clicks;
console.log(`Ad ID ${adId} with headline "${text}" had ${clicks} clicks.`);
}
스크립트의 보고에 대한 자세한 내용은 보고 가이드를 참고하세요.