Dokumentasi API
Courses
Courses Endpoint
info: Mengolah data kursus.
- Base URL
- Add New Course
- Change Cover Course
- Update Course
- Get All Course
- Detail Course
- Delete Course
- Add Student
- Delete Student
- Change Student Ratings
- Add New Content
- Update Content
- Detail Content
- Delete Content
- Change Content Status
- Delete All Courses
Base URL
https://open-api.delcom.org/api/v1
Add New Course
Menambahkan kursus pembelajaran baru ke dalam sistem.
- URL
/courses
- Method
- POST
- Headers
Content-Type:application/jsonAuthorization:Bearer <token>
- Request Body
titleasstringdescriptionasstring
- Contoh Request
POST {{BaseURL}}/courses Accept: application/json Authorization: Bearer <token> Content-Type: application/json { "title": "Contoh Judul", "description": "Contoh deskripsi" } - Catatan: upload cover dilakukan terpisah lewat Change Cover Course.
Change Cover Course
Mengunggah atau memperbarui gambar sampul (cover) kursus.
- URL
/courses/:id/cover
- Method
- POST
- Headers
Content-Type:multipart/form-dataAuthorization:Bearer <token>
- Request Body
coverasfile
- Contoh Request
POST {{BaseURL}}/courses/1/cover Accept: application/json Authorization: Bearer <token> Content-Type: multipart/form-data; boundary=----DelcomFormBoundary ------DelcomFormBoundary Content-Disposition: form-data; name="cover"; filename="cover.jpg" Content-Type: image/jpeg < ./cover.jpg ------DelcomFormBoundary-- - Response Berhasil
{ "status": "success", "message": "Berhasil mengubah cover" } - Response Gagal
{ "status": "fail", "message": "Data tidak valid", "data": { "field": [ "Pesan validasi" ] } }
Update Course
Memperbarui informasi judul atau deskripsi dari kursus.
- URL
/courses/:id
- Method
- PUT
- Headers
Content-Type:application/jsonAuthorization:Bearer <token>
- Request Body
titleasstringdescriptionasstring
- Contoh Request
PUT {{BaseURL}}/courses/1 Accept: application/json Authorization: Bearer <token> Content-Type: application/json { "title": "Contoh Judul", "description": "Contoh deskripsi" } - Response Berhasil
{ "status": "success", "message": "Berhasil mengubah data" } - Response Gagal
{ "status": "fail", "message": "Data tidak valid", "data": { "field": [ "Pesan validasi" ] } }
Get All Courses
Mengambil daftar seluruh kursus pembelajaran yang tersedia.
- URL
/courses
- Parameters
is_meas1- Notes:
1asretrieve all data created
- Notes:
- Method
- GET
- Headers
Authorization:Bearer <token>
- Contoh Request
GET {{BaseURL}}/courses Accept: application/json Authorization: Bearer <token> - Response Berhasil
{ "status": "success", "message": "Berhasil mengambil data", "data": { "courses": [ { "id": 4, "user_id": 1, "title": "Belajar ReactJS", "cover": "http://127.0.0.1:8000/img/courses/cover/1_1728178077.jpeg", "description": "Belajar ReactJS dari awal sampai mahir", "created_at": "2024-10-06T01:27:37.000000Z", "updated_at": "2024-10-06T01:28:31.000000Z", "author": { "name": "Abdullah Ubaid", "photo": "http://127.0.0.1:8000/default/img/user.png" }, "students": [], "total_contents": 0, "avg_ratings": null }, { "id": 3, "user_id": 1, "title": "Dasar C", "cover": "http://127.0.0.1:8000/img/courses/cover/1_1728175235.jpeg", "description": "Belajar dasar C dari awal", "created_at": "2024-10-06T00:40:35.000000Z", "updated_at": "2024-10-06T00:40:35.000000Z", "author": { "name": "Abdullah Ubaid", "photo": "http://127.0.0.1:8000/default/img/user.png" }, "students": [1], "total_contents": 3, "avg_ratings": "4.0000" } ] } } - Response Gagal
{ "status": "fail", "message": "Data tidak valid", "data": { "field": [ "Pesan validasi" ] } }
Detail Course
Mendapatkan rincian informasi kursus beserta daftar materi dan siswa.
- URL
/courses/:id
- Method
- GET
- Headers
Authorization:Bearer <token>
- Contoh Request
GET {{BaseURL}}/courses/1 Accept: application/json Authorization: Bearer <token> - Response Berhasil
{ "status": "success", "message": "Berhasil mengambil data", "data": { "course": { "id": 3, "user_id": 1, "title": "Dasar C", "cover": "http://127.0.0.1:8000/img/courses/cover/1_1728175235.jpeg", "description": "Belajar dasar C dari awal", "created_at": "2024-10-06T00:40:35.000000Z", "updated_at": "2024-10-06T00:40:35.000000Z", "author": { "name": "Abdullah Ubaid", "photo": "http://127.0.0.1:8000/default/img/user.png" }, "students": [1], "contents": [ { "id": 1, "course_id": 3, "title": "Dasar Java", "youtube": "https://youtu.be/uHyfQV0kbgo", "created_at": "2024-10-06T00:55:15.000000Z", "updated_at": "2024-10-06T00:55:15.000000Z", "my_status_finished": false }, { "id": 2, "course_id": 3, "title": "Dasar Java", "youtube": "https://youtu.be/uHyfQV0kbgo", "created_at": "2024-10-06T00:56:47.000000Z", "updated_at": "2024-10-06T00:56:47.000000Z", "my_status_finished": false }, { "id": 4, "course_id": 3, "title": "Dasar Java", "youtube": "https://youtu.be/uHyfQV0kbgo", "created_at": "2024-10-06T01:03:20.000000Z", "updated_at": "2024-10-06T01:03:20.000000Z", "my_status_finished": true } ], "total_contents": 3, "ratings": [ { "name": "Abdullah Ubaid", "ratings": 4, "comment": "Keren kali kursusnya lek" } ], "avg_ratings": "4.00", "my_percentage_finished": "33.33" } } } - Response Gagal
{ "status": "fail", "message": "Data tidak valid", "data": { "field": [ "Pesan validasi" ] } }
Delete Course
Menghapus kursus yang dipilih dari sistem.
- URL
/courses/:id
- Method
- DELETE
- Headers
Authorization:Bearer <token>
- Contoh Request
DELETE {{BaseURL}}/courses/1 Accept: application/json Authorization: Bearer <token> - Response Berhasil
{ "status": "success", "message": "Berhasil menghapus data" } - Response Gagal
{ "status": "fail", "message": "Data tidak valid", "data": { "field": [ "Pesan validasi" ] } }
Add Student
Mendaftarkan siswa/peserta baru ke dalam suatu kursus.
- URL
/courses/:id/students
- Method
- POST
- Headers
Authorization:Bearer <token>
- Contoh Request
POST {{BaseURL}}/courses/1/students Accept: application/json Authorization: Bearer <token> - Response Berhasil
{ "status": "success", "message": "Berhasil menjadi pelajar pada kursus" } - Response Gagal
{ "status": "fail", "message": "Data tidak valid", "data": { "field": [ "Pesan validasi" ] } }
Delete Student
Menghapus siswa/peserta dari daftar peserta kursus.
- URL
/courses/:id/students
- Method
- DELETE
- Headers
Authorization:Bearer <token>
- Contoh Request
DELETE {{BaseURL}}/courses/1/students Accept: application/json Authorization: Bearer <token> - Response Berhasil
{ "status": "success", "message": "Berhasil keluar sebagai pelajar pada kursus" } - Response Gagal
{ "status": "fail", "message": "Data tidak valid", "data": { "field": [ "Pesan validasi" ] } }
Change Student Ratings
Memberikan atau memperbarui nilai rating dan ulasan untuk kursus.
- URL
/courses/:id/students/ratings
- Method
- PUT
- Headers
Content-Type:application/jsonAuthorization:Bearer <token>
- Request Body
ratingsasnumberonly1, 2, 3, 4 or 5commentasstring
- Contoh Request
PUT {{BaseURL}}/courses/1/students/ratings Accept: application/json Authorization: Bearer <token> Content-Type: application/json { "ratings": 1, "comment": "Komentar percobaan" } - Response Berhasil
{ "status": "success", "message": "Berhasil mengubah ratings pada kursus" } - Response Gagal
{ "status": "fail", "message": "Data tidak valid", "data": { "field": [ "Pesan validasi" ] } }
Add New Content
Menambahkan materi/konten pembelajaran baru ke dalam kursus.
- URL
/courses/:id/contents
- Method
- POST
- Headers
Content-Type:application/jsonAuthorization:Bearer <token>
- Request Body
titleasstringyoutubeasurl
- Contoh Request
POST {{BaseURL}}/courses/1/contents Accept: application/json Authorization: Bearer <token> Content-Type: application/json { "title": "Contoh Judul", "youtube": "https://youtu.be/uHyfQV0kbgo" } - Response Berhasil
{ "status": "success", "message": "Berhasil menambahkan konten kursus", "data": { "content_id": 1 } } - Response Gagal
{ "status": "fail", "message": "Data tidak valid", "data": { "field": [ "Pesan validasi" ] } }
Update Content
Memperbarui isi judul atau materi pembelajaran pada konten kursus.
- URL
/courses/-/contents/:id
- Method
- PUT
- Headers
Content-Type:application/jsonAuthorization:Bearer <token>
- Request Body
titleasstringyoutubeasurl
- Contoh Request
PUT {{BaseURL}}/courses/-/contents/1 Accept: application/json Authorization: Bearer <token> Content-Type: application/json { "title": "Contoh Judul", "youtube": "https://youtu.be/uHyfQV0kbgo" } - Response Berhasil
{ "status": "success", "message": "Berhasil mengubah konten kursus" } - Response Gagal
{ "status": "fail", "message": "Data tidak valid", "data": { "field": [ "Pesan validasi" ] } }
Detail Content
Melihat isi detail satu materi konten kursus berdasarkan ID.
- URL
/courses/-/contents/:id
- Method
- GET
- Headers
Authorization:Bearer <token>
- Contoh Request
GET {{BaseURL}}/courses/-/contents/1 Accept: application/json Authorization: Bearer <token> - Response Berhasil
{ "status": "success", "message": "Berhasil mengambil data", "data": { "course_content": { "id": 4, "course_id": 3, "title": "Dasar Java", "youtube": "https://youtu.be/uHyfQV0kbgo", "created_at": "2024-10-06T01:03:20.000000Z", "updated_at": "2024-10-06T01:03:20.000000Z", "my_status_finished": true } } } - Response Gagal
{ "status": "fail", "message": "Data tidak valid", "data": { "field": [ "Pesan validasi" ] } }
Delete Content
Menghapus materi pembelajaran tertentu dari kursus.
- URL
/courses/-/contents/:id
- Method
- DELETE
- Headers
Content-Type:application/jsonAuthorization:Bearer <token>
- Contoh Request
DELETE {{BaseURL}}/courses/-/contents/1 Accept: application/json Authorization: Bearer <token> - Response Berhasil
{ "status": "success", "message": "Berhasil menghapus konten kursus" } - Response Gagal
{ "status": "fail", "message": "Data tidak valid", "data": { "field": [ "Pesan validasi" ] } }
Change Content Status
Memperbarui status penyelesaian materi konten oleh peserta kursus.
- URL
/courses/-/contents/:id/learns
- Method
- POST
- Headers
Content-Type:application/jsonAuthorization:Bearer <token>
- Request Body
statusas1 | 0
- Contoh Request
POST {{BaseURL}}/courses/-/contents/1/learns Accept: application/json Authorization: Bearer <token> Content-Type: application/json { "status": 0 } - Response Berhasil
{ "status": "success", "message": "Berhasil mengubah status pembelajaran pada konten kursus" } - Response Gagal
{ "status": "fail", "message": "Data tidak valid", "data": { "field": [ "Pesan validasi" ] } }
Delete All Courses
Menghapus semua data kursus yang dibuat oleh pengguna saat ini secara permanen beserta cover, materi konten, pendaftaran siswa, dan progres belajar terkait.
- URL
/courses
- Method
- DELETE
- Headers
Authorization:Bearer <token>
- Contoh Request
DELETE {{BaseURL}}/courses Accept: application/json Authorization: Bearer <token> - Response Berhasil
{ "status": "success", "message": "Berhasil menghapus semua data kursus" } - Response Gagal
{ "status": "fail", "message": "Unauthenticated." }