Docsary
Markdown Ask Claude Ask ChatGPT
On this page

API reference

Use the API to publish documentation from scripts, CI, or an agent. These endpoints manage your sites, versions, pages, assets, and access.

Base URL:

https://api.docsary.com/v1

Start with Conventions and errors for authentication, identifiers, and error shapes.

Use an organization API key except where noted. Reads accept read-only keys; content changes require write access. Reports and self-revocation are exceptions described below.

Every endpoint

Service

Method Path Purpose
GET /__health Liveness check (no token)
GET /v1 Endpoint index (no token)
GET /v1/whoami Identify the calling key — organization, plan, scopes

Sites — details

Method Path Purpose
GET /v1/sites List your sites
POST /v1/sites Create a site
GET /v1/sites/:site Site with versions and domains
PATCH /v1/sites/:site Rename, set settings, set default version
DELETE /v1/sites/:site Delete a site and everything in it

Versions — details

Method Path Purpose
GET /v1/sites/:site/versions List versions
POST /v1/sites/:site/versions Create a version
PATCH /v1/sites/:site/versions/:ver Rename, reslug, reposition
DELETE /v1/sites/:site/versions/:ver Delete a version and its pages

Pages — details

Method Path Purpose
GET /v1/sites/:site/versions/:ver/pages Page list plus navigation tree
POST /v1/sites/:site/versions/:ver/import Bulk import and prune
GET /v1/sites/:site/versions/:ver/export Whole version back as markdown
GET /v1/sites/:site/versions/:ver/pages/* One page, markdown or HTML
PUT /v1/sites/:site/versions/:ver/pages/* Create or replace one page
DELETE /v1/sites/:site/versions/:ver/pages/* Delete one page

Assets — details

Method Path Purpose
GET /v1/sites/:site/assets List assets
POST /v1/sites/:site/assets/* Upload or replace an asset
DELETE /v1/sites/:site/assets/* Delete an asset

Redirects — details

Method Path Purpose
GET /v1/sites/:site/redirects Read the redirect table
PUT /v1/sites/:site/redirects Replace the redirect table

Domains — details

Method Path Purpose
GET /v1/sites/:site/domains List the site's hostnames
POST /v1/sites/:site/domains Attach a hostname you own
POST /v1/sites/:site/domains/:hostname/verify Prove ownership and start serving
POST /v1/sites/:site/domains/:hostname/primary Make an attached hostname the canonical one
DELETE /v1/sites/:site/domains/:hostname Detach a hostname

Site creation attempts to allocate a docsary.com address on either plan, with no call needed. Check the returned subdomain; allocation can fail. See Create a site and Domains.

Publishing — details

Method Path Purpose
POST /v1/sites/:site/publish Request fresh server-cached responses
POST /v1/sites/:site/rerender Re-render stored markdown in chunks

Reports — details

Method Path Purpose
POST /v1/reports File a bug report or a feature request
GET /v1/reports List your organization's reports and their status

Both report endpoints accept read-only keys. See Support.

Billing — details

Method Path Purpose
POST /v1/orgs/:org/billing/checkout Start a Pro subscription; returns a payment URL
POST /v1/orgs/:org/billing/portal Change the plan, update the card, or cancel
GET /v1/orgs/:org/billing Your plan, its status, and when the period ends

Self-service checkout and the billing portal are not currently available. The reference documents their behavior when enabled. For Pro, email hello@robota.us. You can read your current plan through GET /billing.

API keys — details

Method Path Purpose
GET /v1/orgs/:org/keys List your organization's keys and when each was last used
DELETE /v1/orgs/:org/keys/:id Revoke a key, effective immediately

These address your organization rather than a site, and :org can only be your own. Listing works with a read-only key; revoking needs a write-capable one, except that any key may revoke itself.

Keys

Organization API keys (dsy_...) are limited to their organization. Request read-only access for tools that do not need to change content.

Request initial keys through Pricing and access. You can list or revoke keys yourself; revocation applies on the key’s next request.