Skip to main content

Booking

Endpoint pada modul Booking digunakan oleh pasien untuk melakukan pemesanan jadwal layanan medis, membatalkan booking, serta melihat riwayat booking.


Create Booking

Digunakan untuk membuat booking layanan medis dengan dokter dan jadwal tertentu.

POST /v1/bookings

Authorization: Bearer <jwt_token> Content-Type: application/json Accept: application/json

Booking Activity Endpoints

Create Action

POST v1/bookings

{
"doctor_id": "bf996df8-07fd-47a8-875a-273b18d44e21",
"session_id": "1df412b1-09cc-410d-b0eb-3b9e413d52ac3",
"schedule_date": "2025-11-12",
"schedule_time": "12:00:00",
"notes": "Booking untuk sesi pagi"
}

Response (201):

{
"status": "success",
"message": "Booking berhasil dibuat",
"data": {
"id": "1df412b1-09cc-410d-b0eb-3b9e4e052ac3",
"doctor_id": "bf996df8-07fd-47a8-875a-273b18d44e21",
"doctor_name": "Sonya",
"session_id": "1df412b1-09cc-410d-b0eb-3b9e413d52ac3",
"session_name": "Sesi Pagi",
"schedule_date": "2025-11-12",
"schedule_time": "12:00:00",
"notes": "Booking untuk sesi pagi",
"status": "waiting"
}
}

Cancel Action

POST /v1/bookings/{id}/cancel

Response (200):

{
"status": "success",
"message": "Booking berhasil dibatalkan",
"data": {
"id": "1df412b1-09cc-410d-b0eb-3b9e4e052ac3",
"status": "canceled"
}
}

History

GET /v1/bookings/history

Response (200):

{
"status": "success",
"data": [
{
"id": "1df412b1-09cc-410d-b0eb-3b9e4e052ac3",
"doctor_name": "Sonya",
"session_name": "Sesi Pagi",
"schedule_date": "2025-11-12",
"schedule_time": "12:00:00",
"notes": "Booking untuk sesi pagi",
"status": "canceled"
},
{
"id": "1df412b1-09cc-410d-b0eb-3b9e4t662ac3",
"session_id": "1df412b1-09cc-410d-b0eb-3b9e413d52ac3",
"doctor_id": "bf996df8-07fd-47a8-875a-67eb18d44e21",
"doctor_name": "Norman",
"session_id": "1df412b1-09cc-410d-b0eb-3b9e413d52ac3",
"session_name": "Sesi Siang",
"schedule_date": "2025-11-12",
"schedule_time": "12:00:00",
"notes": "Booking untuk sesi siang",
"status": "approved"
},
]
}