Skip to content

Latest commit

 

History

History
590 lines (474 loc) · 15.3 KB

README.id.md

File metadata and controls

590 lines (474 loc) · 15.3 KB

PICO SulTeng API

License: MIT

Commits/month Stars Website: up Last Commit Coverage

API untuk aplikasi PICO (Pusat Informasi COVID-19) Provinsi Sulawesi Tengah. Aplikasi ini dibangun menggunakan microframework Lumen.

PICO API

Daftar Isi

Lang : English

Kamu membaca versi Bahasa Indonesia dari README ini. Tekan badge untuk membaca README dalam bahasa yang berbeda.

Sumber Data

Informasi Umum

API ini dibuat untuk menyediakan data terkini tentang situasi COVID-19 di Sulawesi Tengah. API ini dibuat karena data yang disediakan oleh pemerintah daerah masih berupa data statis sehingga datanya tidak dapat digunakan pada aplikasi saya (PICO).

Dengan membuat API ini, diharapkan pengembang/developer yang membutuhkan data situasi COVID-19 di Sulawesi Tengah dapat terbantu dan memanfaatkan API ini.

Dibangun Dengan

  • Lumen - versi 7.0.2
  • PHP - versi 7.3.13

Instalasi

  • API

     

  • Repository

    • Clone repository ini ke local.
    • Buka terminal/CMD lalu masuk ke root directory hasil clone.
    • Jalankan perintah cp .env.example .env
    • Edit isi file .env dan isikan sesuai dengan konfigurasi local anda.
    • Agar Throttle Request/Rate Limiter berjalan dengan normal, ubah CACHE_DRIVER pada file .env menjadi CACHE_DRIVER=file.
    • Jalankan perintah composer update / composer install untuk meng-install dependency yang dibutuhkan.
    • Setelah proses installasi dependency selesai, jalankan perintah php artisan key:generate untuk men-generate APP_KEY.
    • Jalankan perintah php artisan migrate --seed untuk melakukan migrasi database.
    • Pastikan komputer/laptop anda terhubung ke internet saat melakukan migration, karena seeder menggunakan data dari internet untuk mengisi database lokal anda.
    • Setelah itu, jalankan perintah php artisan serve untuk menjalankan aplikasi.
    • Jika berhasil dan tidak terdapat kesalahan dalam konfigurasi, maka aplikasi akan berjalan dan dapat diakses melalui 127.0.0.1:8000 atau localhost:8000.

