Playing with Google Docs Scripts and Get Satisfaction
Sometimes I do things that don’t really have a point… yet. One of them was pulling some information from GetSatisfaction (GSFN) to a Google Docs Spreadsheet (GDS). GSFN has an API that returns everything in JSON, so writing script in a GDS to pull in that information is quite easy.
The first step is to create a spreadsheet in Google Docs. Â This will act as a container for the data.
The second step is to create a script to parse the JSON output and put it in the spreadsheet. Â An example of this, which is a script I used to only get the topic, date, and type of topic (question, idea, problem, or praise). Â It’s simple, and it can be expanded on. Â But for the sake of example, here it is:
function fillGSFN() { var r=1; for(var page=89;page<200;page++){ var jsondata = UrlFetchApp.fetch("http://api.getsatisfaction.com/companies/{COMPANY}/topics.json?page="+page); var object = Utilities.jsonParse(jsondata.getContentText()); var ss=SpreadsheetApp.getActiveSpreadsheet(); var sheet=ss.getSheets()[0]; for(var i in object.data){ sheet.getRange(r, 1).setValue(object.data[i].subject); sheet.getRange(r,2).setValue(object.data[i].created_at); sheet.getRange(r,3).setValue(object.data[i].style); r++; } if(i!="14") return 1; //This was not a full page } }
This script is still a work in progress, and there are better ways to consume a JSON feed, but for what I was doing, this was a nice quick-and-simple way to do it.
Tags: GetSatisfaction, Google, Google Docs, JSON, Spreadsheet