Membuat API Publik dengan Google Spreadsheet — Data JSON untuk Website & Aplikasi

API Publik dari Spreadsheet

Anda bisa mengubah Google Spreadsheet menjadi API publik yang mengembalikan data JSON. Sangat berguna untuk: menyediakan data ke website statis, feed konten untuk aplikasi mobile, data referensi untuk tools online, dan banyak lagi. Semua gratis tanpa server!

Kode Apps Script untuk API Publik

function doGet(e) {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var data = sheet.getDataRange().getValues();
  var headers = data[0];
  var result = [];
  
  for (var i = 1; i < data.length; i++) {
    var row = {};
    for (var j = 0; j < headers.length; j++) {
      row[headers[j].toLowerCase().replace(/\s+/g, '_')] = data[i][j];
    }
    result.push(row);
  }
  
  var output = ContentService.createTextOutput(JSON.stringify(result, null, 2));
  output.setMimeType(ContentService.MimeType.JSON);
  
  // CORS headers untuk akses dari domain manapun
  output.setHeaders({
    "Access-Control-Allow-Origin": "*",
    "Access-Control-Allow-Methods": "GET",
    "Cache-Control": "no-cache, no-store, must-revalidate"
  });
  
  return output;
}

Contoh Penggunaan API

// 1. Fetch dari JavaScript (website)
fetch('https://script.google.com/macros/s/YOUR_SCRIPT_ID/exec')
  .then(r => r.json())
  .then(data => {
    console.log(data);
    // Render data ke halaman
  });

// 2. Fetch dari Node.js (backend)
const fetch = require('node-fetch');
fetch('https://script.google.com/macros/s/YOUR_SCRIPT_ID/exec')
  .then(r => r.json())
  .then(console.log);

// 3. Fetch dari Python (script/data processing)
import requests, json
response = requests.get('https://script.google.com/macros/s/YOUR_SCRIPT_ID/exec')
data = response.json()
print(json.dumps(data, indent=2))

Struktur Data yang Direkomendasikan

Untuk hasil API yang optimal, atur spreadsheet dengan format:

  • Baris 1: Header/nama field (contoh: id, nama, kategori, harga, deskripsi)
  • Baris 2+: Data (satu baris per item)
  • Gunakan format data yang konsisten (angka tanpa Rp, tanggal format ISO)
  • Hindari sel kosong di tengah data

Kesimpulan

API publik dari Google Spreadsheet adalah solusi data backend instan untuk prototipe, proyek open source, dan aplikasi dengan traffic rendah. Dengan CORS yang diatur dengan benar, API ini bisa dikonsumsi dari website manapun. Cocok untuk: data produk, daftar harga, direktori, jadwal, dan referensi publik lainnya.

Tutorial API Publik Google Spreadsheet & Apps Script — Web App Builder Collection

Post a Comment for "Membuat API Publik dengan Google Spreadsheet — Data JSON untuk Website & Aplikasi"