Mahasiswa API

Daftar Endpoint

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

Daftar Parameter

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

Response JSON yang diberikan oleh setiap endpoint terdiri dari:

Contoh Penggunaan

Mendapatkan daftar semua mahasiswa

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
    }
  ]
}

Menambahkan mahasiswa baru

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"
}

Mengupdate data mahasiswa

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"
}

Menghapus mahasiswa

Request:

DELETE /api/mahasiswa/3
Header
Accept: application/json

Response:

{
  "status": "success",
  "message": "Mahasiswa deleted successfully"
}