Database

db={"post":[{"id":1,"value":"this is 1","collaborators":1},{"id":2,"value":"this is 2","collaborators":2},{"id":3,"value":"this is 3","collaborators":1}],"collaborators":[{"listid":1,"list":[{"userId":1,"role":"commmenter"},{"userId":2,"role":"approver"},{"userId":3,"role":"reader"}]},{"listid":2,"list":[{"userId":2,"role":"commmenter"},{"userId":3,"role":"approver"},{"userId":4,"role":"reader"}]},]}

Query

db.post.aggregate([{$lookup:{from:"collaborators",localField:"collaborators",foreignField:"listid",as:"collaborators"}},{$match:{"collaborators.list.userId":1}}])

Result