The proxy option expects either a binary or a two-element tuple of {host, port}, so that first one is not going to work.
As for the second one, the URL doesn’t have a port specified like the one in the curl command does. Maybe that’s the problem?
It would be useful to get more detail on “not working as expected” - what happens (error message, stack trace, etc) when you attempt those HTTPoison calls? I don’t have a proxy server handy to test with, so I can’t see what you’re seeing.