Quickstart
Get started with the Unmarkdown™ API in under 2 minutes.
Quickstart
Publish your first page in under 2 minutes. Start without an account, then upgrade to permanent publishing when you are ready.
Step 1: Try without auth (demo publish)
The demo endpoint requires no authentication. Your page will be live for 72 hours.
curl -X POST https://api.unmarkdown.com/v1/demo/publish \
-H "Content-Type: application/json" \
-d '{
"title": "Hello World",
"content": "# Hello World\n\nPublished via the Unmarkdown API.",
"template_id": "github"
}'
const response = await fetch(
"https://api.unmarkdown.com/v1/demo/publish",
{
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
title: "Hello World",
content: "# Hello World\n\nPublished via the Unmarkdown API.",
template_id: "github",
}),
}
);
const { url, claim_token } = await response.json();
console.log(url);
// https://unmarkdown.com/p/abc123
import requests
response = requests.post(
"https://api.unmarkdown.com/v1/demo/publish",
json={
"title": "Hello World",
"content": "# Hello World\n\nPublished via the Unmarkdown API.",
"template_id": "github",
},
)
data = response.json()
print(data["url"])
# https://unmarkdown.com/p/abc123
The response includes a url you can open immediately, plus a claim_token to save the document permanently later.
Step 2: Get an API key
To publish permanent documents, you need an API key.
- Sign up at unmarkdown.com
- Open Settings (click your avatar, then Settings)
- Go to the API tab
- Click Create API key
Your key starts with um_ followed by 64 hex characters. Copy it now. It will only be shown once.
Step 3: Publish with auth
Use your API key to create and publish a permanent document in a single call.
curl -X POST https://api.unmarkdown.com/v1/documents/publish \
-H "Authorization: Bearer um_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"title": "My First Document",
"content": "# My First Document\n\n## Summary\n\nThis document was published via the API.",
"template_id": "executive"
}'
const response = await fetch(
"https://api.unmarkdown.com/v1/documents/publish",
{
method: "POST",
headers: {
"Authorization": "Bearer um_your_key_here",
"Content-Type": "application/json",
},
body: JSON.stringify({
title: "My First Document",
content: "# My First Document\n\n## Summary\n\nThis document was published via the API.",
template_id: "executive",
}),
}
);
const { published_url } = await response.json();
console.log(published_url);
// https://unmarkdown.com/u/yourname/my-first-document
import requests
response = requests.post(
"https://api.unmarkdown.com/v1/documents/publish",
headers={"Authorization": "Bearer um_your_key_here"},
json={
"title": "My First Document",
"content": "# My First Document\n\n## Summary\n\nThis document was published via the API.",
"template_id": "executive",
},
)
data = response.json()
print(data["published_url"])
# https://unmarkdown.com/u/yourname/my-first-document
The response includes the published_url where your document is now live.
Next steps
- Publish Your First Document: End-to-end walkthrough with more detail
- Working with Templates: Browse and apply 62 templates
- Rich Content: Add diagrams, charts, math, and callouts
- API Reference: Full endpoint documentation