Index: frontend/src/services/appointmentService.js
===================================================================
--- frontend/src/services/appointmentService.js	(revision 20468d38749c5a3ed89d6df4db22905a1d0c3df1)
+++ frontend/src/services/appointmentService.js	(revision 20468d38749c5a3ed89d6df4db22905a1d0c3df1)
@@ -0,0 +1,23 @@
+import apiClient from './api';
+
+const ENDPOINT = '/appointments';
+
+export const appointmentService = {
+  getAllAppointments: () => apiClient.get(ENDPOINT),
+
+  getAppointmentById: (id) => apiClient.get(`${ENDPOINT}/${id}`),
+
+  getAppointmentsForPatient: (patientId) => apiClient.get(`${ENDPOINT}/patient/${patientId}`),
+
+  getAppointmentsForDoctor: (doctorId) => apiClient.get(`${ENDPOINT}/doctor/${doctorId}`),
+
+  getDoctorSchedule: (doctorId, date) => apiClient.get(`${ENDPOINT}/doctor/${doctorId}/schedule`, {
+    params: { date }
+  }),
+
+  createAppointment: (appointment) => apiClient.post(ENDPOINT, appointment),
+
+  cancelAppointment: (id) => apiClient.patch(`${ENDPOINT}/${id}/cancel`),
+
+  completeAppointment: (id) => apiClient.patch(`${ENDPOINT}/${id}/complete`),
+};
