Is Sync Gateway somehow incompatible (in PUT method) with node request library?

Sorry missed the error code. Can you console.log the request that is going out including headers? Also may be worthwhile to turn on logging on SGW to see what it dislikes about the request.
I can’t think of a reason why the request made via http.request should be handled any differently than the one via request module (assuming its the same ).