def get_public_keys(self) -> str:
     if (self._jwks_token is None or self._jwks_expires_at is None
             or self._jwks_expires_at <= datetime.now()):
         resp = requests.get(self.public_key_url())
         cache_control = CacheController().parse_cache_control(resp.headers)
         max_age = cache_control.get("max-age", 0)
         self._jwks_expires_at = datetime.now() + timedelta(
             seconds=float(max_age))  # type: ignore
         self._jwks_token = resp.json()
     return self._jwks_token  # type: ignore