Excellent write-up! As another option, those params can also go in the body:
url -X POST -H 'Client-ID: client-id-here' -H 'Content-Type: application/json' -d
'{
"hub.mode": "subscribe",
"hub.topic": "https://api.twitch.tv/helix/users/follows?first=1&from_id=1337",
"hub.callback": "https://yourwebsite.com/path/to/callback/handler",
"hub.lease_seconds": 864000,
"hub.secret":"s3cRe7"
}'
https://api.twitch.tv/helix/webhooks/hub
The documentation will soon be updated to reflect this 