Hi @brandonmblack, your help with this is much appreciated!
I agree with the others commenting on this thread that indeed the X-Ton-Expires is a big deal, having it left out of the docco and I totally get the fact that the TON api is quite generic, it does come across as trying to be “one-size-fits-all” sort of solution. It’s precisely that it has so many applicability areas that all these things should be documented.
I think the idea with the table listing which buckets have special requirements / restrictions is a good start – either that or mention in each API using TON explicitely the requirements on the bucket.
Also what would help I think is if the TON API (and other API’s for that matter) explicitely state that all the parameters are to be passed in the URL rather than including them in the body; I know they state that the application/x-ww-form are not permitted but this is not as obvious as clearly communicating that.
The particular cases around file sizes when uploading a single chunk or a resumeable upload makes me a bit nervous as based on this discussion, the documentation and my tests, it seems to be another area where each bucket + API + (quite likely) connection speed can render such different results. For instance, the API returns a max-chunk-size and the docco recommends we don’t exceed it, however it then goes on to suggest that we choose a chunk size that we can send over the wire in 30 seconds – this to me reads more like a must based on the previous findings. Your suggestion to choose a lower size than the max-chunk-size also makes me wonder about what other oddities are out there hidden in the TON API. Anything else you can think of with regards to multiple chunks uploads?