Foreign webhooks is implemented as a Heroku cloud deploy-able web service. It listens for foreign (non-RPM) events (webhooks). After receiving an event, it is passed to a configured event processor, which extends the event with the required information from the source to get a complete meaningful chunk of information, and sends it to a new or existing RPM form, according to configured field mapping.
Foreign webhooks expects an event to be a JSON object. It just passes the event to the RPM update module.