API: Retrieve evaluated metadata and content of an existing zettel in various encodings
The endpoint to work with evaluated metadata and content of a specific zettel is /z/{ID}, where {ID} is a placeholder for the zettel identifier.
For example, to retrieve some evaluated data about this zettel you are currently viewing in Sz encoding, just send a HTTP GET request to the endpoint /z/000010120535001 with the query parameter enc=sz. If successful, the output is a symbolic expression value:
# curl 'http://127.0.0.1:23123/z/00001012053500?enc=sz'
(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 ") (LITERAL-INPUT () "{ID}") (TEXT " is a placeholder for the ") ...
To select another encoding, you must provide the query parameter enc=ENCODING. Others are “html”, “text”, and some more. In addition, you may provide a query parameter part=PART to select the relevant part of a zettel.
# curl 'http://127.0.0.1:23123/z/00001012053500?enc=html&part=zettel'
<html>
<head>
<meta charset="utf-8">
<title>API: Retrieve evaluated metadata and content of an existing zettel in various encodings</title>
<meta name="zs-title" content="API: Retrieve evaluated metadata and content of an existing zettel in various encodings">
<meta name="zs-role" content="manual">
<meta name="zs-tags" content="#api #manual #zettelstore">
<meta name="zs-syntax" content="zmk">
<meta name="zs-back" content="00001006000000 00001012000000 00001012053600">
<meta name="zs-backward" content="00001006000000 00001012000000 00001012053600 00001012920000">
<meta name="zs-box-number" content="1">
<meta name="zs-copyright" content="(c) 2020-present by Detlef Stern <ds@zettelstore.de>">
<meta name="zs-created" content="20210726174524">
<meta name="zs-forward" content="00001006050000 00001010040100 00001012050200 00001012920000 00001012920500 00001012920503 00001012920510 00001012920519 00001012920800">
<meta name="zs-lang" content="en">
<meta name="zs-license" content="EUPL-1.2-or-later">
<meta name="zs-modified" content="20221219161621">
<meta name="zs-published" content="20221219161621">
<meta name="zs-visibility" content="public">
</head>
<body>
<h1>API: Retrieve evaluated metadata and content of an existing zettel in various encodings</h1>
<p>The <a href="00001012920000">endpoint</a> to work with evaluated metadata and content of a specific zettel is <kbd>/z/{ID}</kbd>,
...
HTTP Status codes
- 200
Retrieval was successful, the body contains an appropriate data value.
- 400
Request was not valid.
There are several reasons for this. Maybe the zettel identifier did not consist of exactly 14 digits or enc / part contained illegal values.- 403
You are not allowed to retrieve data of the given zettel.
- 404
Zettel not found. You probably used a zettel identifier that is not used in the Zettelstore.
- If authentication is enabled, you must include the a valid access token in the Authorization header ↩︎