Logo Kabupaten Penajam Paser Utara

Diskominfo

Kab. Penajam Paser Utara

Dokumentasi Teknis

Dokumentasi & Katalog API Resmi

Panduan integrasi teknis, spesifikasi endpoint, izin akses resource OPD, serta live sandbox tester

Logo Kab. Penajam Paser Utara
1

Gambaran Umum & Autentikasi

Layanan API Resmi Dinas Komunikasi dan Informatika Kabupaten Penajam Paser Utara dirancang sebagai jembatan integrasi data antar-OPD, akademisi, dan pengembang sistem. Seluruh endpoint menggunakan arsitektur RESTful berbasis HTTPS dengan respon standar JSON serta GeoJSON (khusus data spasial).

Metode Penyertaan Kredensial API Key

Setiap request HTTP wajib menyertakan token API Key resmi melalui salah satu dari metode standar di bawah ini:

1. Header Authorization (Direkomendasikan):Authorization: Bearer YOUR_API_KEY
Best Practice
2. Header Khusus x-api-key:x-api-key: YOUR_API_KEY
3. Parameter Query URL:https://diskominfo.penajamkab.go.id/api/v1/announcements?api_key=YOUR_API_KEY
2

Kebijakan Hak Akses Resource (Granular Scopes)

Untuk menjaga keamanan dan privasi data daerah, akses terhadap setiap kategori data diatur secara ketat oleh Administrator Diskominfo. Ketika mengajukan API Key, pemohon atau OPD dapat menentukan resource data yang diperlukan, dan Admin memiliki kendali penuh untuk memilih serta mengubah izin akses kapan saja.

Scope: news

Mengizinkan akses ke endpoint /api/v1/news untuk mengonsumsi berita daerah, artikel pimpinan, dan rilis pengumuman resmi.

Scope: announcements

Mengizinkan akses ke endpoint /api/v1/announcements untuk data pengumuman resmi kedinasan, surat edaran, dan informasi resmi pemkab.

Scope: wifi

Mengizinkan akses ke endpoint /api/v1/wifi untuk data sebaran titik internet gratis masyarakat, status perangkat, dan kapasitas bandwidth.

Scope: cctv

Mengizinkan akses ke endpoint /api/v1/cctv untuk metadata kamera pengawas kota dan link live streaming video HLS (.m3u8).

Pemberitahuan Hak Akses: Jika API Key Anda mencoba memanggil endpoint tanpa memiliki scope yang sesuai (misal: memanggil data pengumuman tetapi hanya diberikan izin news), server akan menolak dengan respon 403 Forbidden ({ "error": true, "message": "Forbidden" }).
Publikasi

Daftar Berita & Publikasi Daerah

Scope: news

Mengambil daftar artikel berita resmi Pemerintah Kabupaten Penajam Paser Utara dengan dukungan pencarian, penyaringan kategori, dan paginasi.

GET/api/v1/news

Parameter Permintaan (Query Parameters):

Geser tabel ↔
ParameterTipeSifatKeteranganContoh
searchstringOpsionalKata kunci pencarian judul atau isi beritaikn
categorystringOpsionalFilter kategori berita (contoh: Pemerintahan, Teknologi, Sosial)Pemerintahan
statusstringOpsionalStatus publikasi (published)published
limitintegerOpsionalJumlah data per halaman (default 20, max 100)10
offsetintegerOpsionalOffset data paginasi0

Contoh Kode Pemanggilan:

curl -X GET "https://diskominfo.penajamkab.go.id/api/v1/news?limit=5" \
  -H "Authorization: Bearer YOUR_API_KEY"

Contoh Respon JSON (HTTP 200 OK):

{
  "error": false,
  "message": "Success",
  "total": 154,
  "limit": 5,
  "offset": 0,
  "data": [
    {
      "id": "news_123",
      "title": "Bupati PPU Resmikan Akselerasi Transformasi Digital Pelayanan Publik",
      "slug": "bupati-ppu-resmikan-akselerasi-transformasi-digital",
      "category": "Pemerintahan",
      "date": "29 September 2026",
      "author": "Diskominfo PPU",
      "excerpt": "Pemerintah Kabupaten Penajam Paser Utara terus meningkatkan layanan satu data...",
      "image": "https://diskominfo.penajamkab.go.id/storage/webkominfo/sample.jpg"
    }
  ]
}
Publikasi

