Loading…
/industries has two sides. Inside the workspace it is a content-admin UI
(list, create/duplicate/delete, drag-reorder, per-item editor) over records
that proxy the WordPress industry custom post type. Outside, those records
render the public taxonomy: the /industries index and /industry/[slug]
detail pages on the marketing site, with sitemap coverage in
sitemap-industries.xml.
| Route | Purpose | Guard |
|---|---|---|
/industries | Admin list — fetch, delete, duplicate, reorder | requirePermission("org:content:view") (page.tsx) |
/industries/[slug] | Per-industry editor | requirePermission("org:content:edit") ([slug]/page.tsx) |
/industries (public site) | Public index | None — public |
/industry/[slug] (public site) | Public detail page | None — public |
| Method | Path | Guard | Purpose |
|---|---|---|---|
GET / POST | /api/workspace/industries | Reads open to content viewers; writes need org:content:edit | List / create industries |
GET / PATCH / DELETE | /api/workspace/industries/[id] | Same split | Read / update / delete one industry |
POST | /api/workspace/industries/reorder | org:content:edit | Persist reordered sequence |
GET | /api/industries/list (root app) | None — published items only | Public paginated list (proxies wp/v2/industry) |
GET | /api/industries/nav (root app) | None — published items only | Navbar titles + slugs, cached 4 hours |
The admin client also calls the shared WordPress-upload helper at
/api/whitepapers/admin/upload/wordpress for cover media.