У вас есть 2 варианта использования метода копирования, если второй объект должен быть точно таким же или некоторые поля должны быть изменены.
val alex = User(name = "Alex", age = 1)
val olderAlex = jack.copy(age = 2)
или Котлин получил отличный синтаксис конструирования объекта, который я имею в виду, например,
createSomeObject(obj = ObjInput(name = objName,
password = UUID.randomUUID().toString()
type = listOf(TYPE)))
На самом деле, кажется, в вашем случае проще использовать первый, но полезно знать о втором способе решения этой задачи.