Connect to Insightly API using Google Scripts

You can use Google Apps Script to talk to the Insightly API and the project data can be integrated with other Google Services like Google Spreadsheet or Gmail. In a recent project, the Project details stored in Insightly CRM were saved as individual documents in Google Drive which were then shared with the project owner automatically.

function connectToInsightly(endp) {

  var key = "<<Insightly API Key>>";
  var api = "https://api.insight.ly" + endp;

  var response = UrlFetchApp.fetch(api, {
    muteHTTPexceptions: true,
    headers: {
      'Authorization': 'Basic ' + Utilities.base64Encode(key),
      'Content-Type': 'application/json'
    }
  });

  return JSON.parse(response.getContentText());

}

function getProjectDetails() {

  var endp = "/v2.1/Projects";
  var projects = connectToInsightly(endp);

  for (var p in projects) {
    Logger.log(projects[p]);
  }
}

function getCustomFields() {

  var endp = "/v2.1/CustomFields";
  var response = connectToInsightly(endp);
  var cf = {};

  for (var i in response) {
    cf[response[i].CUSTOM_FIELD_ID] = response[i].FIELD_NAME;
  }

  Logger.log(cf);

}