DoubleClick 广告系列服务
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
借助 DoubleClick Campaigns 服务,您可以在 Apps 脚本中使用 DCM/DFA Reporting and Trafficking API。此 API 可让您以编程方式访问 DoubleClick Campaign Manager (DCM) 和 DoubleClick Digital Marketing (DDM) 报告。
参考
如需详细了解此服务,请参阅 DCM/DFA Reporting and Trafficking API 的参考文档。与 Apps 脚本中的所有高级服务一样,DoubleClick Campaigns 服务使用的对象、方法和参数均与公共 API 相同。如需了解详情,请参阅方法签名是如何确定的。
如需报告问题并寻求其他支持,请参阅 DCM/DFA Reporting and Trafficking 支持指南。
示例代码
以下示例代码使用 API 的版本 4。
获取用户个人资料列表
此示例会记录账号中所有可用的用户个人资料。
获取有效广告系列的列表
此示例会记录所有有效广告系列的名称和 ID。请注意,我们使用了分页令牌来检索整个列表。
制作新的广告客户和广告系列
此示例会创建一个新的广告客户,并使用该广告客户创建一个新的广告系列。广告系列的投放时长设置为一个月。
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-08-31。
[null,null,["最后更新时间 (UTC):2025-08-31。"],[[["\u003cp\u003eThe DoubleClick Campaigns service enables programmatic access to DoubleClick Campaign Manager (DCM) and DoubleClick Digital Marketing (DDM) Reporting within Apps Script.\u003c/p\u003e\n"],["\u003cp\u003eIt's an advanced service that requires enabling before use and mirrors the functionality of the DCM/DFA Reporting and Trafficking API.\u003c/p\u003e\n"],["\u003cp\u003eProvided sample code demonstrates how to list user profiles, get active campaigns, and create advertisers and campaigns using the service.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can leverage the service to automate tasks, extract data, and manage DCM/DDM entities directly from their Apps Script projects.\u003c/p\u003e\n"]]],[],null,["# DoubleClick Campaigns Service\n\nThe DoubleClick Campaigns service allows you to use the\n[DCM/DFA Reporting and Trafficking API](/doubleclick-advertisers/reporting)\nin Apps Script. This API provides programmatic access to DoubleClick Campaign\nManager (DCM) and DoubleClick Digital Marketing (DDM) Reporting.\n| **Note:** This is an advanced service that must be [enabled before use](/apps-script/guides/services/advanced).\n\nReference\n---------\n\nFor detailed information on this service, see the\n[reference documentation](/doubleclick-advertisers/rest/v4) for the\nDCM/DFA Reporting and Trafficking API. Like all advanced services in Apps\nScript, the DoubleClick Campaigns service uses the same objects, methods, and\nparameters as the public API. For more information, see [How method signatures are determined](/apps-script/guides/services/advanced#how_method_signatures_are_determined).\n\nTo report issues and find other support, see the\n[DCM/DFA Reporting and Trafficking support guide](/doubleclick-advertisers/get-support).\n\nSample code\n-----------\n\nThe sample code below uses\n[version 4](/doubleclick-advertisers/rest/v4) of the API.\n\n### Get a list of user profiles\n\nThis sample logs all of the user profiles available in the account. \nadvanced/doubleclick.gs \n[View on GitHub](https://github.com/googleworkspace/apps-script-samples/blob/main/advanced/doubleclick.gs) \n\n```javascript\n/**\n * Logs all of the user profiles available in the account.\n */\nfunction listUserProfiles() {\n // Retrieve the list of available user profiles\n try {\n const profiles = DoubleClickCampaigns.UserProfiles.list();\n\n if (profiles.items) {\n // Print out the user ID and name of each\n for (let i = 0; i \u003c profiles.items.length; i++) {\n const profile = profiles.items[i];\n console.log('Found profile with ID %s and name \"%s\".',\n profile.profileId, profile.userName);\n }\n }\n } catch (e) {\n // TODO (Developer) - Handle exception\n console.log('Failed with error: %s', e.error);\n }\n}\n```\n\n### Get a list of active campaigns\n\nThis sample logs names and ID's of all active campaigns. Note the use of\npaging tokens to retrieve the whole list. \nadvanced/doubleclick.gs \n[View on GitHub](https://github.com/googleworkspace/apps-script-samples/blob/main/advanced/doubleclick.gs) \n\n```javascript\n/**\n * Logs names and ID's of all active campaigns.\n * Note the use of paging tokens to retrieve the whole list.\n */\nfunction listActiveCampaigns() {\n const profileId = '1234567'; // Replace with your profile ID.\n const fields = 'nextPageToken,campaigns(id,name)';\n let result;\n let pageToken;\n try {\n do {\n result = DoubleClickCampaigns.Campaigns.list(profileId, {\n 'archived': false,\n 'fields': fields,\n 'pageToken': pageToken\n });\n if (result.campaigns) {\n for (let i = 0; i \u003c result.campaigns.length; i++) {\n const campaign = result.campaigns[i];\n console.log('Found campaign with ID %s and name \"%s\".',\n campaign.id, campaign.name);\n }\n }\n pageToken = result.nextPageToken;\n } while (pageToken);\n } catch (e) {\n // TODO (Developer) - Handle exception\n console.log('Failed with error: %s', e.error);\n }\n}\n```\n\n### Create a new advertiser and campaign\n\nThis sample creates a new advertiser, and creates a new campaign with that\nadvertiser. The campaign is set to last for one month. \nadvanced/doubleclick.gs \n[View on GitHub](https://github.com/googleworkspace/apps-script-samples/blob/main/advanced/doubleclick.gs) \n\n```javascript\n/**\n * Creates a new advertiser, and creates a new campaign with that advertiser.\n * The campaign is set to last for one month.\n */\nfunction createAdvertiserAndCampaign() {\n const profileId = '1234567'; // Replace with your profile ID.\n\n const advertiser = {\n name: 'Example Advertiser',\n status: 'APPROVED'\n };\n\n try {\n const advertiserId = DoubleClickCampaigns.Advertisers\n .insert(advertiser, profileId).id;\n\n const landingPage = {\n advertiserId: advertiserId,\n archived: false,\n name: 'Example landing page',\n url: 'https://www.google.com'\n };\n const landingPageId = DoubleClickCampaigns.AdvertiserLandingPages\n .insert(landingPage, profileId).id;\n\n const campaignStart = new Date();\n // End campaign after 1 month.\n const campaignEnd = new Date();\n campaignEnd.setMonth(campaignEnd.getMonth() + 1);\n\n const campaign = {\n advertiserId: advertiserId,\n defaultLandingPageId: landingPageId,\n name: 'Example campaign',\n startDate: Utilities.formatDate(campaignStart, 'GMT', 'yyyy-MM-dd'),\n endDate: Utilities.formatDate(campaignEnd, 'GMT', 'yyyy-MM-dd')\n };\n DoubleClickCampaigns.Campaigns.insert(campaign, profileId);\n } catch (e) {\n // TODO (Developer) - Handle exception\n console.log('Failed with error: %s', e.error);\n }\n}\n```"]]