Mintlify Directory
This directory contains the documentation frontend powered by Mintlify. It renders the OpenAPI specification fromSpec/ into a user-facing API reference website.
Layout
docs.json— Mintlify site configuration (navigation, theme, metadata)api-reference/— Bundled OpenAPI spec consumed by Mintlify (bundled.yaml)*.mdx(at this directory’s root) — Custom documentation pages. Each file maps 1:1 to a URL (getting-started.mdx→/getting-started).icons/— Custom icon assetsscripts/— Post-bundle transforms (see below)Dockerfile— Container setup for the documentation site
Key Files
api-reference/bundled.yaml— The bundled OpenAPI spec; regenerate withnpm run bundlefrom the repo root*.mdx— Additional hand-written documentation pages beyond the auto-generated API reference
Workflow
- Edit the source specification in
Spec/ - Run
npm run bundleto produce the bundled spec - The bundled output lands in
api-reference/bundled.yamland Mintlify renders it
Post-bundle transforms
Spec/’s npm run bundle runs redocly bundle and then chains the transforms below, in order.
scripts/apply-tag-hierarchy.js— reads the OpenAPI 3.2 tag hierarchy (kind: navsections +parent:on endpoint tags), rewrites theAPI Documentationgroup indocs.jsoninto one nested group per section, then downgrades the bundle to 3.1 and strips the section tags and theparent/kind/summaryfields — Mintlify supports 3.0/3.1 only and rejects those fields. It also badges any group — or whole section — whose operations all carry the same label, withtag: "NEW",tag: "CS"ortag: "BREAKING", which is why it runs beforeSpec/scripts/apply-labels.js(that script strips the flags). Delete this script when Mintlify supports 3.2; the spec is already correct.Spec/scripts/apply-labels.js— expands the three endpoint labels, then strips the flags and the internalx-pr/x-jira/x-change-summarytags that ride with them:x-coming-soonbecomes a<Warning>callout plus aCSsidebar pill,x-new: "<date>"becomes a<Tip>callout plus aNEWpill,x-breaking-changebecomes a<Danger>callout carrying itsx-change-summaryplus aBREAKINGpill, whichstyle.cssdraws as an orange-red lightning bolt (an SVG mask, not the ⚡ emoji) on a red pill. The pills arex-mint: metadata: tag:, which Mintlify reads as frontmatter for the generated endpoint page. Lives underSpec/with the rest of the spec tooling — JavaScript underMintlify/is ingested as page content and served to readers. SeeSpec/scripts/labels.jsfor the value grammars.