No, they must not be kept in cage .. Some points on this are
1) Everyone have freedom we must not capture anything just for our greed or you can say for our happiness..
2) All have their own life and own environment separating from it's naturality is just not a kind thing..
3)Also one more point here is that many people just put them in cage from just somedays after their birth and they don't realize but they just put an end to their flying experience as birds take somedays to grow and after that they gradually learn how to fly. Just imagine one case if a human baby is somehow stopped from learning how to walk then for lifetime they could loose their freedom to walk since a baby also learn to walk gradually not all of a sudden.
4) So, instead of catching a bird one could pet dogs or a rabbit since they can be with you also without any restriction to their life.