a bit rough but a start
make message data what we actually get back from api call
cleanup
simplify