Prosedur Penggunaan API AWS CENTER

A.  Informasi Umum

• Modul API Pertukaran Data memungkinkan client untuk mengakses data dari AWS Center dalam format JSON.
• Tipe Alat yang tersedia pada modul API pertukaran data : arg, aws, aaws, asrs, iklimmikro, dan awsship.
• Range periode waktu data yang dapat diakses per 1 (satu) kali request nya adalah maksimal 1 (satu) hari atau 24 (dua puluh empat) jam.

B.  Token Akses Data

Untuk mengakses data melalui API AWS Center, diperlukan token akses yang bisa diperoleh dengan cara melakukan request token. Request token dilakukan menggunakan method POST dan dapat diperoleh dengan menggunakan bantuan aplikasi Postman. Parameter yang diperlukan untuk mendapatkan token adalah username dan password.

Endpoint untuk melakukan request token

https://apiaws.bmkg.go.id/auth/login

Contoh Request Token

https://apiaws.bmkg.go.id/auth/login?username=test&password=test123

Response Token

{ "status": "sukses", "token": " 4g2287VZa4jdmPb8kSrIFyTTvjY6uQ", "datauser": { "username": "test", "nama_pengguna": "test", "kadaluarsa_token_api": "2025-01-06", "updated_at": "2024-08-28T01:47:24.000000Z" } }



C.  Akses Data

Filter yang wajib diisikan pada saat melakukan akses data :

• token

Token diperoleh dengan cara melakukan request pengambilan token

• filter

Filter parameter data yang tersedia. Filter dapat diisikan dengan tanda bintang (*) untuk mendapatkan seluruh parameter data alat, atau dapat juga diisikan per 1(satu) parameter (misal rr, tt_air_avg, rh_avg, pp_air, dsb). Untuk parameter yang tersedia pada masing masing tipe alat dapat dilihat pada saat melakukan filter seluruh parameter.

• tgl_mulai

Tanggal awal data yang diinginkan untuk diakses. Format yang bisa digunakan yaitu
  a) yyyy-mm-dd (secara default waktu nya adalah 00:00:00)
  b) yyyy-mm-dd hh:mi:ss

• tgl_selesai

Tanggal akhir data yang diinginkan untuk diakses. Format yang bisa digunakan yaitu
  a) yyyy-mm-dd (secara default waktu nya adalah 00:00:00)
  b) yyyy-mm-dd hh:mi:ss


Endpoint akses data

https://apiaws.bmkg.go.id/getdata

Contoh request akses data dengan filter wajib

https://apiaws.bmkg.go.id/getdata?token=4g2287VZa4jdmPb8kSrIFyTTvjY6uQ&filter=*&tgl_mulai=2024-08-27 00:00:00&tgl_selesai=2024-08-27 01:00:00



Response:

							
{ "tipe_station": "aws", "id_station": "10001", "name_station": "Water Level Pulau Sebesi", "latt_station": "-5.935697", "long_station": "105.512807", "elv_station": "", "nama_kota": "Kab. Lampung Selatan", "tanggal": "2024-08-27 00:00:00+00", "rr": null, "rr_flag": 9, "pp_air": "0", "pp_air_flag": 1, "rh_avg": null, "rh_avg_flag": 9, "sr_avg": null, "sr_avg_flag": 9, "sr_max": null, "sr_max_flag": 9, "nr": null, "nr_flag": 9, "wd_avg": null, "wd_avg_flag": 9, "ws_avg": null, "ws_avg_flag": 9, "ws_max": null, "ws_max_flag": 9, "wl": "0", "wl_flag": 0, "tt_air_avg": null, "tt_air_avg_flag": 9, "tt_air_min": null, "tt_air_min_flag": 9, "tt_air_max": null, "tt_air_max_flag": 9, "tt_sea": null, "tt_sea_flag": 9, "ws_50cm": null, "ws_50cm_flag": 9, "wl_pan": null, "wl_pan_flag": 9, "ev_pan": null, "ev_pan_flag": 9, "tt_pan": null, "tt_pan_flag": 9, "konduktivitas": null, "konduktivitas_flag": 9, "ph_sea": null, "ph_sea_flag": 9 }

Filter tambahan yang dapat ditambahkan pada saat pengaksesan data

1) Tipe Alat

Endpoint:

https://apiaws.bmkg.go.id/getdata?token=4g228u2u8nnb5lzyQFNCtkxf2QfnHX&filter=*&tgl_mulai=2024-08-27 00:00:00&tgl_selesai=2024-08-27 01:00:00&tipe_station=arg

Response:

							
{ "tipe_station": "arg", "id_station": "13122300", "name_station": "ARG Kintap", "latt_station": "-3.859193", "long_station": "115.291209", "elv_station": "15", "nama_kota": "Kab. Tanah Laut", "tanggal": "2024-08-27 00:00:00+00", "rr": "0.0", "rr_flag": 0 }

2) Id stasiun

Endpoint:

https://apiaws.bmkg.go.id/getdata?token=4g228u2u8nnb5lzyQFNCtkxf2QfnHX&filter=*&tgl_mulai=2024-08-27 00:00:00&tgl_selesai=2024-08-27 01:00:00&id_station=STA0008

Response:

							
{
        "tipe_station": "arg",
        "id_station": "STA0008",
        "name_station": "ARG Tapanuli",
        "latt_station": "1.41101",
        "long_station": "99.2174",
        "elv_station": "519",
        "nama_kota": "Kab. Tapanuli Selatan",
        "tanggal": "2024-08-27 00:00:00+00",
        "rr": "15.0",
        "rr_flag": 0
}




D.  Response error yang dapat terjadi pada saat melakukan akses data


1) Token expired / belum terdaftar

Response:

{
    "status": "gagal",
    "message": "Token sudah expired atau belum terdaftar"
}


Silahkan menghubungi admin aplikasi untuk mendapatkan informasi lebih lanjut



2) Kesalahan range tanggal

Response:

{
    "status": "gagal",
    "message": "Tanggal Yang anda masukkan tidak valid dan range tanggal tidak boleh lebih dari satu hari (24 jam)"
}



3) Filter wajib belum terisi

Response:

{
    "token": [
        "The token field is required."
    ],
    "filter": [
        "The filter field is required."
    ],
    "tgl_mulai": [
        "The tgl mulai field is required."
    ],
    "tgl_selesai": [
        "The tgl selesai field is required."
    ]
}



4) Id stasiun tidak sesuai dengan tipe stasiun

Response:

{
    "status": "gagal",
    "message": "Id stasiun tidak termasuk di dalam tipe stasiun tersebut"
}



5) Tahun pada tanggal mulai dan tanggal selesai tidak sama

Response:

{
    "status": "gagal",
    "message": "Tahun mulai dan tahun selesai harus sama"
}