Index: src/main/java/it/finki/tinki/model/dto/edit/work/InternshipEditDTO.java
===================================================================
--- src/main/java/it/finki/tinki/model/dto/edit/work/InternshipEditDTO.java	(revision 6729ba51f1105d56935c5cae90757ade1cac2082)
+++ src/main/java/it/finki/tinki/model/dto/edit/work/InternshipEditDTO.java	(revision 6729ba51f1105d56935c5cae90757ade1cac2082)
@@ -0,0 +1,8 @@
+package it.finki.tinki.model.dto.edit.work;
+
+import lombok.Data;
+
+@Data
+public class InternshipEditDTO extends WorkEditDTO{
+    int openSpots;
+}
Index: src/main/java/it/finki/tinki/model/dto/edit/work/WorkEditDTO.java
===================================================================
--- src/main/java/it/finki/tinki/model/dto/edit/work/WorkEditDTO.java	(revision 6729ba51f1105d56935c5cae90757ade1cac2082)
+++ src/main/java/it/finki/tinki/model/dto/edit/work/WorkEditDTO.java	(revision 6729ba51f1105d56935c5cae90757ade1cac2082)
@@ -0,0 +1,11 @@
+package it.finki.tinki.model.dto.edit.work;
+
+import lombok.Data;
+
+@Data
+public class WorkEditDTO {
+    String title;
+    String description;
+    Long accountId;
+    int salary;
+}
Index: src/main/java/it/finki/tinki/model/dto/response/work/WorkResponseDTO.java
===================================================================
--- src/main/java/it/finki/tinki/model/dto/response/work/WorkResponseDTO.java	(revision df3a3952e4e6392e41aaf48c8ea528bedfa619aa)
+++ src/main/java/it/finki/tinki/model/dto/response/work/WorkResponseDTO.java	(revision 6729ba51f1105d56935c5cae90757ade1cac2082)
@@ -13,4 +13,5 @@
     String accountEmail;
     String accountName;
+    Long accountId;
     AccountType accountType;
     String error;
@@ -28,4 +29,5 @@
         this.description = description;
         this.salary = salary;
+        this.accountId = account.getId();
         this.accountEmail = account.getEmail();
         this.accountName = account.getName();
Index: src/main/java/it/finki/tinki/service/impl/WorkServiceImpl.java
===================================================================
--- src/main/java/it/finki/tinki/service/impl/WorkServiceImpl.java	(revision df3a3952e4e6392e41aaf48c8ea528bedfa619aa)
+++ src/main/java/it/finki/tinki/service/impl/WorkServiceImpl.java	(revision 6729ba51f1105d56935c5cae90757ade1cac2082)
@@ -131,4 +131,5 @@
         j.setDescription(description);
         j.setSalary(salary);
+        j.setOpenSpots(openSpots);
 
         return this.internshipRepository.save(j);
Index: src/main/java/it/finki/tinki/web/controller/WorkEditController.java
===================================================================
--- src/main/java/it/finki/tinki/web/controller/WorkEditController.java	(revision df3a3952e4e6392e41aaf48c8ea528bedfa619aa)
+++ src/main/java/it/finki/tinki/web/controller/WorkEditController.java	(revision 6729ba51f1105d56935c5cae90757ade1cac2082)
@@ -4,4 +4,6 @@
 import it.finki.tinki.model.Work.Job;
 import it.finki.tinki.model.Work.Project;
+import it.finki.tinki.model.dto.edit.work.InternshipEditDTO;
+import it.finki.tinki.model.dto.edit.work.WorkEditDTO;
 import it.finki.tinki.model.dto.register.work.InternshipRegisterDTO;
 import it.finki.tinki.model.dto.register.work.JobRegisterDTO;
@@ -29,55 +31,49 @@
 
     @PostMapping("/job/{id}")
-    public Map<String, String> editJob(@PathVariable Long id,
-                                       @RequestBody JobRegisterDTO body){
+    public JobResponseDTO editJob(@PathVariable Long id,
+                                  @RequestBody WorkEditDTO body){
 
-        Map<String, String> response = new HashMap<>();
+        Job j = this.workService.getJobById(id);
 
-        if(body.getAccountId().equals(this.workService.getJobById(id).getAccount().getId())) {
+        if(body.getAccountId().equals(j.getAccount().getId())) {
             Job k = this.workService.editJob(id, body.getTitle(), body.getDescription(), body.getSalary());
             if(k!=null){
-                response.put("success", "Job edited successfully!");
-                return response;
+                return new JobResponseDTO(k);
             }
         }
 
-        response.put("error", "Internship edit failed!");
-        return response;
+        return new JobResponseDTO();
     }
 
     @PostMapping("/internship/{id}")
-    public Map<String, String> editInternship(@PathVariable Long id,
-                                                @RequestBody InternshipRegisterDTO body){
+    public InternshipResponseDTO editInternship(@PathVariable Long id,
+                                                @RequestBody InternshipEditDTO body){
 
-        Map<String, String> response = new HashMap<>();
+        Internship i = this.workService.getInternshipById(id);
 
-        if(body.getAccountId().equals(this.workService.getInternshipById(id).getAccount().getId())){
+        if(body.getAccountId().equals(i.getAccount().getId())){
             Internship k = this.workService.editInternship(id, body.getTitle(), body.getDescription(), body.getSalary(), body.getOpenSpots());
             if(k!=null){
-                response.put("success", "Internship edited successfully!");
-                return response;
+                return new InternshipResponseDTO(k);
             }
         }
 
-        response.put("error", "Internship edit failed!");
-        return response;
+        return new InternshipResponseDTO();
     }
 
     @PostMapping("/project/{id}")
-    public Map<String, String> editProject(@PathVariable Long id,
-                                          @RequestBody ProjectRegisterDTO body){
+    public ProjectResponseDTO editProject(@PathVariable Long id,
+                                          @RequestBody WorkEditDTO body){
 
-        Map<String, String> response = new HashMap<>();
+        Project p = this.workService.getProjectById(id);
 
-        if(body.getAccountId().equals(this.workService.getProjectById(id).getAccount().getId())) {
+        if(body.getAccountId().equals(p.getAccount().getId())) {
             Project k = this.workService.editProject(id, body.getTitle(), body.getDescription(), body.getSalary());
             if(k!=null){
-                response.put("success", "Project edited successfully!");
-                return response;
+                return new ProjectResponseDTO(k);
             }
         }
 
-        response.put("error", "Project edit failed!");
-        return response;
+        return new ProjectResponseDTO();
     }
 }
