Each group has tasks and users
Important notes:
Model:
Routes:
Schema of response of GET /groups/:id:
{
"name": "string",
"members": 123
}
Accepted data to PUT /groups/:id:
{
"name": "string",
}
Accepted data to POST /groups/:groupid/users:
{
"id": 12345,
}
Each group has tasks and users
Important notes:
/groups/:id/users, reject access to/groups/:id/tasks;groups/:id/users, reject access to this route to the user;Model:
Routes:
GET /groups– get all groups (array of groups);POST /groups– create new group;GET /groups/:id– get one group:Schema of response of
GET /groups/:id:{ "name": "string", "members": 123 }PUT /groups/:id– update groupAccepted data to
PUT /groups/:id:{
"name": "string",
}
POST /groups/:groupid/users– add new user to the group (user joins). Works only if userid == current_user.id;Accepted data to
POST /groups/:groupid/users:{
"id": 12345,
}
DELETE /groups/:groupid/users/:userid– remove a user from the group (user leaves). Works only if userid == current_user.id;ALL /groups/:id/tasks– GET, POST, PUT like in tasks controller etc.