(((meta (@ (content . "API: Retrieve parsed metadata and content of an existing zettel in various encodings") (name . "title"))) (meta (@ (content . "manual") (name . "role"))) (meta (@ (content . "#api #manual #zettelstore") (name . "tags"))) (meta (@ (content . "zmk") (name . "syntax"))) (meta (@ (content . "00001006000000 00001012000000") (name . "back"))) (meta (@ (content . "00001006000000 00001012000000") (name . "backward"))) (meta (@ (content . "1") (name . "box-number"))) (meta (@ (content . "(c) 2020-present by Detlef Stern ") (name . "copyright"))) (meta (@ (content . "20210126175322") (name . "created"))) (meta (@ (content . "00001006050000 00001010040100 00001012050200 00001012053500 00001012920000 00001012920500 00001012920800") (name . "forward"))) (meta (@ (content . "en") (name . "lang"))) (meta (@ (content . "EUPL-1.2-or-later") (name . "license"))) (meta (@ (content . "20240620170909") (name . "modified"))) (meta (@ (content . "20240620170909") (name . "published"))) (meta (@ (content . "public") (name . "visibility")))) (p "The " (a (@ (href . "00001012920000")) "endpoint") " to work with parsed metadata and content of a specific zettel is " (kbd "/z/{ID}") ", where " (kbd "{ID}") " is a placeholder for the " (a (@ (href . "00001006050000")) "zettel identifier") ".") (p "A " (em "parsed") " zettel is basically an " (a (@ (href . "00001012053500")) "unevaluated") " zettel: the zettel is read and analyzed, but its content is not " (em "evaluated") "." " " "By using this endpoint, you are able to retrieve the structure of a zettel before it is evaluated.") (p "For example, to retrieve some data about this zettel you are currently viewing, just send a HTTP GET request to the endpoint " (kbd "/z/00001012053600") (sup (@ (id . "fnref:1")) (a (@ (class . "zs-noteref") (href . "#fn:1") (role . "doc-noteref")) "1")) " with the query parameter " (kbd "parseonly") " (and other appropriate query parameter)." " " "For example:") (pre (code (@ (class . "language-sh")) "# curl 'http://127.0.0.1:23123/z/00001012053600?enc=sz&parseonly'\n(BLOCK (PARA (TEXT \"The \") (LINK-ZETTEL () \"00001012920000\" (TEXT \"endpoint\")) (TEXT \" to work with parsed metadata and content of a specific zettel is \") (LITERAL-INPUT () \"/z/{ID}\") (TEXT \", where \") ...")) (p "Similar to " (a (@ (href . "00001012053500")) "retrieving an encoded zettel") ", you can specify an " (a (@ (href . "00001012920500")) "encoding") " and state which " (a (@ (href . "00001012920800")) "part") " of a zettel you are interested in." " " "The same default values applies to this endpoint.") (h2 (@ (id . "http-status-codes")) "HTTP Status codes") (dl (dt (kbd "200")) (dd (p "Retrieval was successful, the body contains an appropriate data value.")) (dt (kbd "400")) (dd (p "Request was not valid." (br) "There are several reasons for this." " " "Maybe the zettel identifier did not consist of exactly 14 digits or " (kbd "enc") " / " (kbd "part") " contained illegal values.")) (dt (kbd "403")) (dd (p "You are not allowed to retrieve data of the given zettel.")) (dt (kbd "404")) (dd (p "Zettel not found." " " "You probably used a zettel identifier that is not used in the Zettelstore."))))