Dokumentasi & Katalog API Resmi
Panduan integrasi teknis, spesifikasi endpoint, izin akses resource OPD, serta live sandbox tester

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:
Authorization: Bearer YOUR_API_KEYx-api-key: YOUR_API_KEYhttps://diskominfo.penajamkab.go.id/api/v1/announcements?api_key=YOUR_API_KEYKebijakan 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).
403 Forbidden ({ "error": true, "message": "Forbidden" }).Daftar Berita & Publikasi Daerah
Mengambil daftar artikel berita resmi Pemerintah Kabupaten Penajam Paser Utara dengan dukungan pencarian, penyaringan kategori, dan paginasi.
Parameter Permintaan (Query Parameters):
Geser tabel ↔| Parameter | Tipe | Sifat | Keterangan | Contoh |
|---|---|---|---|---|
| search | string | Opsional | Kata kunci pencarian judul atau isi berita | ikn |
| category | string | Opsional | Filter kategori berita (contoh: Pemerintahan, Teknologi, Sosial) | Pemerintahan |
| status | string | Opsional | Status publikasi (published) | published |
| limit | integer | Opsional | Jumlah data per halaman (default 20, max 100) | 10 |
| offset | integer | Opsional | Offset data paginasi | 0 |
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"
}
]
}Pengumuman Resmi & Surat Edaran
Mengakses data pengumuman kedinasan resmi, surat edaran bupati, dan informasi penting Pemerintah Kabupaten Penajam Paser Utara.
Parameter Permintaan (Query Parameters):
Geser tabel ↔| Parameter | Tipe | Sifat | Keterangan | Contoh |
|---|---|---|---|---|
| search | string | Opsional | Kata kunci pencarian judul atau isi pengumuman | edaran |
| limit | integer | Opsional | Batas jumlah data yang dikembalikan (default 20, max 100) | 10 |
| offset | integer | Opsional | Offset data paginasi | 0 |
| id | string | Opsional | Ambil data tunggal pengumuman berdasarkan ID | ann-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"
}
]
}Titik Hotspot WiFi Publik
Mengambil data titik akses WiFi publik gratis yang dikelola oleh Diskominfo Penajam Paser Utara, lengkap dengan koordinat, nama lokasi, dan spesifikasi bandwidth layanan.
Parameter Permintaan (Query Parameters):
Geser tabel ↔| Parameter | Tipe | Sifat | Keterangan | Contoh |
|---|---|---|---|---|
| search | string | Opsional | Cari nama lokasi titik wifi | Alun-alun |
| location | string | Opsional | Filter wilayah kecamatan | Penajam |
| status | string | Opsional | Filter status konektivitas (Aktif / Nonaktif) | Aktif |
| format | string | Opsional | Opsi format: "json" atau "geojson" | json |
| limit | integer | Opsional | Maksimum 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
}
}
]
}Kamera Pemantau CCTV Kota
Mengambil daftar titik kamera CCTV kota, area pantauan publik, pelabuhan, gedung kantor, serta URL streaming langsung format HLS (.m3u8).
Parameter Permintaan (Query Parameters):
Geser tabel ↔| Parameter | Tipe | Sifat | Keterangan | Contoh |
|---|---|---|---|---|
| search | string | Opsional | Cari lokasi kamera atau nama CCTV | Pelabuhan |
| status | string | Opsional | Filter status online kamera (Aktif, Nonaktif) | Aktif |
| format | string | Opsional | Format respon ("json" atau "geojson") | json |
| limit | integer | Opsional | Jumlah 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
}
}
]
}Sebaran Menara Telekomunikasi / BTS
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.
Parameter Permintaan (Query Parameters):
Geser tabel ↔| Parameter | Tipe | Sifat | Keterangan | Contoh |
|---|---|---|---|---|
| search | string | Opsional | Cari pemilik menara, operator, atau alamat | Protelindo |
| location | string | Opsional | Filter wilayah kecamatan (Penajam, Waru, Babulu, Sepaku) | Penajam |
| status | string | Opsional | Filter status operasional (Aktif) | Aktif |
| format | string | Opsional | Format respon ("json" atau "geojson") | json |
| limit | integer | Opsional | Jumlah data per halaman (default 100, max 500) | 50 |
| id | string | Opsional | Ambil data tunggal menara berdasarkan ID | bts-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
}
}
]
}Kode Status HTTP & Format Error
Semua error mengembalikan kode status HTTP standar disertai payload JSON berformat terstruktur agar mudah ditangani oleh aplikasi klien:
| Kode Status | Arti | Penyebab Umum |
|---|---|---|
| 200 OK | Berhasil | Permintaan valid dan data berhasil diambil. |
| 401 Unauthorized | Kredensial Tidak Valid | API Key tidak disertakan, token salah, atau belum disetujui admin. |
| 403 Forbidden | Izin Resource Ditolak | API Key valid, namun Admin belum mengaktifkan izin untuk resource tersebut (misal scope announcements belum diberikan). |
| 404 Not Found | Tidak Ditemukan | ID titik atau slug artikel yang dicari tidak ditemukan di database. |
| 500 Server Error | Kesalahan Internal | Terjadi kendala pada server database atau koneksi internal. |
Contoh Respon 401 Unauthorized:
{
"error": true,
"message": "Unauthorized"
}Contoh Respon 403 Forbidden:
{
"error": true,
"message": "Forbidden"
}