Contoh Respon

  • DATA POSKO GUGUS TUGAS

    • Contoh json/{"objek_posko"} :
    {
        "kabupaten":"Banggai Kepulauan",
        "kontak":
        [
            {
                "jenis_kontak":"Telepon",
                "kontak":"082292105885",
                "nama":"Arabia Tamrin",
                "label":"Telpon",
                "prefix":"tel:"
            }
        ]
    }
  • GET /posko

    Mengembalikan data posko Gugus Tugas COVID-19 di semua Kabupaten di Sulawesi Tengah.

    • URL Params
      • None
    • Data Params
      • None
    • Headers
      • Content-Type: application/json
    • Success Response :
      • Code : 200
      • Content :
        {
            "success": true,
            "errors": [],
            "data":
            [
                {"objek_posko"},
                {"objek_posko"},
                {"objek_posko"},
            ]
        }
  • DATA KABUPATEN

    • Contoh json/{"objek_kabupaten"} :
    {
        "no": 7205,
        "kabupaten": "Donggala",
        "ODP": 6,
        "PDP": 0,
        "positif": 0,
        "negatif": 0,
        "sembuh": 0,
        "meninggal": 0,
        "selesai_pengawasan": 0,
        "dalam_pengawasan": 6,
        "selesai_pemantauan": 0,
        "dalam_pemantauan": 0,
        "updated_at": "2020-04-29T17:00:00.000000Z"
    }
  • GET /kabupaten

    Mengembalikan data kasus COVID-19 di semua Kabupaten/Kota di Sulawesi Tengah.

    • URL Params
      • None
    • Data Params
      • None
    • Headers
      • Content-Type : application/json
    • Success Response :
      • Code : 200
      • Content :
        {
            "success": true,
            "errors": [],
            "data":
            [
                {"objek_kabupaten"},
                {"objek_kabupaten"},
                {"objek_kabupaten"},
            ]
        }
  • GET /kabupaten/:no

    Mengembalikan data kasu COVID-19 di Kabupaten/Kota yang dipilih.

    • URL Params
      • Required: no=[integer]
    • Data Params
      • None
    • Headers
      • Content-Type : application/json
    • Success Response:
      • Code : 200
      • Content :
        {
            "success": true,
            "errors": [],
            "data": {"objek_kabupaten"}
        }
  • Error Response:
    • Code : 404
    • Content :
        {
           "success": false,
            "errors" :
             {
                "code": 404,
                "message": "Ditrict not found!"
             },
             "data": []
        }
  • DATA PROVINSI

    Properti "map_id" digunakan pada AnyChart-Android .

    • Contoh json/{"objek_provinsi"} :
    {
        "kode_provinsi":31,
        "provinsi":"DKI Jakarta",
        "positif":515,
        "sembuh":46,
        "meninggal":25,
        "map_id":"ID.JR",
        "updated_at": "2020-04-29T17:00:00.000000Z"
    }
  • GET /provinsi

    Mengembalikan data kasus COVID-19 di semua Provinsi di Seluruh Indonesia.

    • URL Params
      • None
    • Data Params
      • None
    • Headers
      • Content-Type: application/json
    • Success Response :
      • Code : 200
      • Content :
        {
            "success": true,
            "errors": [],
            "data":
            [
                {"objek_provinsi"},
                {"objek_provinsi"},
                {"objek_provinsi"},
            ],
        }
  • GET /provinsi/:kode

    Mengembalikan data kasus COVID-19 di Provinsi yang dipilih.

    • URL Params
      • Required: kode=[integer]
    • Data Params
      • None
    • Headers
      • Content-Type: application/json
    • Success Response:
      • Code : 200
      • Content :
        {
            "success": true,
            "errors": [],
            "data": {"objek_provinsi"},
        }
  • Error Response:
    • Code : 404
    • Content :
        {
            "success": false,
            "errors":
            {
                "code": 404,
                "message": "Province not found!"
            },
            "data": [],
        }
  • DATA RUMAH SAKIT

    • Contoh json/{"objek_rumah_sakit"} :
    {
        "no":"7271014",
        "nama":"RS Umum Daerah Undata Palu",
        "longitude":119.881858,
        "latitude":-0.8578386,
        "jumlah_igd":0,
        "terakhir_diperbarui":"2021-07-24T01:58:08.000000Z",
        "kontak":
        [
            {
                "jenis_kontak":"Telepon",
                "kontak":"0451421270",
                "prefix":"tel:",
                "label":"Telpon"
            }
            
        ],
        "tempat_tidur":
        [
            {
                "jenis_tempat_tidur":"IGD Khusus Covid",
                "total":4,
                "tersedia":0,
                "terisi":4,
                "antrian":0,
                "terakhir_diperbarui":"2021-07-24T01:58:08.000000Z"
            },
        ]
    }
  • GET /rumahsakit

    Mengembalikan data rumah sakit rujukan COVID-19 di semua Kabupaten di Sulawesi Tengah.

    • URL Params
      • None
    • Data Params
      • None
    • Headers
      • Content-Type: application/json
    • Success Response :
      • Code : 200
      • Content :
        {
          "success": true,
          "errors": [],
          "data":
          [
            {"objek_rumah_sakit"},
            {"objek_rumah_sakit"},
            {"objek_rumah_sakit"},
          ],
        }
  • GET /rumahsakit/:no

    Mengembalikan data Rumah Sakit berdasarkan nomor/id yang dipilih.

    • URL Params
      • Required: no=[integer]
    • Data Params
      • None
    • Heders
      • Content-Type: application/json
    • Success Response:
      • Code : 200
      • Content :
        {
            "success": true,
            "errors": [],
            "data": {"objek_rumah_sakit"},
        }
  • Error Response:
    • Code : 404
    • Content :
        {
            "success": false,
            "errors":
            {
                "code": 404,
                "message": "Hospital not found!"
            },
            "data" :  [],
        }
  • STATISTIK

    Mengembalikan data situasi harian COVID-19 di Sulawesi Tengah sejak tanggal 22 Maret 2020.

    • Contoh json/{"objek_statistik"} :
    {
        "day" : 42,
        "date" : "2020-05-02T16:00:00.000000Z",
        "positive" : 12,
        "cumulative_positive" : 59,
        "recovered" : 0,
        "cumulative_recovered" : 11,
        "death" : 0,
        "cumulative_death" : 3,
        "death_percentage" : 5.08,
        "recovered_percentage" : 18.64,
        "under_treatment_percentage" : 76.27,s
    }
  • Contoh JSON (v2)/{"objek_statistik"} :
    {
        "hari_ke" : 42,
        "tanggal" : "2020-05-02T16:00:00.000000Z",
        "kasus_baru" : {
          "positif": 0,
          "sembuh": 0,
          "meninggal": 0,
          "negatif": 0,
          "ODP": 0,
          "PDP": 0
        },
        "aktif" : {
          "dalam_perawatan": 45,
          "ODP": 161,
          "PDP": 45
        },
        "selesai" : {
          "ODP": 161,
          "PDP": 45
        },
        "kumulatif" : {
          "positif": 59,
          "sembuh": 11,
          "meninggal": 3,
          "negatif": 50,
          "ODP": 724,
          "PDP": 120,
          "selesai_ODP": 563,
          "selesai_PDP": 76
        },
      
        "rekap" : {
          "angka_reproduksi" : {
            "rt_upper": 1.98,
            "rt": 1.2,
            "rt_lower": 0.3
          },
          "persentase": {
            "meninggal": 5.08,
            "sembuh": 18.64,
            "dalam_perawatan": 76.27
          },
        },
    }
  • GET /statistik

    Mengembalikan data situasi harian COVID-19 di Sulawesi Tengah.

    • URL Params
      • None
    • Data Params
      • None
    • Headers
      • Content-Type: application/json
    • Success Response :
      • Code : 200
      • Content :
        {
          "success": true,
          "errors": [],
          "data":
          [
            {"stats_object"},
            {"stats_object"},
            {"stats_object"},
          ],
        }
  • GET /statistik/:day

    Mengembalikan data situasi harian COVID-19 di Sulawesi Tengah pada hari yang dipilih.

    • URL Params
      • Required: day=[integer]
    • Data Params
      • None
    • Heders
      • Content-Type: application/json
    • Success Response:
      • Code : 200
      • Content :
        {
            "success": true,
            "errors": [],
            "data": {"stats_object"},
        }
  • Error Response:
    • Code : 404
    • Content :
        {
            "success": false,
            "errors":
            {
                "code": 404,
                "message": "Stats not found!"
            },
            "data" :  [],
        }

Fitur

Beberapa fitur yang sudah dibuat :

  • Data situasi COVID-19 Kabupaten/Kota di Sulawesi Tengah
  • Data situasi COVID-19 Provinsi di Indonesia
  • Data posko Tim Gugus Tugas COVID-19 di Sulawesi Tengah
  • Data rumah sakit rujukan COVID-19 di Sulawesi Tengah
  • Data situasi harian COVID-19 di Sulawesi Tengah

To-do list:

  • Data situasi COVID-19 Kabupaten/Kota di Sulawesi Tengah
  • Data situasi COVID-19 Provinsi
  • Data posko Tim Gugus Tugas COVID-19 Sulawesi Tengah
  • Data rumah sakit rujukan COVID-19 di Sulawesi Tengah
  • Data situasi harian COVID-19 di Sulawesi Tengah

Lisensi

Lisensi MIT

Copyright (c) 2020 Fajrian Aidil Pratama

Kontak

Dibuat oleh @ryanaidilp_ - feel free to contact me!