def api_class(self, resource_name=None, path=None, audiences=None,
                scopes=None, allowed_client_ids=None, auth_level=None,
                api_key_required=None):
    if auth_level is not None:
      _logger.warn(_AUTH_LEVEL_WARNING)
    def apiserving_api_decorator(api_class):
      self.__classes.append(api_class)
      api_class.api_info = _ApiInfo(
          self.__common_info, resource_name=resource_name,
          path=path, audiences=audiences, scopes=scopes,
          allowed_client_ids=allowed_client_ids, auth_level=auth_level,
          api_key_required=api_key_required)
      return api_class
    return apiserving_api_decorator