This is a simple API for React.js MedCare frontend project. It is built using Django Rest Framework.
- Admin
- Doctor
- Patient
- Can control all the system through the admin panel.
- Can add, update, delete doctors.
- Can add, update, delete patients.
- Can add, update, delete appointments.
- Add schedule for his appointments.
- View his appointments(approved, pending, rejected).
- approve or reject appointments.
- View all doctors.
- View doctor's profile.
- Book an appointment with a doctor.
- View his appointments(approved, pending, rejected).
- pay for the appointment via paymob.
- Confirmation email for the registration.
- Email notification for the appointment status.
- Django
- Django Rest Framework
- Jazzmin
- Paymob api
- Postgresql
- Clone the repo
git clone git@github.com:MohamedAbdElgni/Med-Care-Api.git
- Install requirements
pip install -r requirements.txt
- Migration and create superuser
python manage.py makemigrations
python manage.py migrate
- Run the server
python manage.py runserver
- POST '/auth/register/' - Register a new user
- POST '/auth/login/' - Login user
- POST '/auth/logout/' - Logout user
- POST '/auth/activate/// - Activate user account
- POST GET 'users/int:id/' - Get user by id - Update user
- GET '/doctors/' - Get all doctors
- GET PUT DELETE '/doctor/int:pk/' - Get doctor by id - Update doctor additonal info - Delete doctor
- GET POST '/all_sch/' - Get all schedules - Add new schedule
- GET PUT DELETE '/schedule/int:s_id/' - Get schedule by id - Update schedule - Delete schedule
- GET POST '/all_app/' - Get all appointments - Add new appointment
- GET PUT DELETE '/appointment/int:a_id/' - Get appointment by id - Update appointment - Delete appointment
- GET '/all_app/doctor/int:doctor_id/' - Get all doctor appointments
- GET '/all_sch/doctor/int:doctor_id/' - Get all doctor schedules
- GET '/all_app/user/int:user_id/' - Get all user appointments
- PUT '/pay/int:appointment_id/' - Handle payment
- POST GET '/iframe/int:appointment_id/' - Get payment iframe url
- GET POST '/ratings/' - Get all ratings - Add new rating
- GET PUT DELETE '/rating/int:rating_id/' - Get rating by id - Update rating - Delete rating
- GET '/doctor/int:doctor_id/' - Get doctor ratings
- GET POST '/offers/' - Get all offers - Add new offer
- GET PUT DELETE '/offer/int:offer_id/' - Get offer by id - Update offer - Delete offer
- GET '/doctor/int:doctor_id/' - Get doctor offers
This project is licensed under the MIT License - see the LICENSE file for details