Endpoint | Deskripsi |
---|---|
GET /api/mahasiswa | Mendapatkan daftar semua mahasiswa |
GET /api/mahasiswa/{id} | Mendapatkan detail mahasiswa berdasarkan ID |
POST /api/mahasiswa | Menambahkan mahasiswa baru |
PUT /api/mahasiswa/{id} | Mengupdate data mahasiswa berdasarkan ID |
DELETE /api/mahasiswa/{id} | Menghapus mahasiswa berdasarkan ID |
Parameter | Tipe Data | Deskripsi |
---|---|---|
id | integer | ID unik untuk mahasiswa |
nim | string | Nomor induk mahasiswa harus UNIK |
nama | string | Nama lengkap mahasiswa |
tanggal_lahir | string | Tanggal lahir mahasiswa dalam format YYYY-MM-DD |
program_studi | string | Program studi mahasiswa |
foto | file | Foto mahasiswa (format: JPG, PNG, maks. 2MB) |
Response JSON yang diberikan oleh setiap endpoint terdiri dari:
Request:
GET /api/mahasiswa Header Accept: application/json
Response:
{ "status": "success", "data": [ { "id": 1, "nim": "1234567890", "nama": "John Doe", "tanggal_lahir": "1995-08-10", "program_studi": "Teknik Informatika", "foto": "http://example.com/storage/foto/photo123.jpg" }, { "id": 2, "nim": "0987654321", "nama": "Jane Smith", "tanggal_lahir": "1998-03-25", "program_studi": "Sistem Informasi", "foto": null } ] }
Request:
POST /api/mahasiswa Header Accept: application/json Body { "nim": "1234567891", "nama": "Michael Scott", "tanggal_lahir": "1990-07-15", "program_studi": "Manajemen", "foto": "foto.jpg" }
Response:
{ "status": "success", "data": { "id": 3, "nim": "1234567891", "nama": "Michael Scott", "tanggal_lahir": "1990-07-15", "program_studi": "Manajemen", "foto": "http://example.com/storage/foto/photo456.jpg" }, "message": "Mahasiswa created successfully" }
Request:
PUT /api/mahasiswa/3 Header Accept: application/json Body { "nim": "1234567891", "nama": "Michael Scott", "tanggal_lahir": "1990-07-15", "program_studi": "Manajemen", "foto": "foto.jpg" }
Response:
{ "status": "success", "data": { "id": 3, "nim": "1234567891", "nama": "Michael Scott", "tanggal_lahir": "1990-07-15", "program_studi": "Manajemen", "foto": "http://example.com/storage/foto/new_photo789.jpg" }, "message": "Mahasiswa updated successfully" }
Request:
DELETE /api/mahasiswa/3 Header Accept: application/json
Response:
{ "status": "success", "message": "Mahasiswa deleted successfully" }