For PyTumblr's TumblrRequest implementation that calls Requests for GET, POST and DELETE, launch the job with:

https_proxy='http://proxy.example:8080' python tumblr_job.py

The default Tumblr API host uses HTTPS, so https_proxy is the relevant variable. Its HTTP URL identifies the intermediary listener. Keep the API host and existing OAuth configuration as they are.

Add http_proxy only for relevant HTTP destinations needing that route. For a SOCKS5 endpoint from your provider or the SOCKS5 proxy list, use an appropriate socks5 or socks5h URL with Requests' SOCKS support; labelling a port-1080 listener http:// cannot change its protocol.

If another Requests example works but PyTumblr does not, check how each obtains its transport. Creating an unrelated requests.Session leaves PyTumblr's module-level calls unchanged; this source has no injected-session argument in TumblrRequest's constructor.

Then compare the environments of the actual launches. An IDE or job service may not inherit the variables from the terminal used for the successful request. Proxy authentication, when required, is separate from Tumblr OAuth.

Artihkkalat mat laktásit