# Machine-readable access

Canonical URL: https://encode.wiki/reference/machine-access/
Content version: ca42e61ede0a24f789d7287a0001244ad22f4abf
Status: current
License: CC BY-SA 4.0
Checksum (SHA-256): c66db724709f53a2b8d3fbdd8410e12e8bab537095b3220a4b3bf86a8c9ab178

Encode Wiki publishes the same public content in deterministic, machine-readable forms. These
interfaces are generated during the static build and require no account or API key.

## Start with the index

[`/api/v1/index.json`](/api/v1/index.json) enumerates every public document and article. Each record
contains its stable ID, canonical page URL, clean Markdown and JSON retrieval URLs, status, tags,
dates, authors, source and license metadata, headings, heading-scoped section URLs, outbound
references, byte count, and SHA-256 checksum.

Retrieve an individual record using the URL in its `apiUrl` field. The corresponding `markdownUrl`
returns plain Markdown with a short attribution header. Do not construct URLs from titles; follow
the URLs in the index so nested identifiers remain opaque to clients.

## Retrieve only the section you need

Every document record has a `sections` array. Each entry identifies either the page introduction
or a heading-scoped section and provides its own JSON and Markdown URLs, byte count, and checksum.
Heading sections include their nested subsections so a client can retrieve a useful unit without
downloading or parsing the whole page. Duplicate heading names receive stable numeric suffixes.

For example, the AV1 "Containers and HDR" section is available as
[`/api/v1/sections/docs/codecs/video/av1/containers-and-hdr.json`](/api/v1/sections/docs/codecs/video/av1/containers-and-hdr.json)
or [attributed Markdown](/api/v1/sections/docs/codecs/video/av1/containers-and-hdr.md).
Clients should discover these URLs from `sections` rather than constructing them.

## Contracts and release detection

- [`/api/v1/openapi.json`](/api/v1/openapi.json) describes the read-only API using OpenAPI 3.1.
- [`/api/v1/schema.json`](/api/v1/schema.json) is the JSON Schema for an individual corpus record.
- [`/api/v1/section-schema.json`](/api/v1/section-schema.json) is the JSON Schema for a
  heading-scoped section record.
- [`/api/v1/release.json`](/api/v1/release.json) reports the Git content version, deterministic
  timestamp, corpus checksum, counts, and knowledge-bundle checksums.
- [`/api/v1/catalog.json`](/api/v1/catalog.json) publishes typed codec, implementation, container,
  HDR, spatial-audio, and tool entities together with evidence-backed relationships and their
  primary sources. Relationship tables in page Markdown are rendered from the same records.

The API path changes only for breaking contract revisions. Compare `schemaVersion` before parsing
and `contentVersion` or `contentChecksum` to detect a new release. Page checksums cover cleaned
Markdown only.

## Bulk and agent-oriented files

- [`/llms.txt`](/llms.txt) is a compact curated map of high-value pages and complete interfaces.
- [`/llms-docs.txt`](/llms-docs.txt) and [`/llms-articles.txt`](/llms-articles.txt) contain full,
  cleaned collection text.
- [`/llms-full.txt`](/llms-full.txt) combines both collections and may be too large for smaller
  context windows.
- [`/api/v1/knowledge.ndjson.gz`](/api/v1/knowledge.ndjson.gz) is the complete corpus as
  gzip-compressed newline-delimited JSON for ingestion by future search, Ask AI, or MCP services.

All API and text responses permit cross-origin reads and use short shared-cache lifetimes. The
downloadable `.gz` file is an actual gzip payload, not an HTTP content-encoding wrapper. Its
uncompressed and compressed checksums are in the release record.

## Attribution and content status

Machine clients must retain each record's `canonicalUrl`, `license`, sources, provenance, and
modification notice when redistributing migrated material. Check the stated versions and verification dates, and treat `archived` content as historical. The API does not turn those records into
current recommendations.
