This is the official REST API for DEV TALKS, providing endpoints to interact with filters, rooms, and users.
this api used to serve the [DEV TALKS] web application.
- Development Server: http://localhost:8080
TODO: Include information about any authentication mechanisms, if applicable.
- Endpoint:
/api/filters
- Method:
GET
- Description: Get all filters.
- Response:
200 OK
- Successful response with filters.500 Internal Server Error
- Internal Server Error.
- Endpoint:
/api/filters/{id}/rooms
- Method:
GET
- Description: Get rooms for a specific filter.
- Parameters:
{id}
(Path Parameter) - The ID of the filter.
- Response:
200 OK
- Successful response with filtered rooms.404 Not Found
- Filter not found.500 Internal Server Error
- Internal Server Error.
- Endpoint:
/api/rooms
- Method:
GET
- Description: Get all public rooms.
- Response:
200 OK
- Successful response with public rooms.500 Internal Server Error
- Internal Server Error.
- Endpoint:
/api/rooms
- Method:
POST
- Description: Create a new room.
- Request Body:
- JSON object with room details.
- Response:
201 Created
- Room created successfully.403 Forbidden
- Max users count reached or invalid user input.500 Internal Server Error
- Internal Server Error.
- Endpoint:
/api/rooms/{id}
- Method:
GET
- Description: Get details of a specific room.
- Parameters:
{id}
(Path Parameter) - The ID of the room.
- Response:
200 OK
- Successful response with room details.404 Not Found
- Room not found.500 Internal Server Error
- Internal Server Error.
- Endpoint:
/api/rooms/{id}
- Method:
PUT
- Description: Update details of a specific room.
- Parameters:
{id}
(Path Parameter) - The ID of the room.
- Request Body:
- JSON object with updated room details.
- Response:
200 OK
- Room updated successfully.403 Forbidden
- Max users count reached or invalid user input.404 Not Found
- Room not found.500 Internal Server Error
- Internal Server Error.
- Endpoint:
/api/rooms/{id}
- Method:
DELETE
- Description: Delete a specific room.
- Parameters:
{id}
(Path Parameter) - The ID of the room.
- Response:
204 No Content
- Room deleted successfully.403 Forbidden
- Invalid user input or user not authorized to delete the room.404 Not Found
- Room not found.500 Internal Server Error
- Internal Server Error.
- Endpoint:
/api/rooms/{id}/join
- Method:
PATCH
- Description: Join a specific room.
- Parameters:
{id}
(Path Parameter) - The ID of the room.
- Request Body:
- JSON object with user ID.
- Response:
200 OK
- User joined the room successfully.403 Forbidden
- Max users count reached or invalid user input.404 Not Found
- Room not found.409 Conflict
- User already in the room.500 Internal Server Error
- Internal Server Error.
- Endpoint:
/api/rooms/{id}/leave
- Method:
PATCH
- Description: Leave a specific room.
- Parameters:
{id}
(Path Parameter) - The ID of the room.
- Request Body:
- JSON object with user ID.
- Response:
200 OK
- User left the room successfully.403 Forbidden
- Invalid user input or user not authorized to leave the room.404 Not Found
- Room not found.409 Conflict
- User not in the room.500 Internal Server Error
- Internal Server Error.
- Endpoint:
/api/users
- Method:
POST
- Description: Create a new user.
- Request Body:
- JSON object with user details.
- Response:
200 OK
- User already exists.201 Created
- User created successfully.500 Internal Server Error
- Internal Server Error.
- Filters
- Rooms
- Users