قیمت

پسوند قیمت ایجاد کنید

function createPrice() {
 
// For full details on creating a new price item, see:
 
// https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_priceitembuilder
 
const priceItem1 = AdsApp.extensions().newPriceItemBuilder()
     
// Replace the values below with your preferred header, description,
     
// amount, currency code, unit type, final url, and mobile final url.
     
.withHeader('header1')                        // required
     
.withDescription('description1')              // required
     
.withAmount(1000000)                          // required
     
.withCurrencyCode('USD')                      // required
     
// Unit type must be one of: 'PER_HOUR', 'PER_DAY', 'PER_WEEK', 'PER_MONTH', 'PER_YEAR',
     
// or 'PER_NIGHT'
     
.withUnitType('PER_DAY')                      // required
     
.withFinalUrl('https://www.google.com')
     
.withMobileFinalUrl('https://www.google.com') // required
     
.build()
     
.getResult();

 
const priceItem2 = AdsApp.extensions().newPriceItemBuilder()
     
// Replace the values below with your preferred header, description,
     
// amount, currency code, unit type, final url, and mobile final url.
     
.withHeader('header2')                        // required
     
.withDescription('description2')              // required
     
.withAmount(2000000)                          // required
     
.withCurrencyCode('USD')                      // required
     
// Unit type must be one of: 'PER_HOUR', 'PER_DAY', 'PER_WEEK', 'PER_MONTH', 'PER_YEAR',
     
// or 'PER_NIGHT'
     
.withUnitType('PER_HOUR')                     // required
     
.withFinalUrl('https://www.google.com')       // required
     
.withMobileFinalUrl('https://www.google.com') // required
     
.build()
     
.getResult();

 
const priceItem3 = AdsApp.extensions().newPriceItemBuilder()
     
// Replace the values below with your preferred header, description,
     
// amount, currency code, unit type, final url, and mobile final url.
     
.withHeader('header3')                        // required
     
.withDescription('description3')              // required
     
.withAmount(3000000)                          // required
     
.withCurrencyCode('USD')                      // required
     
// Unit type must be one of: 'PER_HOUR', 'PER_DAY', 'PER_WEEK', 'PER_MONTH', 'PER_YEAR',
     
// or 'PER_NIGHT'
     
.withUnitType('PER_WEEK')                     // required
     
.withFinalUrl('https://www.google.com')       // required
     
.withMobileFinalUrl('https://www.google.com') // required
     
.build()
     
.getResult();

 
// For full details on creating a new price extension, see:
 
// https://developers.google.com/google-ads/scripts/docs/reference/adsapp/adsapp_pricebuilder
 
const newPrice = AdsApp.extensions().newPriceBuilder()
     
// Replace the values below with your preferred price type, language
     
// price qualifier, and tracking template
     
.withPriceType('PRODUCT_CATEGORIES')                  // required
     
.withLanguage('EN')                                   // required
     
// Price qualifier must be one of: 'FROM', 'UP_TO', 'AVERAGE'
     
.withPriceQualifier('UP_TO')                          // optional
     
.withTrackingTemplate('http://www.example.com/track') // optional
     
.addPriceItem(priceItem1)
     
.addPriceItem(priceItem2)
     
.addPriceItem(priceItem3)
     
.build()
     
.getResult();

 
// Add price to a campaign
 
const campaignIterator = AdsApp.campaigns()
     
.withCondition('campaign.name = "INSERT_CAMPAIGN_NAME_HERE"')
     
.get();
 
if (campaignIterator.hasNext()) {
   
const campaign = campaignIterator.next();
    campaign
.addPrice(newPrice);
 
}

 
// Add price to an ad group
 
const adGroupIterator = AdsApp.adGroups()
     
.withCondition('campaign.name = "INSERT_CAMPAIGN_NAME_HERE"')
     
.withCondition('ad_group.name = "INSERT_AD_GROUP_NAME_HERE"')
     
.get();
 
if (adGroupIterator.hasNext()) {
   
const adGroup = adGroupIterator.next();
    adGroup
.addPrice(newPrice);
 
}

 
// Add price to an account
 
const account = AdsApp.currentAccount();
  account
.addPrice(newPrice);
}

جزئیات قیمت یک کمپین را ثبت کنید

function logPriceDetails() {
 
// Get a campaign.
 
const campaignIterator = AdsApp.campaigns()
     
.withCondition('campaign.name = "INSERT_CAMPAIGN_NAME_HERE"')
     
.get();
 
if (!campaignIterator.hasNext()) {
   
throw new Error('Campaign not found.');
 
}
 
const campaign = campaignIterator.next();

 
// Retrieve the campaign's prices. Retrieving an ad group's and
 
// account's pricess is similar.
 
const priceIterator = campaign.extensions().prices().get();
 
for (const price of priceIterator) {
   
// You can also request reports for pre-defined date ranges. See
   
// https://developers.google.com/adwords/api/docs/guides/awql,
   
// DateRangeLiteral section for possible values.
   
const stats = price.getStatsFor('LAST_MONTH');

    console
.log(`Price extension price qualifier : ${ price.getPriceQualifier() }`);
    console
.log(`Price extension price type : ${ price.getPriceType() }`);
    console
.log(`mobile preferred : ${ price.isMobilePreferred() }`);
    console
.log(`clicks : ${ stats.getClicks() }`);
    console
.log(`impressions : ${ stats.getImpressions() }`);
    console
.log('=======');
 
}

  console
.log(`${priceIterator.totalNumEntities()} prices in the campaign`);
}

برای قیمت ها در یک کمپین زمان بندی تنظیم کنید

function setPriceSchedule() {
 
// Get a campaign.
 
const campaignIterator = AdsApp.campaigns()
     
.withCondition('campaign.name = "INSERT_CAMPAIGN_NAME_HERE"')
     
.get();
 
if (!campaignIterator.hasNext()) {
   
throw new Error('Campaign not found.');
 
}
 
const campaign = campaignIterator.next();

 
// Retrieve the campaign's prices. Retrieving an ad group's and
 
// account's saitelinks is similar.
 
const priceIterator = campaign.extensions().prices().get();

 
for (const price of priceIterator) {
   
if (price.getPriceType() == 'BRANDS') {
     
// Set price extension schedule to run only on Mondays and Tuesdays,
     
// 9 AM to 6 PM. You can follow a similar approach to set schedules for
     
// other ad extension types.
     
const monday = {
          dayOfWeek
: 'MONDAY',
          startHour
: 9,
          startMinute
: 0,
          endHour
: 18,
          endMinute
: 0
     
};

     
const tuesday = {
          dayOfWeek
: 'TUESDAY',
          startHour
: 9,
          startMinute
: 0,
          endHour
: 18,
          endMinute
: 0
     
};

      price
.setSchedules([monday, tuesday]);

     
return;
   
}
 
}
}