discourse/app/controllers/admin/api_controller.rb

28 lines
651 B
Ruby

class Admin::ApiController < Admin::AdminController
def index
render_serialized(ApiKey.where(hidden: false).to_a, ApiKeySerializer)
end
def regenerate_key
api_key = ApiKey.find_by(id: params[:id])
raise Discourse::NotFound.new if api_key.blank?
api_key.regenerate!(current_user)
render_serialized(api_key, ApiKeySerializer)
end
def revoke_key
api_key = ApiKey.find_by(id: params[:id])
raise Discourse::NotFound.new if api_key.blank?
api_key.destroy
render nothing: true
end
def create_master_key
api_key = ApiKey.create_master_key
render_serialized(api_key, ApiKeySerializer)
end
end