Hai fatto bene, async await è molto più intuitivo, e semplifica anche il codice.
Comunque secondo me il codice precedente era corretto, solo non avevi capito bene come e quando si valorizza la Promise.