I have a similar setup but with SHA256 hash of the file as the object key.
$ publish example.png
https://example.com/+umk3cm5cah5akbqeueq8914zimfktoih
And for when it matters, the filename can optionally be attached: $ publish --named example.png
https://example.com/+umk3cm5cah5akbqeueq8914zimfktoih
$ http --headers 'https://example.com/+umk3cm5cah5akbqeueq8914zimfktoih' | grep 'Content-Disposition'
Content-Disposition: inline; filename="example.png"