def create_upload(self, project_id, filename, content_type, size,
                      hash_value, hash_alg, storage_provider_id=None, chunked=True):
        """
        Post to /projects/{project_id}/uploads to create a uuid for uploading chunks.
        NOTE: The optional hash_value and hash_alg parameters are being removed from the DukeDS API.
        :param project_id: str uuid of the project we are uploading data for.
        :param filename: str name of the file we want to upload
        :param content_type: str mime type of the file
        :param size: int size of the file in bytes
        :param hash_value: str hash value of the entire file
        :param hash_alg: str algorithm used to create hash_value
        :param storage_provider_id: str optional storage provider id
        :param chunked: is the uploaded file made up of multiple chunks. When False a single upload url is returned.
            For more see https://github.com/Duke-Translational-Bioinformatics/duke-data-service/blob/develop/api_design/DDS-1182-nonchucked_upload_api_design.md
        :return: requests.Response containing the successful result
        """
        data = {
            "name": filename,
            "content_type": content_type,
            "size": size,
            "hash": {
                "value": hash_value,
                "algorithm": hash_alg
            },
            "chunked": chunked,
        }
        if storage_provider_id:
            data['storage_provider'] = {'id': storage_provider_id}
        return self._post("/projects/" + project_id + "/uploads", data)
def create_upload ( self , project_id , filename , content_type , size , hash_value , hash_alg , storage_provider_id = None , chunked = True ) : data = { "name" : filename , "content_type" : content_type , "size" : size , "hash" : { "value" : hash_value , "algorithm" : hash_alg } , "chunked" : chunked , } if storage_provider_id : data [ 'storage_provider' ] = { 'id' : storage_provider_id } return self . _post ( "/projects/" + project_id + "/uploads" , data )
Post to /projects/{project_id}/uploads to create a uuid for uploading chunks.
        NOTE: The optional hash_value and hash_alg parameters are being removed from the DukeDS API.
        :param project_id: str uuid of the project we are uploading data for.
        :param filename: str name of the file we want to upload
        :param content_type: str mime type of the file
        :param size: int size of the file in bytes
        :param hash_value: str hash value of the entire file
        :param hash_alg: str algorithm used to create hash_value
        :param storage_provider_id: str optional storage provider id
        :param chunked: is the uploaded file made up of multiple chunks. When False a single upload url is returned.
            For more see https://github.com/Duke-Translational-Bioinformatics/duke-data-service/blob/develop/api_design/DDS-1182-nonchucked_upload_api_design.md
        :return: requests.Response containing the successful result