# Documenter — F-026 CMS module ## Summary CMS module exposes admin-managed pages with slug routing and draft/publish states. Public endpoints only return published pages. ## Public API notes | Route | Access | Result | |---|---|---| | POST /cms/pages | admin | Creates draft page | | PATCH /cms/pages/:id | admin | Updates fields | | POST /cms/pages/:id/publish | admin | Sets status to published | | POST /cms/pages/:id/unpublish | admin | Sets status to draft | | GET /cms/pages/:slug | public | Returns page only when published | ## Errors - `CMS_DUPLICATE_SLUG` — HTTP 409 - `CMS_NOT_FOUND` — HTTP 404 (covers missing or draft pages) ## Evidence - `work/artifacts/F-026/architect.md` - `work/artifacts/F-026/implementer.md` - `work/artifacts/F-026/reviewer.json` - `work/artifacts/F-026/security.json` - `work/artifacts/F-026/qa.json`