API

Content negotiation

Every mkdn.io site supports standard HTTP content negotiation via the Accept header. No API key required for public sites.

# Get rendered HTML (default for browsers)
curl https://yoursite.mkdn.io/docs

# Get raw Markdown
curl -H "Accept: text/markdown" https://yoursite.mkdn.io/docs

# Force raw Markdown via URL
curl https://yoursite.mkdn.io/docs.md

Response headers

Markdown responses include:

HeaderValue
Content-Typetext/markdown; charset=utf-8
VaryAccept
x-markdown-tokensEstimated token count
Content-Signalai-train=yes, search=yes, ai-input=yes

/llms.txt

Every site automatically serves /llms.txt — a structured index of all pages, compatible with AI tools that consume the llms.txt spec.

API keys

API keys enable programmatic access to dashboard operations. Requires a Pro plan or higher.

Creating a key

  1. Go to app.mkdn.io/keys
  2. Click Create key
  3. Enter a name, select scopes, and optionally restrict to a specific site
  4. Copy the key immediately — it is shown only once

Keys follow the format mkdn_ followed by 64 hex characters.

Scopes

ScopeDescription
readRead site configuration and analytics
writeUpdate site configuration
adminFull access including creating and deleting sites

Authentication

Pass the key in the Authorization header:

curl -H "Authorization: Bearer mkdn_your_key_here" \
  https://app.mkdn.io/api/sites

Revoking a key

Keys can be revoked at any time from app.mkdn.io/keys. Revoked keys stop working immediately.

Rate limits

PlanRequests/min
Free60
Pro300
Team1000
EnterpriseCustom

Rate limit headers are included in all responses:

X-RateLimit-Limit: 60
X-RateLimit-Remaining: 58
X-RateLimit-Reset: 1712345678