extract building a streaming PUT request into a private method

* to avoid duplication