Netlify upload file API: Please support deflate and gzip

Hi,

It will be great to be able to upload files with “application/deflate” and “application/gzip” while uploading file by https://open-api.netlify.com/#operation/uploadDeployFile .
I think it would save you descent amount of IO by reducing upload time; and with HTTP2 can replace zip file upload, I guess it will be efficient enough to do initial upload.

Thanks for developing great service!

Thanks for the feature request! Seems like a good idea to me (though of course you could upload a zip file instead if your main goal is compression):

We’ll follow up here if we implement it!

Actually - I am not sure we don’t handle it already. What happens when you post compressed as described in the first answer here (using the Content-Encoding header + compressing the file)?

1 Like

Unfortunately zip doesn’t allow (well, makes life hard) stream processing.
I tried “application/gzip” content type, but let me check Content-Encoding. Nice hint.

Unfortunately Content-Encoding: gzip doesn’t work
I got {"code":422,"message":"No records matched"} if uncompressed file sha1 is provided
Or if I provide sha1 for gzipped file it is deployed

curl --location --request PUT 'https://api.netlify.com/api/v1/deploys/{depliyId}/files/test_skr.htm' \
--header 'Content-Type: application/octet-stream' \
--header 'Content-Encoding: gzip' \
--header 'Authorization: Bearer XXXX' \
--data-binary '@test_skt1.txt.gz'