code: def _new_multipart_upload(self, bucket_name, object_name,
                                metadata=None, sse=None):
          
          is_valid_bucket_name(bucket_name)
          is_non_empty_string(object_name)
  
          headers = {}
          if metadata:
              headers.update(metadata)
          if sse:
              headers.update(sse.marshal())
  
          response = self._url_open('POST', bucket_name=bucket_name,
                                    object_name=object_name,
                                    query={'uploads': ''},
                                    headers=headers)
  
          return parse_new_multipart_upload(response.data)
docs: Initialize new multipart upload request.
  
          :param bucket_name: Bucket name of the new multipart request.
          :param object_name: Object name of the new multipart request.
          :param metadata: Additional new metadata for the new object.
          :return: Returns an upload id.