Serving API

Penggunaan data

Sebagian resource memuat data tentang orang — misalnya nama dan ORCID penulis serta nama kontributor pada resource SDGs (/sdgs/penulis, /sdgs/kontributor). Platform menyajikannya hanya kepada aplikasi yang dinamai, dengan tujuan penggunaan yang dicatat saat API key-nya diterbitkan. Halaman ini menjelaskan apa yang mengikuti dari itu.

Resource mahasiswa (/mahasiswa, /aktivitas_kuliah_mahasiswa, /biaya_kuliah_mahasiswa_aktif, /biaya_kuliah_fakultas, /biaya_kuliah_program_studi) memuat NIM, nama, dan biaya kuliah tiap mahasiswa, yang mencerminkan golongan UKT dan kondisi ekonomi keluarganya. Jumlah pada /biaya_kuliah_mahasiswa_aktif, /biaya_kuliah_fakultas, dan /biaya_kuliah_program_studi tidak disamarkan, juga jumlah 1 sampai 4 orang; total biaya satu program studi yang kecil dapat menunjuk tagihan satu orang. Karena itu scope mahasiswa hanya diterbitkan untuk keperluan keuangan internal universitas, dan datanya tidak boleh dipublikasikan atau diteruskan ke aplikasi lain.

Resource raw PD Unsri (/raw/pdunsri/...) adalah data sumber apa adanya, tanpa penyaringan yang dilakukan model gold: nama dan NIM mahasiswa, agama, wilayah asal, kebutuhan khusus, NIK serta pendidikan dan pekerjaan orang tua (/raw/pdunsri/biodata_mahasiswa), rencana studi tiap mahasiswa, dan nama dosen. Karena itu scope raw:pdunsri hanya diterbitkan untuk tujuan yang memang memerlukan data raw-nya, dan kewajiban di bawah ini berlaku sepenuhnya.

API key diterbitkan untuk satu tujuan

  • Satu key untuk satu aplikasi, dengan tujuan tertulis. Aplikasi lain memerlukan key-nya sendiri; jangan meminjamkan key.
  • Scope pada key membatasi resource yang dapat dibaca. Mintalah scope yang dibutuhkan saja.
  • Key dapat dicabut atau dirotasi sewaktu-waktu oleh pengelola platform, misalnya saat aplikasi berhenti dipakai atau key diduga bocor. Setelah rotasi, key lama langsung berhenti bekerja; rancang aplikasi agar key mudah diganti tanpa rilis ulang.

Setiap request dicatat

Untuk setiap request ke /v1, API mencatat aplikasi pemegang key, nilai X-Actor bila dikirim, endpoint dan query string, status respons, lama pemrosesan, dan jumlah baris yang dikembalikan. Catatan ini adalah audit trail atas siapa membaca apa, dan dapat ditinjau oleh pengelola platform.

Kirim X-Actor bila aplikasi Anda melayani banyak pengguna: itu membuat audit trail menyebutkan orang yang meminta, bukan hanya aplikasinya.

Yang diharapkan dari aplikasi

  • Simpan key di secret store aplikasi; jangan di kode, repository, log, atau di sisi klien (browser, aplikasi mobile).
  • Ambil kolom yang dibutuhkan saja untuk tujuan yang dicatat; jangan menyalin seluruh tabel ke penyimpanan lain tanpa kesepakatan dengan pengelola platform.
  • Data yang ditampilkan kepada pengguna akhir mengikuti kewenangan pengguna itu di aplikasi Anda; API key bukan izin bagi setiap pengguna aplikasi untuk melihat semua baris.
  • Laporkan segera bila key diduga bocor, agar dapat dirotasi.

Pembaruan data

Data disalin dari lakehouse setiap kali tabel sumbernya selesai dibangun, bukan dibaca langsung dari sistem sumber. meta.as_of pada setiap respons adalah waktu salinan terakhir (UTC). Aplikasi yang menampilkan data kepada pengguna sebaiknya menampilkan waktu itu pula.