Welcome to the RDV Manager API! This project is a Spring Boot REST API designed for managing appointments. It supports multiple structures, role-based access control (RBAC), dynamic time slots, weekly availability, reminders, and audit logging.
For the latest releases, visit Releases.
- Multi-Structure Support: Manage appointments across various structures effortlessly.
- Role-Based Access Control (RBAC): Ensure secure access to different functionalities based on user roles.
- Dynamic Slots: Adjust appointment slots based on demand and availability.
- Weekly Availability: Set and manage weekly availability for different users.
- Reminders: Automated reminders for upcoming appointments.
- Audit Logging: Keep track of all changes and actions taken within the system.
This project utilizes several key technologies:
- Java: The primary programming language for the API.
- Spring Boot: A powerful framework that simplifies the development of Java applications.
- Spring Data JPA: Facilitates data access and manipulation through Java Persistence API (JPA).
- RESTful Services: Follows REST principles for building APIs.
To get started with the RDV Manager API, follow these steps:
-
Clone the Repository:
git clone https://github.com/tyrunplacable/rdv_manager_api.git
-
Navigate to the Project Directory:
cd rdv_manager_api -
Build the Project: Use Maven to build the project:
mvn clean install
-
Run the Application: You can run the application using:
mvn spring-boot:run
-
Access the API: The API will be available at
http://localhost:8080.
The RDV Manager API allows users to manage appointments efficiently. Here’s how to interact with the API:
- Authentication: Use JWT tokens for secure access.
- Create Appointments: Send a POST request to create new appointments.
- Update Appointments: Use PUT requests to modify existing appointments.
- Delete Appointments: Send DELETE requests to remove appointments.
- Fetch Appointments: Use GET requests to retrieve appointment data.
Here are some of the key API endpoints available:
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/appointments |
Create a new appointment |
| GET | /api/appointments/{id} |
Retrieve appointment details |
| PUT | /api/appointments/{id} |
Update an existing appointment |
| DELETE | /api/appointments/{id} |
Delete an appointment |
| GET | /api/availability |
Get weekly availability |
To create an appointment, send a POST request to /api/appointments with the following JSON body:
{
"title": "Doctor's Appointment",
"date": "2023-10-01T10:00:00",
"duration": 30,
"userId": 1
}A successful response will return the created appointment details:
{
"id": 1,
"title": "Doctor's Appointment",
"date": "2023-10-01T10:00:00",
"duration": 30,
"userId": 1
}We welcome contributions to improve the RDV Manager API. If you want to contribute, please follow these steps:
- Fork the Repository: Click the "Fork" button at the top right of the repository page.
- Create a New Branch:
git checkout -b feature/YourFeature
- Make Your Changes: Implement your feature or fix.
- Commit Your Changes:
git commit -m "Add a new feature" - Push to Your Fork:
git push origin feature/YourFeature
- Create a Pull Request: Go to the original repository and click "New Pull Request".
This project is licensed under the MIT License. See the LICENSE file for details.
The RDV Manager API is a powerful tool for managing appointments. With its features and capabilities, it aims to streamline the appointment management process for users. For the latest updates and releases, check out Releases.
Feel free to explore, contribute, and enhance the RDV Manager API!