feat: return distinct 'draft' error for draft post detail requests

Previously the API returned 'not_found' for both missing and draft
posts. Now draft posts return a specific 'draft' error code so API
consumers can distinguish between the two cases and show an
appropriate message.
This commit is contained in:
2026-06-26 20:44:42 +02:00
parent 781707a3fd
commit 5cc3a1aabe
2 changed files with 4 additions and 3 deletions
+2 -1
View File
@@ -28,7 +28,8 @@ module Volumen
app.get "/api/volumen/posts/:slug" do
post = store.find(params["slug"], lang: params["lang"])
halt(404, json("error" => "not_found")) if post.nil? || post.draft?
halt(404, json("error" => "not_found")) if post.nil?
halt(404, json("error" => "draft")) if post.draft?
json(post.detail)
end