Bulk upload

Stay organized with collections Save and categorize content based on your preferences.

Bulk upload from Google Drive

function bulkUploadFromGoogleDrive() {
  // See https://developers.google.com/google-ads/scripts/docs/features/bulk-upload
  // for the list of supported bulk upload templates.
  // You can upload a CSV file, or an EXCEL sheet.
  const file = DriveApp.getFilesByName('BulkCampaignUpload.csv').next();
  const upload = AdsApp.bulkUploads().newFileUpload(file);
  upload.forCampaignManagement();

  // Use upload.apply() to make changes without previewing.
  upload.preview();
}

Bulk upload from remote server

function bulkUploadFromRemoteServer(csvFileUrl) {
  // See https://developers.google.com/google-ads/scripts/docs/features/bulk-upload
  // for the list of supported bulk upload templates.
  const blob = UrlFetchApp.fetch(csvFileUrl)
      .getBlob()
      .getAs(MimeType.CSV);

  const upload = AdsApp.bulkUploads().newFileUpload(blob);
  upload.forCampaignManagement();

  // Use upload.apply() to make changes without previewing.
  upload.preview();
}

Bulk upload from Google Sheets

function bulkUploadFromGoogleSpreadsheet(spreadsheetUrl) {
  // The format of this spreadsheet should match a valid bulk upload template.
  // See https://developers.google.com/google-ads/scripts/docs/features/bulk-upload
  // for the list of supported bulk upload templates.
  const spreadSheet = SpreadsheetApp.openByUrl(spreadsheetUrl);
  const sheet = spreadSheet.getActiveSheet();

  const upload = AdsApp.bulkUploads().newFileUpload(sheet);
  upload.forCampaignManagement();

  // Use upload.apply() to make changes without previewing.
  upload.preview();
}

Create/update campaigns

function createOrUpdateCampaigns() {
  // See https://developers.google.com/google-ads/scripts/docs/features/bulk-upload
  // for the list of supported bulk upload templates and their column names.
  const columns = [
    'Campaign', 'Budget', 'Bid Strategy type', 'Campaign type'
  ];

  const upload = AdsApp.bulkUploads().newCsvUpload(
      columns, {moneyInMicros: false});

  // Google Ads identify existing campaigns using its name. To create a new
  // campaign, use a campaign name that doesn't exist in your account.
  upload.append({
    'Campaign': 'Test Campaign 1',
    'Budget': 234,
    'Bid Strategy type': 'cpc',
    'Campaign type': 'Search Only'
  });
  // Use upload.apply() to make changes without previewing.
  upload.preview();
}