Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124

Halo Developer ! Kali ini saya ingin share gimana caranya buat API (Application Programmable Interface) hanya dengan database menggunakan Google Sheets tanpa setting server dan lain lain karena semua sudah disediakan sama Google loh ! :).
Tutorial ini cocok buat kamu yang mau buat aplikasi Android maupun iOS yang gak seberapa bisa dalam dunia backend dan butuh cepat. Gimana caranya ? yuk Ikutin tutorial ini :



function doGet(request) {
var output = ContentService.createTextOutput();
var data = {};
var id = request.parameters.id;
var sheet = request.parameters.sheet;
var cell = request.parameters.cell;
var ss = SpreadsheetApp.openById(id);
if (sheet) {
if (cell) {
data = ss.getSheetByName(sheet).getRange(cell).getValue();
} else {
data = readData_(ss, sheet);
}
} else {
ss.getSheets().forEach(function(oSheet, iIndex) {
var sName = oSheet.getName();
if (! sName.match(/^_/)) {
data = readData_(ss, sName);
}
})
}
var result = cell ? data :JSON.stringify({status:'Success', data:data});
var callback = request.parameters.callback;
if (callback == undefined) {
output.setContent(result);
output.setMimeType(cell ? ContentService.MimeType.TEXT : ContentService.MimeType.JSON);
}
else {
output.setContent(callback + "(" + result + ")");
output.setMimeType(ContentService.MimeType.JAVASCRIPT);
}
return output;
}
function readData_(ss, sheetname, properties) {
if (typeof properties == "undefined") {
properties = getHeaderRow_(ss, sheetname);
properties = properties.map(function(p) { return p.replace(/\s+/g, '_'); });
}
var rows = getDataRows_(ss, sheetname);
var data = [];
for (var r = 0, l = rows.length; r < l; r++) {
var row = rows[r];
var record = {};
for (var p in properties) {
record[properties[p]] = row[p];
}
data.push(record);
}
return data;
}
function getDataRows_(ss, sheetname) {
var sh = ss.getSheetByName(sheetname);
return sh.getRange(2, 1, sh.getLastRow() - 1, sh.getLastColumn()).getValues();
}
function getHeaderRow_(ss, sheetname) {
var sh = ss.getSheetByName(sheetname);
return sh.getRange(1, 1, 1, sh.getLastColumn()).getValues()[0];
}
File diatas ini memberikan REST (Representational State Transfer) GET Request .



Itu tandanya url untuk API sudah jadi lalu langkah selanjutnya copy current web app URL itu ke browser atau Postman dengan tambahan seperti ini :https://script.google.com/macros/s/AKfycbw-GBAvvLoquYfg_rwYa_OwNB6KP27Py14G0uFfWWB-2cYtt9iT/exec?id=ID_GOOGLE_SHEET&sheet=HALAMAN_YANG_MAU DITAMPILIN

Sekarang kamu bisa mengganti response API itu dengan hal – hal yang kamu mau dengan hanya mengganti isi dari data Google Sheet yang kamu punya. Gampang banget kan ? 🙂
Penggunaan database menggunakan Google Sheet dan Google Script enggak hanya untuk nampilin data aja ya teman – teman 🙂 tetapi bisa juga untuk masukan data maupun update data bahkan bisa untuk upload foto loohhh….. dan langsung masuk ke Google Drive 🙂
Untuk tutorial selanjutnya mungkin saya akan jelasin ya , sebelum itu bila ada pertanyaan bisa langsung comment dibawah ini 🙂