Turns out it’s impossible to receive a REST Hook verification request if hook’s target url contains a port (e.g. http://whatever.com:3000/hooks). I’m pretty sure my endpoint is accessible and it responds when I request it, say, by curl, yet ISoft verification request never arrives. Is it intended behaviour? Is so, it should be documented here: https://developer.infusionsoft.com/docs/rest/#!/REST_Hooks/create_a_hook_subscription
There should be no problem with sending to a particular port, if that is the address it was verified at, although doing so leads to an additional complication in the future if port mappings are required to change. I would suggest a subdomain with forwarding to the port, if that’s the way you want to go: (hookentrypoint.whatever.com -> whatever.com:3000).
We routinely use addresses with ports for our internal testing services.