diff options
author | Colin Okay <colin@cicadas.surf> | 2022-12-26 15:22:04 -0800 |
---|---|---|
committer | Colin Okay <colin@cicadas.surf> | 2022-12-26 15:22:04 -0800 |
commit | 79272ef4a0cf6e3f93333f239dd36159202fbbba (patch) | |
tree | 6a4d0b4434403f968c45af28235f089a73de6925 /api.lisp | |
parent | 7bbed3ba5c7fea74a8fd7edbfb2b5f3205e4b590 (diff) |
Add: a basic json endpoint to return hall-of-fame data
Diffstat (limited to 'api.lisp')
-rw-r--r-- | api.lisp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/api.lisp b/api.lisp new file mode 100644 index 0000000..8159a1c --- /dev/null +++ b/api.lisp @@ -0,0 +1,25 @@ +;;;; api.lisp -- http routes for dnd + +(in-package :dungeons-and-deadlines) + +(lzb:provision-app (api) + :title "Dungeons & Deadlines" + :version "0.1.0" + :prefix "/api" + :content-type "application/json" + :auth 'default-auth) + +(defun default-auth (&rest ignore) + (declare (ignore ignore)) + t) + + + +(defendpoint* :get "/hall-of-legends" ((filter-by identity)) + (:auth t) + "Get a list of heros sorted by renown" + (json:to-json + (list :heroes + (sort (copy-seq (db:store-objects-with-class 'hero)) + #'> + :key #'renown)))) |