device -> nRF Cloud -> web app ?

I'm learning how the nRF cloud works and can't understand how the message flow is supposed to happen.

Devices send MQTT messages to nordic broker and then what?

I found the ListMessages API call, but it seams very ineffective if I should poll that call constantly to see if my devices have any data to report.

Can I use web-hooks to relay MQTT messages my app?

How have you solved this and how is it intended to work?