DocupDocup
Esc

URLs and generated files

How page paths become addresses, and the sitemap, robots, llms and Markdown files every site serves.

A Docup site is addressed predictably. This page explains how.

Your site address#

Each site has its own host, one level under docup.dev:

Text
https://your-address.docup.dev

The address is chosen when you create the project and can be changed in Site and domain. www, app, api and cname are reserved and never serve a docs site.

Page URLs#

A page's path is its URL:

Page path URL
index https://your-address.docup.dev/
getting-started https://your-address.docup.dev/getting-started
guides/editor https://your-address.docup.dev/guides/editor

Paths are lowercase letters, numbers and hyphens with at most one folder. The overview is the front page and has no path of its own.

A path that does not exist returns a "not found" page, and the visit is recorded under Not found (404) in Analytics. If a client requests a missing page with the header Accept: text/markdown, or requests a missing .md file, Docup returns a Markdown error instead of HTML. This error page includes helpful discovery links, including the sitemap and llms.txt.

Generated files#

These are served from the root of every published site. They are built from the live pages, and they update when you publish.

URL Content type Purpose
/sitemap.xml XML Every indexable page with its last modified time.
/robots.txt Text Crawl rules, the sitemap link and your extra lines.
/llms.txt Text An index for AI tools: a title, a summary and a link to every page, grouped by section.
/llms-full.txt Text Every page in one file, each with its title and source address.
/openapi.json JSON An OpenAPI 3.1 description of the site's read-only content endpoints.
/<path>.md Markdown One page as Markdown. /index.md is the overview.

The .md copy begins with the page title and summary, then the text, with callouts turned into block quotes. The HTML page links to it with a rel="alternate" of type text/markdown, and the Markdown response names the HTML page as its canonical address, so search engines list the page and not the file.

Pages hidden from search are left out of the sitemap, llms.txt and llms-full.txt. When llms.txt is turned off in Search and sharing, the llms files are not served and return a 404 error. If a site is private or has search engines turned off, /sitemap.xml returns a 404 error. An unpublished site, or one with search engines turned off, answers robots.txt with Disallow: /. The .md copies are served for any public site.

All generated files are sent with Cache-Control: public, max-age=300.

Social images#

Every page has an image used in link previews, at /docup-og/<path>, or your own uploaded image. See Search and sharing.

Example#

Bash
curl https://your-address.docup.dev/llms.txt
curl https://your-address.docup.dev/getting-started.md
curl https://your-address.docup.dev/openapi.json
Documentation written with Docup