It seems Fastly Object Storage currently does not have support for this. A PUT with If-None-Match: * on existing key will return 200 and overwrite the content
These might be related
Conditional writes and Terraform state locking are now supported
https://feature-request.scaleway.com/posts/1133/support-conditional-writes-in-object-storage