williamvicary
8/13/2017 - 1:19 PM

Cost Data Upload via Google Analytic's Management API with Google Sheets

Cost Data Upload via Google Analytic's Management API with Google Sheets

function uploadData() {
  var accountId = "xxxxxxxx";
  var webPropertyId = "UA-xxxxxxxx-x";
  var customDataSourceId = "xxxxxxxx";
  var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var maxRows = ss.getLastRow();
  var maxColumns = ss.getLastColumn();
  var data = [];
  for (var i = 1; i <= maxRows;i++) {
    data.push(ss.getRange([i], 1,1, maxColumns).getValues());
  }
  var newData = data.join("\n");
  var blobData = Utilities.newBlob(newData, "application/octet-stream", "GA import data");
  try {
    var upload = Analytics.Management.Uploads.uploadData(accountId, webPropertyId, customDataSourceId, blobData);
    SpreadsheetApp.getUi().alert("Uploading: OK");
  }
  catch(err) {
    SpreadsheetApp.getUi().alert("Cannot upload: Failed");
  }
}