diff --git a/src/highlanderticketing/main.go b/src/highlanderticketing/main.go
index 7591ffb4d9ba7413b1127d95b25ad4a03ac87dd1..4af90d21bfd355740cf673d07bab2e1a15d2e605 100644
--- a/src/highlanderticketing/main.go
+++ b/src/highlanderticketing/main.go
@@ -11,6 +11,7 @@ import (
 	"gitlab.reutlingen-university.de/ege/highlander-ticketing-go-ss2023/src/highlanderticketing/handler"
 	"gitlab.reutlingen-university.de/ege/highlander-ticketing-go-ss2023/src/highlanderticketing/model"
 	"gitlab.reutlingen-university.de/ege/highlander-ticketing-go-ss2023/src/highlanderticketing/service"
+	"go.mongodb.org/mongo-driver/bson/primitive"
 )
 
 func main() {
@@ -19,7 +20,10 @@ func main() {
 	if err != nil {
 		log.Fatal(err)
 	}
-	var model1 = model.Match{1, 12, 12, true, "aaa"}
+
+	// Testen
+	objectID := primitive.NewObjectID()
+	var model1 = model.Match{ID: objectID, InitialTicketAmount: 1, AvailableTicketAmount: 1, AwayMatch: true, Location: "aaa"}
 	err1 := service.CreateMatch(&model1)
 	if err1 != nil {
 		fmt.Println(err)
@@ -29,6 +33,16 @@ func main() {
 		fmt.Println(err)
 	}
 	fmt.Println(matches)
+	match, err := service.GetMatchByID(objectID)
+	if err != nil {
+		fmt.Println(err)
+	}
+	fmt.Println(match)
+	deleted := service.DeleteAllMatches()
+	if err != nil {
+		fmt.Println(deleted)
+	}
+
 	router.HandleFunc("/health", handler.Health).Methods("GET")
 	if err := http.ListenAndServe(":8000", router); err != nil {
 		log.Fatal(err)
diff --git a/src/highlanderticketing/model/match.go b/src/highlanderticketing/model/match.go
index 554831081d05a88ec0babc123b2ef7abea76e9b0..1311852f811ca4c72f9a5d8c3628dd841a16dc29 100644
--- a/src/highlanderticketing/model/match.go
+++ b/src/highlanderticketing/model/match.go
@@ -1,13 +1,15 @@
 package model
 
+import "go.mongodb.org/mongo-driver/bson/primitive"
+
 type Match struct {
-	ID                    uint
-	InitialTicketAmount   int32
-	AvailableTicketAmount int32
-	AwayMatch             bool
-	Location              string
+	ID                    primitive.ObjectID `bson:"_id"`
+	InitialTicketAmount   int32              `bson:"initial_ticket_amount"`
+	AvailableTicketAmount int32              `bson:"available_ticket_amount"`
+	AwayMatch             bool               `bson:"away_match"`
+	Location              string             `bson:"location"`
 	//Date                  date.Date
-	//Travel Travel
+	//Travel                Travel
 	//Orders                []Order
 }
 
diff --git a/src/highlanderticketing/service/match.go b/src/highlanderticketing/service/match.go
index 356bcb6416341ba16f69367879a3b08becfa93d7..f974de1d3bcd20a5c96f5dc52fcbab069f5574a5 100644
--- a/src/highlanderticketing/service/match.go
+++ b/src/highlanderticketing/service/match.go
@@ -6,6 +6,7 @@ import (
 	"gitlab.reutlingen-university.de/ege/highlander-ticketing-go-ss2023/src/highlanderticketing/db"
 	"gitlab.reutlingen-university.de/ege/highlander-ticketing-go-ss2023/src/highlanderticketing/model"
 	"go.mongodb.org/mongo-driver/bson"
+	"go.mongodb.org/mongo-driver/bson/primitive"
 	"go.mongodb.org/mongo-driver/mongo"
 )
 
@@ -23,6 +24,28 @@ func CreateMatch(match *model.Match) error {
 	return nil
 }
 
+// noch testen
+func CreateMatches(list *[]model.Match) error {
+	insertableList := make([]interface{}, len(*list))
+	for i, v := range *list {
+		insertableList[i] = v
+	}
+
+	client, err := db.GetMongoClient()
+	if err != nil {
+		return err
+	}
+
+	collection := client.Database(db.DB).Collection(db.MATCHES)
+
+	_, err = collection.InsertMany(context.TODO(), insertableList)
+	if err != nil {
+		return err
+	}
+
+	return nil
+}
+
 func GetAllMatches() ([]model.Match, error) {
 	filter := bson.D{{}}
 	matches := []model.Match{}
@@ -53,3 +76,34 @@ func GetAllMatches() ([]model.Match, error) {
 
 	return matches, nil
 }
+
+func GetMatchByID(matchID primitive.ObjectID) (*model.Match, error) {
+	result := model.Match{}
+	filter := bson.D{primitive.E{Key: "_id", Value: matchID}}
+
+	client, err := db.GetMongoClient()
+	if err != nil {
+		return &result, err
+	}
+	collection := client.Database(db.DB).Collection(db.MATCHES)
+
+	err = collection.FindOne(context.TODO(), filter).Decode(&result)
+	if err != nil {
+		return &result, err
+	}
+	return &result, nil
+}
+
+func DeleteAllMatches() error {
+	selector := bson.D{{}}
+	client, err := db.GetMongoClient()
+	if err != nil {
+		return err
+	}
+	collection := client.Database(db.DB).Collection(db.MATCHES)
+	_, err = collection.DeleteMany(context.TODO(), selector)
+	if err != nil {
+		return err
+	}
+	return nil
+}