خدمة حملات DoubleClick

تتيح لك خدمة "حملات DoubleClick" استخدام واجهة برمجة التطبيقات لإعداد التقارير وتتبُّع أداء الحملات في DCM/DFA في "برمجة تطبيقات Google". توفّر واجهة برمجة التطبيقات هذه إمكانية الوصول الآلي إلى تقارير DoubleClick Campaign Manager‏ (DCM) وDoubleClick Digital Marketing‏ (DDM).

مراجع

للحصول على معلومات مفصّلة عن هذه الخدمة، يُرجى الاطّلاع على المستندات المرجعية الخاصة بواجهة برمجة التطبيقات DCM/DFA Reporting and Trafficking API. مثل جميع الخدمات المتقدّمة في Apps Script، تستخدم خدمة "حملات DoubleClick" العناصر والطرق والمعلَمات نفسها المستخدَمة في واجهة برمجة التطبيقات العامة. لمزيد من المعلومات، اطّلِع على كيفية تحديد تواقيع الطرق.

للإبلاغ عن مشاكل والعثور على دعم آخر، راجِع دليل الدعم الخاص بإعداد التقارير وإدارة الحملات في "إدارة حملات DoubleClick" و"إدارة إعلانات DoubleClick".

نموذج التعليمات البرمجية

يستخدم نموذج الرمز البرمجي أدناه الإصدار 4 من واجهة برمجة التطبيقات.

الحصول على قائمة بملفات المستخدمين

تسجّل هذه العيّنة جميع الملفات الشخصية للمستخدمين المتوفّرة في الحساب.

advanced/doubleclick.gs
/**
 * Logs all of the user profiles available in the account.
 */
function listUserProfiles() {
  // Retrieve the list of available user profiles
  try {
    const profiles = DoubleClickCampaigns.UserProfiles.list();

    if (profiles.items) {
      // Print out the user ID and name of each
      for (let i = 0; i < profiles.items.length; i++) {
        const profile = profiles.items[i];
        console.log('Found profile with ID %s and name "%s".',
            profile.profileId, profile.userName);
      }
    }
  } catch (e) {
    // TODO (Developer) - Handle exception
    console.log('Failed with error: %s', e.error);
  }
}

الحصول على قائمة بالحملات النشطة

تسجّل هذه العيّنة أسماء وأرقام تعريف جميع الحملات النشطة. يُرجى العِلم أنّه يتم استخدام رموز مميّزة خاصة بتقسيم المحتوى إلى صفحات لاسترداد القائمة بأكملها.

advanced/doubleclick.gs
/**
 * Logs names and ID's of all active campaigns.
 * Note the use of paging tokens to retrieve the whole list.
 */
function listActiveCampaigns() {
  const profileId = '1234567'; // Replace with your profile ID.
  const fields = 'nextPageToken,campaigns(id,name)';
  let result;
  let pageToken;
  try {
    do {
      result = DoubleClickCampaigns.Campaigns.list(profileId, {
        'archived': false,
        'fields': fields,
        'pageToken': pageToken
      });
      if (result.campaigns) {
        for (let i = 0; i < result.campaigns.length; i++) {
          const campaign = result.campaigns[i];
          console.log('Found campaign with ID %s and name "%s".',
              campaign.id, campaign.name);
        }
      }
      pageToken = result.nextPageToken;
    } while (pageToken);
  } catch (e) {
    // TODO (Developer) - Handle exception
    console.log('Failed with error: %s', e.error);
  }
}

إنشاء معلِن وحملة جديدَين

ينشئ هذا النموذج معلِنًا جديدًا، وينشئ حملة جديدة باستخدام هذا المعلِن. تم ضبط الحملة على أن تستمر لمدة شهر واحد.

advanced/doubleclick.gs
/**
 * Creates a new advertiser, and creates a new campaign with that advertiser.
 * The campaign is set to last for one month.
 */
function createAdvertiserAndCampaign() {
  const profileId = '1234567'; // Replace with your profile ID.

  const advertiser = {
    name: 'Example Advertiser',
    status: 'APPROVED'
  };

  try {
    const advertiserId = DoubleClickCampaigns.Advertisers
        .insert(advertiser, profileId).id;

    const landingPage = {
      advertiserId: advertiserId,
      archived: false,
      name: 'Example landing page',
      url: 'https://www.google.com'
    };
    const landingPageId = DoubleClickCampaigns.AdvertiserLandingPages
        .insert(landingPage, profileId).id;

    const campaignStart = new Date();
    // End campaign after 1 month.
    const campaignEnd = new Date();
    campaignEnd.setMonth(campaignEnd.getMonth() + 1);

    const campaign = {
      advertiserId: advertiserId,
      defaultLandingPageId: landingPageId,
      name: 'Example campaign',
      startDate: Utilities.formatDate(campaignStart, 'GMT', 'yyyy-MM-dd'),
      endDate: Utilities.formatDate(campaignEnd, 'GMT', 'yyyy-MM-dd')
    };
    DoubleClickCampaigns.Campaigns.insert(campaign, profileId);
  } catch (e) {
    // TODO (Developer) - Handle exception
    console.log('Failed with error: %s', e.error);
  }
}