docs: def url(self):
          """Returns the public URL for the given key."""
          if self.is_public:
              return '{0}/{1}/{2}'.format(
                  self.bucket._boto_s3.meta.client.meta.endpoint_url,
                  self.bucket.name,
                  self.name
              )
          else:
              raise ValueError('{0!r} does not have the public-read ACL set. '
                               'Use the make_public() method to allow for '
                               'public URL sharing.'.format(self.name))