diff --git a/messagesAppBackend/src/server.ts b/messagesAppBackend/src/server.ts
index fae4bfa39390252e78faf25d4cc5dad94e31f35d..6283e263ed56f50cbe29a3a1ef1fc611b94ac06e 100644
--- a/messagesAppBackend/src/server.ts
+++ b/messagesAppBackend/src/server.ts
@@ -3,14 +3,50 @@ import mongoose from 'mongoose'
 import Message from './Message'
 
 const app = express()
-
-mongoose.connect("mongodb+srv://joasep:koira@messagescluster0.nvb8tqc.mongodb.net/?retryWrites=true&w=majority");
+app.use(express.json());
 
 app.get("/", async (req, res) => {
-    let message = await findMessage()
-    res.send(message) 
+    res.send("This is the root of the API!")
+})
+
+app.get("/users", async (req, res) => {
+    res.send("There are no users yet!")
+})
+
+app.get("/messages", async (req, res) => {
+    await mongoose.connect("mongodb+srv://joasep:koira@messagescluster0.nvb8tqc.mongodb.net/?retryWrites=true&w=majority");
+    let messages = await findMessage()
+    res.send(messages)
+    mongoose.disconnect();
+})
+
+app.post("/messages", async (req, res) => {
+    await mongoose.connect("mongodb+srv://joasep:koira@messagescluster0.nvb8tqc.mongodb.net/?retryWrites=true&w=majority");
+    await addMessage(req.body.message);
+    mongoose.disconnect();
+})
+
+app.delete("/messages/:id", async (req, res) => {
+    await mongoose.connect("mongodb+srv://joasep:koira@messagescluster0.nvb8tqc.mongodb.net/?retryWrites=true&w=majority");
+    await deleteMessage(req.params.id)
+    mongoose.disconnect();
+})
+
+app.put("/messages/:id", async (req, res) => {
+    await mongoose.connect("mongodb+srv://joasep:koira@messagescluster0.nvb8tqc.mongodb.net/?retryWrites=true&w=majority");
+    await modifyMessage(req.params.id, req.body.message)
+    mongoose.disconnect();
 })
 
+async function modifyMessage(messageID, messageBody){
+    await Message.updateOne({_id: messageID}, {message: messageBody})
+}
+
+async function deleteMessage(messageID){
+    await Message.deleteOne({_id: messageID})
+}
+
+
 async function addMessage(messageContent){
     await Message.create({message: messageContent})
 }