diff --git a/service/planner/db/client.go b/service/planner/db/client.go
index a58ffc6f748578f190904a3bc75e214b595b6329..bbc22753e5dd00d88e99f3f9395e51fb4acd250a 100644
--- a/service/planner/db/client.go
+++ b/service/planner/db/client.go
@@ -106,28 +106,28 @@ func GetUser(id int) (*model.User, error) {
 		return nil, errors.New("account not found")
 	}
 
-	queryMeals, err := udb.Query("SELECT userId, mealId, date FROM userMeal WHERE userId = ?;", id)
+	queryMeals, err := udb.Query("SELECT * FROM userMeal WHERE userId = ?;", id)
 	if err != nil {
 		return nil, err
 	}
 	defer queryMeals.Close()
 	for queryMeals.Next() {
-		var meal model.UserMeal
-		err = queryMeals.Scan(&meal.UserID, &meal.MealID, &meal.Date)
+		var meal model.UserMealWithId
+		err = queryMeals.Scan(&meal.ID, &meal.UserID, &meal.MealID, &meal.Date)
 		if err != nil {
 			continue
 		}
 		user.Meals = append(user.Meals, meal)
 	}
 
-	queryShoppingDates, err := udb.Query("SELECT userId, date FROM shoppingDate WHERE userId = ?;", id)
+	queryShoppingDates, err := udb.Query("SELECT * FROM shoppingDate WHERE userId = ?;", id)
 	if err != nil {
 		return nil, err
 	}
 	defer queryShoppingDates.Close()
 	for queryShoppingDates.Next() {
-		var date model.ShoppingDate
-		err = queryMeals.Scan(&date.UserID, &date.Date)
+		var date model.ShoppingDateWithId
+		err = queryShoppingDates.Scan(&date.ID, &date.UserID, &date.Date)
 		if err != nil {
 			continue
 		}
@@ -273,7 +273,7 @@ func GetGroup(id int) (*model.Group, error) {
 	defer query.Close()
 	group := &model.Group{}
 	for query.Next() {
-		err = query.Scan(&group.ID)
+		err = query.Scan(&group.ID, &group.Name)
 		if err != nil {
 			return nil, err
 		}
@@ -283,14 +283,14 @@ func GetGroup(id int) (*model.Group, error) {
 		return nil, errors.New("group not found")
 	}
 
-	queryMeals, err := udb.Query("SELECT groupId, mealId, date FROM groupMeal WHERE groupId = ?;", id)
+	queryMeals, err := udb.Query("SELECT * FROM groupMeal WHERE groupId = ?;", id)
 	if err != nil {
 		return nil, err
 	}
 	defer queryMeals.Close()
 	for queryMeals.Next() {
-		var meal model.GroupMeal
-		err = queryMeals.Scan(&meal.GroupID, &meal.MealID, &meal.Date)
+		var meal model.GroupMealWithId
+		err = queryMeals.Scan(&meal.ID, &meal.GroupID, &meal.MealID, &meal.Date)
 		if err != nil {
 			continue
 		}
diff --git a/service/planner/main.go b/service/planner/main.go
index 3facd584242064fbbced9426f974821353e73bd5..30f01994e56ba0bdc125647830015f6c4afeadfd 100644
--- a/service/planner/main.go
+++ b/service/planner/main.go
@@ -48,6 +48,7 @@ func main() {
 	router.HandleFunc("/group/meal", handler.CreateGroupMeal).Methods(http.MethodPost)
 	router.HandleFunc("/group/{id}", handler.GetGroup).Methods(http.MethodGet)
 	router.HandleFunc("/group/{id}", handler.DeleteGroup).Methods(http.MethodDelete)
+	router.HandleFunc("/group", handler.GetGroups).Methods(http.MethodGet)
 	router.HandleFunc("/group", handler.CreateGroup).Methods(http.MethodPost)
 	fmt.Printf("Server is listening on port :%v\n", port)
 	if err := http.ListenAndServe(fmt.Sprintf(":%v", port), router); err != nil {
diff --git a/service/planner/model/group.go b/service/planner/model/group.go
index d96c7cc338401af9201733383a42f78de36d7e01..22402e63e326213a1d20fd21c7b8b04d2db23a7c 100644
--- a/service/planner/model/group.go
+++ b/service/planner/model/group.go
@@ -1,10 +1,10 @@
 package model
 
 type Group struct {
-	ID      int         `json:"id"`
-	Name    string      `json:"name"`
-	UserIDs []int       `json:"userIds"`
-	Meals   []GroupMeal `json:"meals"`
+	ID      int               `json:"id"`
+	Name    string            `json:"name"`
+	UserIDs []int             `json:"userIds"`
+	Meals   []GroupMealWithId `json:"meals"`
 }
 
 type GroupItem struct {
diff --git a/service/planner/model/meal.go b/service/planner/model/meal.go
index 4f615657a5c46f2e6f11e05939652bc95f10f748..a280c0809aa8f01e0564c9d20a1b205efd81c069 100644
--- a/service/planner/model/meal.go
+++ b/service/planner/model/meal.go
@@ -6,8 +6,22 @@ type UserMeal struct {
 	Date   string `json:"date"`
 }
 
+type UserMealWithId struct {
+	ID     int    `json:"id"`
+	UserID int    `json:"userId"`
+	MealID int    `json:"mealId"`
+	Date   string `json:"date"`
+}
+
 type GroupMeal struct {
 	GroupID int    `json:"groupId"`
 	MealID  int    `json:"mealId"`
 	Date    string `json:"date"`
 }
+
+type GroupMealWithId struct {
+	ID      int    `json:"id"`
+	GroupID int    `json:"groupId"`
+	MealID  int    `json:"mealId"`
+	Date    string `json:"date"`
+}
diff --git a/service/planner/model/shopping.go b/service/planner/model/shopping.go
index 23b3aad963d9ea8262744f35530204fa85853d54..892a0702f4a62eb5bdaf713c90e787c99a42316b 100644
--- a/service/planner/model/shopping.go
+++ b/service/planner/model/shopping.go
@@ -4,3 +4,9 @@ type ShoppingDate struct {
 	UserID int    `json:"userId"`
 	Date   string `json:"date"`
 }
+
+type ShoppingDateWithId struct {
+	ID     int    `json:"id"`
+	UserID int    `json:"userId"`
+	Date   string `json:"date"`
+}
diff --git a/service/planner/model/user.go b/service/planner/model/user.go
index 4acc2cb2df9acbc38416a87dda1b7b8d6217e953..86dd23f30353f5b260dbbf2c3560b2d4346165eb 100644
--- a/service/planner/model/user.go
+++ b/service/planner/model/user.go
@@ -1,12 +1,12 @@
 package model
 
 type User struct {
-	ID            int            `json:"id"`
-	Mail          string         `json:"mail"`
-	FirstName     string         `json:"firstName"`
-	LastName      string         `json:"lastName"`
-	Meals         []UserMeal     `json:"meals"`
-	ShoppingDates []ShoppingDate `json:"shoppingDates"`
+	ID            int                  `json:"id"`
+	Mail          string               `json:"mail"`
+	FirstName     string               `json:"firstName"`
+	LastName      string               `json:"lastName"`
+	Meals         []UserMealWithId     `json:"meals"`
+	ShoppingDates []ShoppingDateWithId `json:"shoppingDates"`
 }
 
 type UserItem struct {