← Blog
Artikel

BMKG API Key: Cara Dapat Akses Data Cuaca (dan Alternatif yang Lebih Simpel)

Panduan akses data BMKG lewat jalur resmi dan API Indonesia: registrasi, keterbatasan, format data, plus contoh kode curl dan JavaScript siap pakai.

Kalau Anda sedang cari "BMKG api key", ada dua jalur yang biasanya muncul: mengakses data BMKG secara langsung lewat jalur resmi, atau pakai API pihak ketiga yang sudah membungkus data BMKG jadi REST API yang rapi. Artikel ini membahas keduanya, biar Anda bisa pilih sesuai kebutuhan proyek.

Jalur 1: Akses Data BMKG Langsung

BMKG menyediakan beberapa kanal data publik:

Kanal Format Catatan
Satu Data BMKG (dataonline.bmkg.go.id) Registrasi akun, dataset unduhan Untuk dataset historis dan riset, perlu pendaftaran
web api.bmkg.go.id XML/JSON per kota Prakiraan cuaca per kota/kabupaten, tanpa API key
RSS peringatan dini XML Peringatan cuaca ekstrem, perlu parsing sendiri

Poin penting yang sering bikin developer bingung:

  • Tidak ada semacam dashboard "generate API key" untuk publik. Akses data historis dan layanan khusus biasanya lewat registrasi akun di dataonline.bmkg.go.id atau kerja sama formal.
  • Endpoint prakiraan publik format XML per kota, jadi Anda harus parsing sendiri dan menyusun ulang strukturnya.
  • Rate limit dan SLA tidak dijamin untuk endpoint publik. Kalau trafik aplikasi Anda naik, poling langsung ke server BMKG jadi tidak ideal, baik untuk Anda maupun untuk sumber datanya.
  • Dokumentasi teknis terbatas, sering kali developer harus merekayasa balik struktur response.

Jadi jawaban jujurnya: untuk banyak kasus, Anda tidak butuh "API key BMKG" sama sekali, Anda butuh data BMKG yang dikemas dalam format yang enak dipakai.

Jalur 2: Bungkus Simpel via API Indonesia

API Indonesia menyediakan endpoint cuaca dengan data bersumber dari BMKG, sudah di-cache dan dikembalikan sebagai JSON konsisten. Data diambil on-demand lalu di-cache 6 jam, dan response sudah berisi nama desa, kondisi cuaca, suhu, kelembapan, hingga kecepatan angin.

Yang Anda butuhkan hanya API key dari dashboard API Indonesia, registrasinya gratis dan langsung aktif.

Endpoint yang tersedia

Base URL: https://use.apiindonesia.id/api/v1

Method Endpoint Keterangan
GET /cuaca?adm4= Prakiraan 3 hari per desa/kelurahan (kode adm4)
GET /cuaca?kabupaten_id= Alternatif per kabupaten/kota
GET /cuaca/search?q= Cari kode adm4 berdasarkan nama lokasi

Contoh curl

curl "https://use.apiindonesia.id/api/v1/cuaca?adm4=32.73.01.1001" \
  -H "x-api-key: $API_INDONESIA_KEY"

Response (dipotong):

{
  "data": [
    {
      "adm4": "32.73.01.1001",
      "kotkab": "Kota Bandung",
      "datetime": "2026-07-06T01:00:00",
      "weather_desc": "Cerah Berawan",
      "temperature_c": 29,
      "humidity_percent": 62,
      "wind_speed": 3.5,
      "source": "BMKG"
    }
  ]
}

Contoh JavaScript

const BASE = "https://use.apiindonesia.id/api/v1";

async function cariLokasi(keyword) {
  const res = await fetch(`${BASE}/cuaca/search?q=${encodeURIComponent(keyword)}`, {
    headers: { "x-api-key": process.env.API_INDONESIA_KEY },
  });
  const { data } = await res.json();
  return data; // array berisi kode adm4
}

async function ambilCuaca(adm4) {
  const res = await fetch(`${BASE}/cuaca?adm4=${adm4}`, {
    headers: { "x-api-key": process.env.API_INDONESIA_KEY },
  });
  const { data } = await res.json();
  return data;
}

// Alur: cari lokasi dulu, lalu ambil prakiraannya
const lokasi = await cariLokasi("bandung");
const cuaca = await ambilCuaca(lokasi[0].adm4);
console.log(cuaca[0].weather_desc, cuaca[0].temperature_c, "C");

Kapan Pilih yang Mana?

  • Riset, tugas akhir, atau analisis dataset historis: jalur resmi BMKG via dataonline lebih cocok, karena butuh data mentah jangka panjang.
  • Aplikasi produsen (web/mobile) yang tampilkan prakiraan: API Indonesia lebih praktis. Format JSON, ada cache, ada search lokasi, dan Anda tidak perlu maintain parser XML sendiri.
  • Perlu peringatan dini cuaca ekstrem: API Indonesia juga punya endpoint peringatan dini yang datanya sudah dibungkus rapi.

Pelajari detail parameter lengkap di halaman API Cuaca Indonesia. Kalau kebutuhan Anda lebih ke sisi bencana, API Data Gempa BMKG juga bersumber dari BMKG dengan satu API key yang sama.

Mulai Sekarang

Dapatkan API key gratis di dashboard.apiindonesia.id/register, coba endpoint cuaca dalam hitungan menit, dan berhenti pusing-pusing parsing XML.

Mulai Sekarang

Mulai Integrasi
Hari Ini

Daftar gratis, ambil API key, dan langsung call endpoint pertama Anda — tanpa kartu kredit, tanpa proses approval yang ribet.

Visualisasi gelombang titik