How to push a new document in mongodb but only if it does not exist?

I have a POST being done that uses this code:

exports.addContactPost = function(req, res, err) {
    User.findByIdAndUpdate(req.signedCookies.userid, {
                $push: {friendRequest: req.body.friendRequest}
            }, function(err) {
                if(err) {
                    console.log(err);
                    return console.log('error'); 
                } else {            
                    console.log('postsuccess');
                    res.json({response: true});
                    }
            });
};

How can I take the $push: line of code and state that if the id already exists in the array of friendRequest that do not push. I was trying to use $exist: but I could not get it to work.

Use the $addToSet operator. It ensures that the value will be added if is not in the array already.

Basically:

exports.addContactPost = function(req, res, err) {
    User.findByIdAndUpdate(req.signedCookies.userid, {
                $addToSet: {friendRequest: req.body.friendRequest}
            }, function(err) {
                if(err) {
                    console.log(err);
                    return console.log('error'); 
                } else {            
                    console.log('postsuccess');
                    res.json({response: true});
                    }
            });
};