ApiTerasKotaMagelang/DOKUMENTASI_API.md

4.7 KiB

Tentu, ini adalah draf dokumentasi API untuk Teraskota Magelang yang diformat khusus untuk repositori GitHub (format Markdown .md). Dokumentasi ini disusun agar mudah dibaca oleh developer, mencakup autentikasi, daftar endpoint, parameter, dan contoh response.

Silakan salin kode di bawah ini ke dalam file bernama README.md atau API_REFERENCE.md.


Dokumentasi API Teraskota Magelang

Dokumentasi ini menyediakan panduan penggunaan API Service Teraskota Magelang. [cite_start]API ini menggunakan arsitektur REST dengan komunikasi HTTP dan format data JSON[cite: 3].

Informasi Umum

  • Base URL: Bervariasi per endpoint (lihat detail di bawah).
  • [cite_start]Format Data: JSON[cite: 3].
  • [cite_start]Protokol: HTTP/REST[cite: 3].

Autentikasi

Setiap permintaan (request) ke API ini wajib menyertakan kredensial keamanan.

  • [cite_start]Metode: Basic Authentication[cite: 6].
  • Header: Authorization: Basic <base64_user:password>
  • Catatan Keamanan:
    • [cite_start]Kredensial (User dan Password) diberikan secara terpisah dari dokumen ini[cite: 7].
    • [cite_start]Client wajib menjaga kerahasiaan kredensial yang diberikan[cite: 8].

Daftar Endpoint

1. Menampilkan List Target Bantuan

Mengambil daftar program atau target bantuan yang tersedia.

  • [cite_start]URL: https://api.integrasvc.id/pbn3z [cite: 10]
  • [cite_start]Method: POST [cite: 10]
  • [cite_start]Deskripsi: Menampilkan list target bantuan[cite: 10].

Request Header:

Key Value
Authorization Basic (user:password)

Response Example:

{
  "success": true,
  "total": 6,
  "result": [
    {
      "id": 1,
      "program": "Bantuan Bahan Memasak...",
      "sasaran": "...",
      "is_active": 1,
      "icon": "pencil_443265..."
    }
  ]
}

[cite_start][cite: 10]


2. Menampilkan Data Target Bantuan Tertentu

Mengambil detail spesifik dari target bantuan berdasarkan filter wilayah dan ID.

  • [cite_start]URL: https://api.integrasvc.id/qv2k9 [cite: 13]
  • [cite_start]Method: POST [cite: 14]
  • [cite_start]Deskripsi: Menampilkan detail dari target bantuan[cite: 12].

Body Parameters (form-data/json):

Parameter Tipe Data Keterangan
id Integer [cite_start]ID Data [cite: 15, 16]
id_kec String [cite_start]ID Kecamatan [cite: 17, 18]
id_kel String [cite_start]ID Kelurahan [cite: 19, 20]
rw String [cite_start]Nomor RW [cite: 21, 22]
rt String [cite_start]Nomor RT [cite: 23, 24]
start String [cite_start]Pagination start [cite: 25, 26]
limit String [cite_start]Pagination limit [cite: 27, 28]

Response Example:

{
  "success": true,
  "result": {
    "data": [
      {
        "nik": "337101xxxxxx",
        "nama": "Firma Nurlita Desvitasari",
        "provinsi": "JAWA TENGAH",
        "kabupaten": "KOTA MAGELANG",
        "kecamatan": "MAGELANG SELATAN",
        "kelurahan": "REJOWINANGUN SELATAN",
        "alamat": "Paten Tegal 113",
        "rw": "006",
        "rt": "003"
      }
    ]
  }
}

[cite_start][cite: 44-53]


3. Menampilkan Profil Rekap RT

Mengambil data statistik dan rekapitulasi profil berdasarkan tingkat RT.

  • [cite_start]URL: https://api.integrasvc.id/pd32v [cite: 57]
  • [cite_start]Method: POST [cite: 60]
  • [cite_start]Deskripsi: Menampilkan data profil rekap RT[cite: 56].

Body Parameters:

Parameter Tipe Data Keterangan
mode String [cite_start]Pilihan: perumahan, individu, aset, atau rtlh [cite: 61, 87-90]
id_kec Integer [cite_start]ID Kecamatan [cite: 63, 64]
id_kel String [cite_start]ID Kelurahan [cite: 65, 66]
rw String [cite_start]Nomor RW [cite: 67, 68]
rt String [cite_start]Nomor RT [cite: 69, 70]

Response Example:

{
  "success": true,
  "result": {
    "val_ruta": 24276,
    "val_kk": "25516",
    "val_jiwa": "66268",
    "val_draf": "0",
    "val_verify": "0",
    "val_tolak": "0",
    "val_verified": "24276",
    "dtakec": [
      {
        "name": "MAGELANG SELATAN",
        "y": 11423
      },
      {
        "name": "MAGELANG TENGAH",
        "y": 12536
      },
      {
        "name": "MAGELANG UTARA",
        "y": 10169
      }
    ]
  }
}

[cite_start][cite: 75-104]


Implementasi Client (Contoh cURL)

curl --location --request POST 'https://api.integrasvc.id/qv2k9' \
--header 'Authorization: Basic <YOUR_BASE64_CREDENTIALS>' \
--form 'id="123"' \
--form 'id_kec="3371"' \
--form 'limit="10"'

Generated based on API Service Documentation v2.