Pengumuman Resmi & Surat Edaran

Scope: announcements

Mengakses data pengumuman kedinasan resmi, surat edaran bupati, dan informasi penting Pemerintah Kabupaten Penajam Paser Utara.

GET/api/v1/announcements

Parameter Permintaan (Query Parameters):

Geser tabel ↔
ParameterTipeSifatKeteranganContoh
searchstringOpsionalKata kunci pencarian judul atau isi pengumumanedaran
limitintegerOpsionalBatas jumlah data yang dikembalikan (default 20, max 100)10
offsetintegerOpsionalOffset data paginasi0
idstringOpsionalAmbil data tunggal pengumuman berdasarkan IDann-101

Contoh Kode Pemanggilan:

curl -X GET "https://diskominfo.penajamkab.go.id/api/v1/announcements?limit=5" \
  -H "Authorization: Bearer YOUR_API_KEY"

Contoh Respon JSON (HTTP 200 OK):

{
  "error": false,
  "message": "Success",
  "total": 38,
  "limit": 5,
  "offset": 0,
  "data": [
    {
      "id": "ann-101",
      "title": "Surat Edaran Jam Kerja Pelayanan Publik Pemerintah Daerah PPU",
      "type": "Edaran",
      "urgent": true,
      "desc": "Diberitahukan kepada seluruh perangkat daerah dan masyarakat...",
      "date": "1 Oktober 2026"
    }
  ]
}
Infrastruktur

Titik Hotspot WiFi Publik

Scope: wifi

Mengambil data titik akses WiFi publik gratis yang dikelola oleh Diskominfo Penajam Paser Utara, lengkap dengan koordinat, nama lokasi, dan spesifikasi bandwidth layanan.

GET/api/v1/wifi

Parameter Permintaan (Query Parameters):

Geser tabel ↔
ParameterTipeSifatKeteranganContoh
searchstringOpsionalCari nama lokasi titik wifiAlun-alun
locationstringOpsionalFilter wilayah kecamatanPenajam
statusstringOpsionalFilter status konektivitas (Aktif / Nonaktif)Aktif
formatstringOpsionalOpsi format: "json" atau "geojson"json
limitintegerOpsionalMaksimum data yang diambil (default 100)50

Contoh Kode Pemanggilan:

curl -X GET "https://diskominfo.penajamkab.go.id/api/v1/wifi" \
  -H "Authorization: Bearer YOUR_API_KEY"

Contoh Respon JSON (HTTP 200 OK):

{
  "error": false,
  "message": "Success",
  "resource": "wifi",
  "total": 42,
  "count": 1,
  "limit": 50,
  "offset": 0,
  "data": [
    {
      "id": "wifi-mon-1",
      "name": "WiFi Publik - Taman Kantor Bupati",
      "category": "wifi",
      "location": "Kec. Penajam",
      "kecamatan": "Penajam",
      "status": "Aktif",
      "details": "100 Mbps • HSI BISNIS BUNDLING NETMONK FIX • 1 TAHUN",
      "bandwidth": "100 Mbps",
      "layanan": "HSI BISNIS BUNDLING NETMONK FIX",
      "period": 12,
      "orderNumber": "1,61101E+11",
      "ket2026": "1 TAHUN",
      "keterangan": "OK",
      "coordinates": {
        "lat": -1.2642,
        "lng": 116.7115
      }
    }
  ]
}
Infrastruktur

Kamera Pemantau CCTV Kota

Scope: cctv

Mengambil daftar titik kamera CCTV kota, area pantauan publik, pelabuhan, gedung kantor, serta URL streaming langsung format HLS (.m3u8).

GET/api/v1/cctv

Parameter Permintaan (Query Parameters):

Geser tabel ↔
ParameterTipeSifatKeteranganContoh
searchstringOpsionalCari lokasi kamera atau nama CCTVPelabuhan
statusstringOpsionalFilter status online kamera (Aktif, Nonaktif)Aktif
formatstringOpsionalFormat respon ("json" atau "geojson")json
limitintegerOpsionalJumlah kamera (default 100)20

