MCPcopy Create free account
hub / github.com/adcontextprotocol/adcp / createAdminRouter

Function createAdminRouter

server/src/routes/admin.ts:68–464  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

66 * Returns separate routers for page routes (/admin/*) and API routes (/api/admin/*)
67 */
68export function createAdminRouter(): { pageRouter: Router; apiRouter: Router } {
69 const pageRouter = Router();
70 const apiRouter = Router();
71
72 // =========================================================================
73 // ADMIN PAGE ROUTES (mounted at /admin)
74 // =========================================================================
75
76 pageRouter.get("/api-keys", requireAuth, requireAdmin, (req, res) => {
77 serveHtmlWithConfig(req, res, "admin-api-keys.html").catch((err) => {
78 logger.error({ err }, "Error serving admin API keys page");
79 res.status(500).send("Internal server error");
80 });
81 });
82
83 pageRouter.get("/domain-health", requireAuth, requireAdmin, (req, res) => {
84 serveHtmlWithConfig(req, res, "admin-domain-health.html").catch((err) => {
85 logger.error({ err }, "Error serving domain health page");
86 res.status(500).send("Internal server error");
87 });
88 });
89
90 pageRouter.get("/policies", requireAuth, requireAdmin, (req, res) => {
91 serveHtmlWithConfig(req, res, "admin-policies.html").catch((err) => {
92 logger.error({ err }, "Error serving policies page");
93 res.status(500).send("Internal server error");
94 });
95 });
96
97 pageRouter.get("/people", requireAuth, requireAdmin, (req, res) => {
98 serveHtmlWithConfig(req, res, "admin-people.html").catch((err) => {
99 logger.error({ err }, "Error serving people page");
100 res.status(500).send("Internal server error");
101 });
102 });
103
104 pageRouter.get("/simulations", requireAuth, requireAdmin, (req, res) => {
105 serveHtmlWithConfig(req, res, "admin-simulations.html").catch((err) => {
106 logger.error({ err }, "Error serving simulations page");
107 res.status(500).send("Internal server error");
108 });
109 });
110
111 pageRouter.get("/network-health", requireAuth, requireAdmin, (req, res) => {
112 serveHtmlWithConfig(req, res, "admin-network-health.html").catch((err) => {
113 logger.error({ err }, "Error serving network health page");
114 res.status(500).send("Internal server error");
115 });
116 });
117
118 // Redirects from old newsletter admin URLs
119 pageRouter.get("/digest", (_req, res) => res.redirect(301, "/admin/newsletters/the_prompt"));
120 pageRouter.get("/the-build", (_req, res) => res.redirect(301, "/admin/newsletters/the_build"));
121
122 pageRouter.get("/newsletters/:id", requireAuth, requireAdmin, (req, res) => {
123 serveHtmlWithConfig(req, res, "admin-newsletter.html").catch((err) => {
124 logger.error({ err }, "Error serving newsletter admin page");
125 res.status(500).send("Internal server error");

Callers 1

setupRoutesMethod · 0.85

Calls 15

serveHtmlWithConfigFunction · 0.85
setupProspectRoutesFunction · 0.85
setupOrganizationRoutesFunction · 0.85
setupEnrichmentRoutesFunction · 0.85
setupDomainRoutesFunction · 0.85
setupCleanupRoutesFunction · 0.85
setupStatsRoutesFunction · 0.85
setupDiscountRoutesFunction · 0.85
setupAccountRoutesFunction · 0.85
setupBanRoutesFunction · 0.85

Tested by

no test coverage detected