If you want your WebApp to direcly get updates from a server when something happens, you are probably better of with WebSockets.
A Webhook is just one URL registering a callback to another URL. Typical setup in B4X would be having an API on your B4J server where another server can register its callback URL. When e.g. a record is updated, the B4J server will POST (a json for example) to this callback URL with the changes of the record.
When the WebApp comes online it will get the newest information from its 'callback' server. The point is, with WebHooks, both ends have to be on-line to make a communication and with a WebApp in a browser, this isn't guaranteed and it can not be reached by an external server. WebSockets can do this because they keep the connection open between a server and a browser.