Skip to content

Commit cc5807c

Browse files
committed
Add PUT /users/:id endpoint to update existing users
- Validates that both name and email are provided (400 if missing) - Returns 404 when user does not exist - Returns 200 with updated user object on success - Mirrors POST endpoint validation for consistency
1 parent 59edb85 commit cc5807c

1 file changed

Lines changed: 18 additions & 0 deletions

File tree

routes/users.js

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,4 +32,22 @@ router.post("/", (req, res) => {
3232
res.status(201).json(user);
3333
});
3434

35+
// PUT /users/:id — update an existing user
36+
router.put("/:id", (req, res) => {
37+
const id = Number(req.params.id);
38+
const { name, email } = req.body;
39+
40+
if (!name || !email) {
41+
return res.status(400).json({ error: "name and email are required" });
42+
}
43+
44+
const user = store.updateUser(id, { name, email });
45+
46+
if (!user) {
47+
return res.status(404).json({ error: "User not found" });
48+
}
49+
50+
res.json(user);
51+
});
52+
3553
module.exports = router;

0 commit comments

Comments
 (0)