I need to manage azure VM

Can we take snapshot on demand basis , can we poweron or poweroff VM using terraform?