/api/v1/artifacts/pastePublish an HTML page
Publishes HTML you send in the request as a page that renders. Up to 10 MB; anything larger goes through Start a file upload.
Guide: HTML pages
Code samples and Try itRequest body
#application/json, required
contentstringRequiredThe document's Markdown.
titlestringShown on the page and in link previews. Up to 200 characters.
custom_slugstringYour own address:
markdrop.in/<custom_slug>. Letters, digits,-and_. Taken or reserved addresses answer409. 3–50 characters. Matches^[a-zA-Z0-9_-]+$.expires_in"never" | "1d" | "7d" | "30d" | "custom"When the document is deleted.
customneedscustom_expires_at. Default"never".custom_expires_atstring (date-time)The deletion time, when
expires_iniscustom. Must be in the future. ISO 8601, for example2026-11-30T12:00:00Z.read_passwordstringReaders must enter this password before they see the content. 1–100 characters.
access_level"private" | "link"Who 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".
Responses
#201Created.401No token, or the token is revoked or mistyped.413The HTML is over 10 MB.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.507Your storage is full.
201 response: 22 fields (ArtifactCreateResponse)
slugstringurlstringtitlestring | nullShown on the page and in link previews.
kindstringDefault
"artifact".mimestringrendererstringtype_labelstringsize_bytesintegeroriginal_filenamestring | nullartifact_urlstringworkspace_urlstring | nulldownload_urlstringposter_urlstring | nullmediaobject | nullcreated_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.is_password_protectedbooleanDefault
false.is_ownerbooleanDefault
false.edit_secretstringworkspace_errorstring | null