Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

DanielFransiscus/RestServer_CI3

Open more actions menu

Repository files navigation

API-Mahasiswa

RESTful API dibangun menggunakan framework Codeigniter versi 3.1.13. RESTful API ini digunakan untuk mengelola data mahasiswa. Proyek ini dibuat untuk tujuan pembelajaran.

Persyaratan Server:

  • Direkomendasikan menggunakan versi PHP 5.6 atau yang lebih baru.
  • Disarankan untuk tidak menggunakan versi PHP 5.3.7 atau lebih lama karena potensi masalah keamanan, kinerja yang buruk, dan fitur yang tidak tersedia.

Persyaratan Database:

  • Database yang didukung:
    • MySQL (versi 5.1+) menggunakan driver mysql (deprecated), mysqli, dan pdo.

Authentication

Semua API harus menggunakan autentikasi berikut:

Permintaan :

  • Header :
    • X-API-KEY : "wpu123"
    • Authorization: Basic username : daniel, password : frans123

Mendapatkan Semua Data Mahasiswa

Permintaan : [GET] /mahasiswa

Respons :

{
    "code": 200,
    "status": "OK",
    "data": [
        {
            "id": "61",
            "nama": "horas",
            "email": "horas@mail.comkkjuhhTy",
            "jurusan": "Teknik Sipil",
            "gambar": "5dc3b83f830dab43254cdb349e854dc6.png",
            "createdAt": "2023-05-19 17:37:24",
            "updatedAt": "2023-05-19 18:35:00"
        },
        ...
    ],
    "links": {
        "first": "http://localhost/belajar/api/mahasiswa?page=1",
        "last": "http://localhost/belajar/api/mahasiswa?page=2",
        "prev": null,
        "next": "http://localhost/belajar/api/mahasiswa?page=2"
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 2,
        "path": "http://localhost/belajar/api/mahasiswa",
        "per_page": 5,
        "to": 5,
        "total": 7,
        "limit": 5
    }
}

Paginasi

Permintaan : [GET] /mahasiswa?page={page number}

Respons :

{
    "code": 200,
    "status": "OK",
    "data": [
        {
            "id": "61",
            "nama": "horas",
            "email": "horas@mail.comkkjuhhTy",
            "jurusan": "Teknik Sipil",
            "gambar": "5dc3b83f830dab43254cdb349e854dc6.png",
            "createdAt": "2023-05-19 17:37:24",
            "updatedAt": "2023-05-19 18:35:00"
        },
        ...
    ],
    "links": {
        "first": "http://localhost/belajar/api/mahasiswa?page=1",
        "last": "http://localhost/belajar/api/mahasiswa?page=2",
        "prev": null,
        "next": "http://localhost/belajar/api/mahasiswa?page=2"
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 2,
        "path": "http://localhost/belajar/api/mahasiswa",
        "per_page": 5,
        "to": 5,
        "total": 7,
        "limit": 5
    }
}

Mendapatkan Satu Data Mahasiswa

Permintaan : [GET] /mahasiswa/{id mahasiswa}

Respons :

{
    "code": 200,
    "status": "OK",
    "data": {
        "id": "71",
        "nama": "Boreno",
        "email": "buzang@mail.com",
        "jurusan": "Perhotelan",
        "gambar": "e58043377acbaba5d0e59dcc99999f88.jpg",
        "createdAt": "2023-05-19 19:03:58",
        "updatedAt": "2023-05-19 19:21:40"
    }
}

Menambahkan Data Mahasiswa

Permintaan : [POST] /mahasiswa

Body (form-data):

  • nama
  • email
  • jurusan
  • gambar : [optional]

Respons :

{
    "code": 201,
    "status": "Created",
    "message": "Data berhasil ditambahkan",
    "data": {
        "nama": "Susi",
        "email": "susi@mail.com",
        "jurusan": "Perhotelan",
        "gambar": "dd467e88c0233dc69df9c01444ed49c5.jpeg",
        "gambar_url": "http://localhost/belajar/uploads/dd467e88c0233dc69df9c01444ed49c5.jpeg"
    }
}

Mengubah Data Mahasiswa

Permintaan : [POST] /mahasiswa/{id mahasiswa}

Body (form-data):

  • nama
  • email
  • jurusan
  • gambar : [optional]
  • _method : PUT

Respons :

{
    "code": 200,
    "status": "OK",
    "message": "Data berhasil diubah",
    "data": {
        "nama": "Brocoli",
        "email": "brocoli@mail.com",
        "jurusan": "Informatika",
        "gambar": "8d01a0ecac0bd83bf40b1d46ca919bcc.png",
        "gambar_url": "http://localhost/belajar/uploads/8d01a0ecac0bd83bf40b1d46ca919bcc.png"
    }
}

Menghapus Data Mahasiswa

Permintaan : [DELETE] /mahasiswa/{id mahasiswa}

Respons : tidak ada karena 204 no content

Morty Proxy This is a proxified and sanitized view of the page, visit original site.