A client error (400) occurred when calling the HeadObject operation: Bad Request Completed 1 part(s) with ... file(s) remaining

I added the --region option to the statement and everything is working now:

aws s3 cp s3:/[BUCKETNAME]/ . --recursive --region [REGION]

This error also happens when your session has expired if using temporary security credentials with an assumed role. Not a forbidden or unknown id as you would expect.


My problem got fixed as soon as I upgraded to the latest version of aws cli. Here is how you upgrade : pip install --upgrade --user awscli

specifying the region wasn't helpful