Contoh Kode Pemanggilan:

curl -X GET "https://diskominfo.penajamkab.go.id/api/v1/cctv" \
  -H "Authorization: Bearer YOUR_API_KEY"

Contoh Respon JSON (HTTP 200 OK):

{
  "error": false,
  "message": "Success",
  "resource": "cctv",
  "total": 11,
  "count": 1,
  "limit": 20,
  "offset": 0,
  "data": [
    {
      "id": "c8",
      "name": "CCTV - Pintu Masuk Klotok",
      "category": "cctv",
      "location": "Kec. Penajam",
      "kecamatan": "Kec. Penajam",
      "area": "Publik",
      "jumlahTitik": 1,
      "status": "Aktif",
      "details": "Publik • Pintu Masuk Klotok",
      "videoId": "8",
      "streamUrl": "https://cctv.penajamkab.go.id/cam8/index.m3u8",
      "isOnline": true,
      "coordinates": {
        "lat": -1.24305,
        "lng": 116.77755
      }
    }
  ]
}
Infrastruktur

Sebaran Menara Telekomunikasi / BTS

Scope: tower

Mengakses sebaran koordinat menara telekomunikasi (BTS) di seluruh kecamatan Kabupaten Penajam Paser Utara lengkap dengan identitas pemilik menara, operator seluler, tinggi menara, dan alamat kelurahan.

GET/api/v1/towers

Parameter Permintaan (Query Parameters):

Geser tabel ↔
ParameterTipeSifatKeteranganContoh
searchstringOpsionalCari pemilik menara, operator, atau alamatProtelindo
locationstringOpsionalFilter wilayah kecamatan (Penajam, Waru, Babulu, Sepaku)Penajam
statusstringOpsionalFilter status operasional (Aktif)Aktif
formatstringOpsionalFormat respon ("json" atau "geojson")json
limitintegerOpsionalJumlah data per halaman (default 100, max 500)50
idstringOpsionalAmbil data tunggal menara berdasarkan IDbts-mon-22

Contoh Kode Pemanggilan:

curl -X GET "https://diskominfo.penajamkab.go.id/api/v1/towers?limit=5" \
  -H "Authorization: Bearer YOUR_API_KEY"

Contoh Respon JSON (HTTP 200 OK):

{
  "error": false,
  "message": "Success",
  "resource": "tower",
  "total": 132,
  "count": 1,
  "limit": 5,
  "offset": 0,
  "data": [
    {
      "id": "bts-mon-22",
      "name": "BTS Protelindo - Suka Maju Rt 03",
      "category": "tower",
      "location": "Kec. Penajam",
      "kecamatan": "Penajam",
      "status": "Aktif",
      "details": "Operator: Xl_Axiata,Esia • Tinggi: 52m",
      "pemilik": "Protelindo",
      "operator": "Xl_Axiata,Esia",
      "tinggi": 52,
      "tinggiMeter": "52m",
      "alamat": "Suka Maju Rt 03",
      "kelurahan": "Gunung_Sateleng",
      "coordinates": {
        "lat": -1.248486,
        "lng": 116.771648
      }
    }
  ]
}
3

Kode Status HTTP & Format Error

Semua error mengembalikan kode status HTTP standar disertai payload JSON berformat terstruktur agar mudah ditangani oleh aplikasi klien:

Kode StatusArtiPenyebab Umum
200 OKBerhasilPermintaan valid dan data berhasil diambil.
401 UnauthorizedKredensial Tidak ValidAPI Key tidak disertakan, token salah, atau belum disetujui admin.
403 ForbiddenIzin Resource DitolakAPI Key valid, namun Admin belum mengaktifkan izin untuk resource tersebut (misal scope announcements belum diberikan).
404 Not FoundTidak DitemukanID titik atau slug artikel yang dicari tidak ditemukan di database.
500 Server ErrorKesalahan InternalTerjadi kendala pada server database atau koneksi internal.

Contoh Respon 401 Unauthorized:

{
  "error": true,
  "message": "Unauthorized"
}

Contoh Respon 403 Forbidden:

{
  "error": true,
  "message": "Forbidden"
}