API manual api manual zettelstore zmk 00001000000000 00001004010000 00001004020000 00001004051000 00001005000000 00001007720900 00001010000000 00001012920500 00001019990010 00001000000000 00001004010000 00001004020000 00001004051000 00001005000000 00001007720900 00001010000000 00001012053200 00001012920500 00001014000000 00001019990010 1 (c) 2020-present by Detlef Stern 20210126175322 00001010040100 00001010040700 00001012050200 00001012050400 00001012050600 00001012051200 00001012051400 00001012051600 00001012051800 00001012053200 00001012053300 00001012053400 00001012053500 00001012053600 00001012054200 00001012054400 00001012054600 00001012070500 00001012080100 00001012080200 00001012080500 00001012920000 00001012930000 00001014000000 en EUPL-1.2-or-later 20231128183617 20231128183617 public The API (short for Application Programming Interface) is the primary way to communicate with a running Zettelstore. Most integration with other systems and services is done through the API. The web user interface is just an alternative, secondary way of interacting with a Zettelstore. Background The API is HTTP-based and uses plain text and symbolic expressions as its main encoding formats for exchanging messages between a Zettelstore and its client software. There is an overview zettel that shows the structure of the endpoints used by the API and gives an indication about its use. Authentication If authentication is enabled, most API calls must include an access token that proves the identity of the caller. Authenticate an user to obtain an access token Renew an access token without costly re-authentication Provide an access token when doing an API call Zettel lists List all zettel Query the list of all zettel Determine a tag zettel Determine a role zettel Working with zettel Create a new zettel Retrieve metadata and content of an existing zettel Retrieve metadata of an existing zettel Retrieve evaluated metadata and content of an existing zettel in various encodings Retrieve parsed metadata and content of an existing zettel in various encodings Update metadata and content of a zettel Rename a zettel Delete a zettel Various helper methods Retrieve administrative data Execute some commands Check for authentication Refresh internal data