Database

[{"userID":"xxx","userType":"RESELLER","clients":[{"userID":"xxx","userType":"CLIENT","members":[{"userID":"xxx","userType":"MEMBER"},{"userID":"xxx","userType":"MEMBER"}]},{"userID":"xxx","userType":"CLIENT","members":[{"userID":"xxx","userType":"MEMBER"},{"userID":"xxx","userType":"MEMBER"}]}]},{"userID":"xxx","userType":"RESELLER","clients":[{"userID":"xxx","userType":"CLIENT","members":[{"userID":"xxx","userType":"MEMBER"},{"userID":"xxx","userType":"MEMBER"}]},{"userID":"xxx","userType":"CLIENT","members":[{"userID":"xxx","userType":"MEMBER"},{"userID":"xxx","userType":"MEMBER"}]}]}]}]

Query

db.collection.aggregate([{"$project":{"members":{"$reduce":{"input":{"$map":{"input":"$clients","in":{"$concatArrays":[[{"userID":"$userID","userType":"$userType"},{"userID":"$$this.userID","userType":"$$this.userType"}],"$$this.members"]}}},"initialValue":[],"in":{"$concatArrays":["$$this","$$value"]}}}}}])

Result