Database
db={"dashboard":[{"_id":"dashboard1","name":"test","user":1}],"templatefolders":[{"dashboardId":"dashboard1","folderId":"folder123","name":"folder","region":"XXX"},{"dashboardId":"dashboard1","folderId":"folder123","name":"folder1","region":"YYY"}],"folders":[{"_id":"folder123","name":"test1"}]}
Query
db.templatefolders.aggregate([{$lookup:{from:"folders",let:{"folderId":"$folderId"},pipeline:[{$match:{$expr:{$and:[{$eq:["$_id","$$folderId"]},{$eq:["$name","test1"]}]}}}],as:"folder"}},{$match:{$or:[{"folder.0":{$exists:true}},{name:"folder"}]}},{$lookup:{from:"dashboard",as:"dashboard",localField:"dashboardId",foreignField:"_id"}},{$project:{_id:0,dashboard:{$first:"$dashboard"}}},{$replaceRoot:{newRoot:"$dashboard"}}])