How an agent asks
The link answers by what the request asks for:401 with the code password_required until the password is
sent. An agent sends it in the x-viewer-password header on every request, the index and each
file alike:
410 and a revoked one 403, the same as for a person.
The deck’s HTML also points at the index. When the viewer adds its bar, notes or forms to a page,
it adds in the page’s <head> a <link rel="alternate" type="text/markdown" href="/v/<secret>/?format=agent">
and a comment naming ?format=agent and ?format=json, so an agent that received the HTML anyway
finds its way.
What the index holds
- The deck’s title and kind, the version the link serves, and whether the link follows the latest version or is pinned to one.
- What the link allows: downloads, annotations, form submissions, PDF export, and the expiry date.
- The entry document, with its size and type, and the
?rawURL that returns it byte for byte. - The deck’s
AGENT.md, inlined (up to 64 KB; a longer file is cut and its full URL given). A deck without one says so. See Deck self-description. - Every file of the deck with its size, its type and its absolute URL.
- When the link allows downloads and the version carries files, the list of those files and the URL of the zip that holds them all.
- The URLs of the markdown and JSON forms of the index.
deck, version, link, agentDoc, entry,
files, downloads (null when the link does not allow them or the version has none) and zipUrl, plus index with the
two URLs.
What it never holds
The index says nothing the link does not already hand out. Every URL in it is one the same link opens anyway. A link with downloads off has no downloads section at all and no download address; the deck’s own AGENT.md is inlined as written, so whatever it says about its files is what the author wrote. The index never shows the deck’s owner, the workspace, the other links, or the other versions.Counting and search engines
An index read counts on the link as an agent read (agentReadCount on the API), apart from
its views: it never adds a view, never records a view event, and sets no cookie. HEAD requests
and the dashboard’s own previews never count. See Link analytics.
The deck, its files and the index all carry X-Robots-Tag: noindex, nofollow, so a link that leaks into a public page is not indexed by
search engines.