[api] allow upload to be used to just get the response stream and return it to the callback