diff --git a/pom.xml b/pom.xml
index 8de3f9e..cd6edf6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -63,6 +63,11 @@
+
+ org.hibernate
+ hibernate-validator
+ 7.0.2.Final
+
diff --git a/src/main/java/one/digitalinnovation/personapi/dto/request/PersonDTO.java b/src/main/java/one/digitalinnovation/personapi/dto/request/PersonDTO.java
index 9ba2a7f..585b98c 100644
--- a/src/main/java/one/digitalinnovation/personapi/dto/request/PersonDTO.java
+++ b/src/main/java/one/digitalinnovation/personapi/dto/request/PersonDTO.java
@@ -38,4 +38,10 @@ public class PersonDTO {
@Valid
@NotEmpty
private List phones;
+
+ @Valid
+ @NotEmpty
+ private List pets;
+
+
}
diff --git a/src/main/java/one/digitalinnovation/personapi/dto/request/PetDTO.java b/src/main/java/one/digitalinnovation/personapi/dto/request/PetDTO.java
new file mode 100644
index 0000000..3e3e44b
--- /dev/null
+++ b/src/main/java/one/digitalinnovation/personapi/dto/request/PetDTO.java
@@ -0,0 +1,27 @@
+package one.digitalinnovation.personapi.dto.request;
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import one.digitalinnovation.personapi.enums.Species;
+
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
+import javax.validation.constraints.NotEmpty;
+import javax.validation.constraints.Size;
+
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class PetDTO {
+ private Long id;
+
+ @Enumerated(EnumType.STRING)
+ private Species species;
+
+ @NotEmpty
+ @Size(min = 13, max = 14)
+ private String name;
+}
diff --git a/src/main/java/one/digitalinnovation/personapi/entities/Person.java b/src/main/java/one/digitalinnovation/personapi/entities/Person.java
index 3db1d29..35772b4 100644
--- a/src/main/java/one/digitalinnovation/personapi/entities/Person.java
+++ b/src/main/java/one/digitalinnovation/personapi/entities/Person.java
@@ -5,14 +5,7 @@
import lombok.Data;
import lombok.NoArgsConstructor;
-import javax.persistence.CascadeType;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.OneToMany;
+import javax.persistence.*;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.List;
@@ -41,4 +34,8 @@ public class Person {
@OneToMany(fetch = FetchType.LAZY, cascade = {CascadeType.PERSIST, CascadeType.MERGE, CascadeType.REMOVE})
private List phones = new ArrayList<>();
+
+ @OneToMany(fetch = FetchType.LAZY, cascade = {CascadeType.PERSIST, CascadeType.MERGE, CascadeType.REMOVE})
+ private List pets = new ArrayList<>();
+
}
diff --git a/src/main/java/one/digitalinnovation/personapi/entities/Pet.java b/src/main/java/one/digitalinnovation/personapi/entities/Pet.java
new file mode 100644
index 0000000..bd31def
--- /dev/null
+++ b/src/main/java/one/digitalinnovation/personapi/entities/Pet.java
@@ -0,0 +1,28 @@
+package one.digitalinnovation.personapi.entities;
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import one.digitalinnovation.personapi.enums.Species;
+
+import javax.persistence.*;
+
+@Entity
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class Pet {
+
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ private Long id;
+
+ @Enumerated(EnumType.STRING)
+ @Column(nullable = false)
+ private Species species;
+
+ @Column(nullable = false)
+ private String name;
+}
diff --git a/src/main/java/one/digitalinnovation/personapi/enums/Species.java b/src/main/java/one/digitalinnovation/personapi/enums/Species.java
new file mode 100644
index 0000000..f775fe9
--- /dev/null
+++ b/src/main/java/one/digitalinnovation/personapi/enums/Species.java
@@ -0,0 +1,16 @@
+package one.digitalinnovation.personapi.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+@Getter
+@AllArgsConstructor
+public enum Species {
+
+ DOG("Dog"),
+ CAT("Cat"),
+ HAMSTER("Hamster"),
+ REPTILE("Reptile");
+
+ private final String description;
+}
\ No newline at end of file