← All playbooks · Raw API
routing
# Routing
URL and content routing rules for this site.
## Homepage
- **CMS slug (Contentful):** `index`
- **Open in cms-edit:** `--page-slug /` or `--page-slug /index`
- **Public URL:** `/` on the live site
- **Sitemap displays:** `/index` (formatting only — same page as `/`)
## Article paths
- **Articles slug segment:** `resources`
- **Articles base path:** `/${ARTICLES_SLUG}`
- **Primary tag in URL:** yes
- **Article type index enabled:** true
## Tags and people
- **Tags base:** `/${TAGS_SLUG}`
- **People base:** `/${PEOPLE_SLUG}`
- **Default topic (untagged articles):** `other`
## Feature flags
- **enableTag:** true
- **enableTagsIndex:** true
- **enablePerson:** true
- **enableArticleTypeTagIndex:** true
- **articlesBaseIsPage:** false
## Public markdown URLs
Append `.md` to the **public HTML path**.
- **Pages:** `/{path}.md` (homepage `/index.md`)
- **Articles:** `/resources/{type}/{topic}/{slug}.md`
- **Ebooks:** `/resources/ebooks/{slug}.md` — no topic segment (`TOPICLESS_ARTICLE_TYPE_SLUGS`)
- **Ebook hub:** `/resources/ebooks.md`
- **Topics:** `/topics/{slug}.md`
- **Team:** `/team/{slug}.md`
Some older ebook landing pages are ordinary pages (e.g. `/ebook-hiding-in-plain-sight-volume-1.md`), not `/resources/ebooks/…`.
## CMS types vs CTA labels
**Get a demo** and **Talk to us** are button/link labels, not `collectionType` / `componentType` values. Showcase `?type=Get+a+demo` falls through to **Generic** (excluded). Use **CTA: Large**, **CTA: Small**, or a module that already has those links.