Database

[{_id:1,"apiKeys":[{_id:1,isActive:true},{_id:2,isActive:false}]},{_id:2,"apiKeys":[{_id:1,isActive:true},{_id:4,isActive:false}]}]

Query

db.collection.update({_id:1,apiKeys:{$elemMatch:{_id:1,isActive:true}}},{$set:{"apiKeys.$.isActive":false,"apiKeys.$.revokedAt":new Date()}})

Result