Please note that I did my own app but it has all required functionalities like user auth and the likes its just a little different structure.
- api/menu/ POST GET
- api/menu/{menuId}/ GET PUT PATCH DELETE
- api/bookings/ POST GET
- api/bookings/{bookingId}/ GET PUT PATCH DELETE
- auth/users/ POST for registration (signing up) GET requires authentication when requested by admin token returns all users and when by regular user returns user info
- auth/users/{userId}/ GET DELETE PUT PATCH when used by admin can be used on any user ID and when used by user it can be used with users own id only and acts like users/me/
- auth/users/me/ requires authentication GET PUT PATCH DELETE
- auth/token/login/ POST takes username and password and returns token
- auth/token/logout/ takes token and expires token and it cannot be used anymore