/api/v1/documents/{slug}/editorSwitch the editor
Opens a document in the block editor (blocks) or the classic Markdown editor (classic). The Markdown doesn't change. Not for files or end-to-end encrypted documents.
Path parameters
#slugstringRequiredThe document's address: the part after
markdrop.in/.
Headers
#X-Edit-SecretstringThe document's edit secret (
sk_…), for a document published without an account. See Edit key.
Request body
#application/json, required
editor"blocks" | "classic"Requiredblocksfor the block editor,classicfor the Markdown editor.
Responses
#200OK.422The request didn't validate.detaillists each problem, with where it is (loc) and why (msg).429Too many requests from your IP address. Wait the seconds inRetry-After.
200 response: 51 fields (DocumentResponse)
slugstringThe address:
markdrop.in/<slug>.urlstringThe link to share.
folder_patharray of stringtitlestring | nullShown on the page and in link previews.
contentstringThe document's Markdown.
created_atstring (date-time)ISO 8601, for example
2026-11-30T12:00:00Z.updated_atstring (date-time)ISO 8601, for example
2026-11-30T12:00:00Z.expires_atstring (date-time) | nullISO 8601, for example
2026-11-30T12:00:00Z.viewsintegerDefault
0.revinteger | nullis_password_protectedbooleanDefault
false.is_ownedbooleanDefault
false.is_ownerbooleanDefault
false.idstring | nullrefstring | nullgoogle_doc_urlstring | nullgoogle_doc_stalebooleanDefault
false.vscode_syncedbooleanDefault
false.encryptedbooleanSet by clients that encrypt in the browser:
contentandtitleare already ciphertext. The server never sees the key. Defaultfalse.kindstringmarkdownfor a document,artifactfor a file. Default"markdown".mimestring | nullrendererstring | nulltype_labelstring | nullsize_bytesinteger | nulloriginal_filenamestring | nullartifact_urlstring | nulldownload_urlstring | nullposter_urlstring | nullmediaobject | nullfile_versioninteger | nullworkspace_urlstring | nullThe address on its workspace's own domain, when it has a live one.
access_levelstringWho can open it:
link(anyone with the link),private(only you and the people you share it with) orworkspace(members of its workspace). Default"link".workspace_idstring | nullcanobject | nullWhat you may do with it:
edit,replace,settings,access,rename,delete,share,move,unshare.read_ticketstring | nullaccess_epochintegerDefault
0.presence_ticketstring | nullshow_presenceboolean | nulleditorstring | nullparentobject | nullbreadcrumbsarray of objectchildren_countintegerDefault
0.access_inheritboolean | nullpage_patharray of stringtemplate_idstring | nulltemplateobject | nullpageobject | nullpage_propertiesobject | nullassetsobjectDefault
{}.cover_autobooleanDefault
false.cover_pendingbooleanDefault
false.