codev-back's People
codev-back's Issues
Path parameters on rooms entries
Add path parameters on room entries:
- filter: filter by one or many properties
- name: name contains string
- sort: sort by one or many properties
- date and time: fetch the room's availability for a certain day of the week on a certain time period
GET /bookings
Returns logged user's bookings
Authentication header
Force authentication on booking requests and /user/id request
Get list of empty rooms
Goal : add a new endpoint /rooms?time=
This endpoint checks the rooms data and return the rooms available at the time period
The rooms data should be refreshed every hour using the ADE API
Allow null for nfc field on signup
DELETE /friends
remove a friend
Entry to know if token is still valid
Would be used to avoid having to login again every time the app is opened.
Design /events API
Authentication fails
It is impossible to authenticate neither with mail/password nor with nfc id
Replace token in body by token in Authorization header
2 endpoints concerned for now
Remove profile_id from request body of POST /bookings
[META] API Routes
List of all routes
- /auth
- GET /auth/check
- POST /auth/login
- POST /auth/signup
- /nfc
- POST /auth/nfc/login
- PUT /auth/nfc/{id}
- /rooms
- GET /rooms/empty
- /bookings
- /users #24
- /friends
- /events #36
- POST /events
- GET /events
- PUT /events/{id}
- DELETE /events/{id}
- POST /events/invites - invite (admin)
- GET /events/invites - see my invites
- PUT /events/invites/{id} - accept/decline invite - the id is an event id !
- DELETE /events/invites - cancel invite (admin)
- GET /events/{id}/invites - see pending invites for the event
- GET /events/{id}/members - get event members
- DELETE /events/{id}/members - remove a member (admin)
- DELETE /events/{id}/me - quit event
- PUT /events/{id}/admins - share admin rights with a member (admin)
GET /friends/requests
get a list of all friends requests of current logged in user
for actual friends, use #32 use GET /friends
Signup
Add a signup route
POST /signup
{
"email": "",
"password": "",
"nfc": ""
}
The email need to be verified before the account start working
Users
Add routes to get all users (only non-private info, avoid passwords, nfc id etc. ...), get one user, get his friends
Signup with an email already in use
PUT /friends
give an answer to a friend request
the profile id must be of someone who is making a friends request to the current user
Search parameters are case sensitive
Better planning fetcher
- Add availabilities to the database instead of using a go map
- Update the /rooms endpoints to use the database
- Algorithm to merge room availabilities from ade and from database
- Update the database every hour
GET /users/me
- basic profile data
- list of friends
Add email to profiles
- GET /users
- GET /users/{id}
- GET /users/me
- GET /friends
- GET /frends/requests
change booking.number to booking.numberOfPeople
PUT /users
check supabase error and adapt http response code
GET /friends/requests/sent
get sent friend requests
NFC Login
Add a nfc login route
POST /nfc/login
{
"nfc": ""
}
The route returns a jwt token with the id
Specific code for each error
POST /friends
send a friend request
{
"profile_id": string
}
Book a room
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.