Skip to content

API ringan untuk mengambil data dari Google Spreadsheet publik dan mengubahnya menjadi format JSON atau TSV. Dibangun menggunakan Cloudflare Workers dengan dukungan query parameter. Cocok untuk kebutuhan data publik, sekolah, pendidikan, dan integrasi frontend tanpa backend.

Notifications You must be signed in to change notification settings

arv-fazriansyah/spreadsheet-to-json-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 

Repository files navigation


📄 Spreadsheet ke JSON / TSV API dengan Cloudflare Worker — Lengkap dengan Query Parameter

Buat REST API ringan dari Google Spreadsheet hanya dengan Cloudflare Worker. Script ini mengubah spreadsheet publik menjadi data JSON atau TSV yang dapat difilter dengan parameter URL.


🚀 Fitur Utama

✅ Mengubah Google Spreadsheet publik menjadi API JSON atau TSV
✅ Mendukung query parameter seperti ?nama=Andi untuk filter data
✅ Output otomatis sesuai kebutuhan: JSON (default) atau TSV
✅ Dapat digunakan untuk:

  • Menyediakan data publik berbasis spreadsheet
  • Backend ringan tanpa server (serverless)
  • Aplikasi pendidikan, data sekolah, atau data statistik
  • Integrasi langsung ke frontend HTML, React, dsb.

🔧 Cara Menggunakan Google Spreadsheet sebagai Sumber API

  1. Buka Google Spreadsheet yang ingin digunakan

  2. Klik tombol Bagikan (kanan atas)

  3. Ubah setelan menjadi:

    • Siapa saja yang memiliki link
    • Akses: Sebagai Pelihat
  4. Salin ID spreadsheet dari URL, contoh:

https://docs.google.com/spreadsheets/d/15j2EfsDVTBJ6xLlnCqi3Nn1R52FSCrHWp6G1FgXXxnE/edit?usp=sharing

ID Spreadsheet (contoh):

15j2EfsDVTBJ6xLlnCqi3Nn1R52FSCrHWp6G1FgXXxnE

⚙️ Cara Deploy ke Cloudflare Worker

1. Buat Worker di Cloudflare

2. Tempelkan Script

  • Hapus kode bawaan
  • Salin script dari worker.js

3. Tambah Environment Variable

Masuk ke tab: Settings → Variables

Nama Nilai (Value)
data 15j2EfsDVTBJ6xLlnCqi3Nn1R52FSCrHWp6G1FgXXxnE

4. Deploy

  • Klik Save and Deploy
  • Salin URL akhir Worker, misal: https://your-worker-url.workers.dev

⚙️ Konfigurasi Kode Worker

const sheetConfigs = {
  "data": {         // Ganti "data" sesuai kebutuhan untuk Endpoint Anda
    id: env.data,   // ID spreadsheet (disimpan di Environment Variable)
    gid: "0",       // GID dari sheet (lihat di URL Google Sheets)
    range: "A:Z",   // Kolom yang akan diambil
    output: "json", // Format output default: json atau tsv
    enabled: false, // Jika false → endpoint ini tidak aktif hanya bisa di akses melalui parameter

    // 🔓 Hilangkan atau kosongkan ini agar semua query diizinkan
    // allowedParams: ["token", "id", "gid"]
  }
};

🔍 Contoh Penggunaan API

✅ Ambil semua data:

https://your-worker-url.workers.dev/data

🔎 Filter berdasarkan kolom (misal: nama):

https://your-worker-url.workers.dev/data?nama=Andi

📝 Output sebagai TSV:

  • Ubah output: "tsv" pada konfigurasi
  • Maka hasil akan dalam format .tsv

🧪 Contoh Hasil JSON Otomatis

Spreadsheet:

NAMA KELAS JK
Andi 6A L

Query:

https://your-worker-url.workers.dev/data?nama=Andi

Hasil:

[
  {
    "NAMA": "Andi",
    "KELAS": "6A",
    "JK": "L"
  }
]

🛡️ Lisensi

Lisensi: MIT — Bebas digunakan untuk proyek pribadi, pendidikan, maupun komersial.


About

API ringan untuk mengambil data dari Google Spreadsheet publik dan mengubahnya menjadi format JSON atau TSV. Dibangun menggunakan Cloudflare Workers dengan dukungan query parameter. Cocok untuk kebutuhan data publik, sekolah, pendidikan, dan integrasi frontend tanpa backend.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published