SMKS Rajasa Developer Console v1.0.0
Connected

Sistem Absensi Digital SMKS Rajasa

v1.0.0 (Production)

Selamat datang di Developer Console resmi SMKS Rajasa Surabaya. Dokumentasi ini merangkum layanan API yang digunakan untuk mengintegrasikan proses validasi presensi siswa dan guru berdasarkan koordinat lokasi (GPS), foto swafoto, serta token otentikasi JWT yang aman.

Komponen & Tech Stack Utama

Laravel Backend

Reverse proxy handal dan arsitektur REST API terstruktur untuk pengolahan data presensi cepat.

Expo Mobile Client

Aplikasi Android native (.APK) yang menyambung langsung dengan sensor lokasi GPS dan kamera smartphone.

Websocket Reverb

Protokol websocket berkecepatan tinggi untuk pembaruan status kehadiran guru/siswa secara real-time.

Lokasi Terenkripsi

Sistem validasi presisi dengan jangkauan toleransi radius GPS yang terverifikasi di server.

Otentikasi Login Pengguna

POST /api/auth/login

Mengirimkan kredensial login (Email, NIP, atau NIS) dan kata sandi. Jika berhasil, server akan mengembalikan data profil beserta token Bearer JWT yang wajib dilampirkan pada request-request API berikutnya.

Parameter Request (Body JSON)

Nama Parameter Tipe Wajib Deskripsi
identifier String Ya Alamat email terdaftar, NIS (Siswa), atau NIP (Guru).
password String Ya Kata sandi pengguna.

Ambil Info Sesi Absensi Aktif

GET /api/attendance/session/active

Digunakan oleh klien untuk mendeteksi apakah ada sesi presensi mengajar/belajar yang sedang dibuka secara aktif saat ini. Endpoint ini memerlukan header otentikasi token Bearer JWT.

Header Parameter

Nama Header Tipe Wajib Nilai / Format
Authorization String Ya Bearer <token_jwt_anda>
Accept String Ya application/json

Submit Presensi Kehadiran

POST /api/attendance/present

Merekam waktu masuk kehadiran guru atau siswa. Endpoint ini memverifikasi posisi koordinat pengguna agar sesuai dengan radius koordinat sekolah dan mencocokkan wajah via swafoto.

Parameter Request (Body JSON)

Nama Parameter Tipe Wajib Deskripsi
session_id Integer Ya ID Sesi absensi yang sedang dibuka.
latitude Float Ya Garis lintang lokasi GPS saat ini (contoh: -7.24354).
longitude Float Ya Garis bujur lokasi GPS saat ini (contoh: 112.7384).
selfie_photo String Ya Berkas foto swafoto berformat base64 string.

Ambil Profile Pengguna

GET /api/profile

Mengambil informasi lengkap profil guru atau siswa yang sedang aktif, termasuk detail kelas, NIS/NIP, nama lengkap, dan status akun. Membutuhkan header otentikasi JWT yang valid.

Header Parameter

Nama Header Tipe Wajib Nilai / Format
Authorization String Ya Bearer <token_jwt_anda>
// Code will be injected here
Expected Response (JSON) 200 OK
// JSON Response will be injected here