{
  "$comment": "Generated review aid, NOT a gated contract - per route, the middleware handler count and the *named* middleware collected along the mount chain. Anonymous handlers (e.g. the arrow returned by requireRole(...)) cannot be named, so this is a hint for reviewers, never a security check. Regenerate with `npm run routes:manifest`.",
  "public": [
    {
      "method": "GET",
      "path": "/.well-known/assetlinks.json",
      "handlers": 1,
      "gates": []
    },
    {
      "method": "POST",
      "path": "/api/csp-report",
      "handlers": 6,
      "gates": [
        "jsonParser"
      ]
    },
    {
      "method": "GET",
      "path": "/api/docs.json",
      "handlers": 1,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/health",
      "handlers": 1,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/account",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/account/identities",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/admin/account/identities/:provider",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/account/totp/disable",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/account/totp/enable",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/account/totp/setup",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/activity",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/auth/providers",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/auth/providers",
      "handlers": 14,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/admin/auth/providers/:id",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "PUT",
      "path": "/api/v1/admin/auth/providers/:id",
      "handlers": 13,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/bot-activity",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/bot-activity/unban",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/dashboard",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/discord-bot/config",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "PUT",
      "path": "/api/v1/admin/discord-bot/config",
      "handlers": 6,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/email/config",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "PUT",
      "path": "/api/v1/admin/email/config",
      "handlers": 5,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/email/connect/callback",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/email/connect/start",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/email/disconnect",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/email/test",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/invites",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/invites",
      "handlers": 5,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/admin/invites/:id",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/moderation/appeals",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/moderation/appeals/:id",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/moderation/appeals/:id/claim",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/moderation/appeals/:id/resolve",
      "handlers": 5,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/moderation/filter-hits",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/moderation/members",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/moderation/recent",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/moderation/search",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/moderation/spam-hits",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/moderation/stats/summary",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/moderation/user/:discordId",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/moderation/user/:discordId/actions",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/moderation/user/:discordId/appeals",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/moderation/user/:discordId/notes",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/moderation/user/:discordId/notes",
      "handlers": 5,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/pages",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/pages",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/admin/pages/:id",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/pages/:id",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "PATCH",
      "path": "/api/v1/admin/pages/:id",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/pages/:id/preview",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/pages/:id/unprotect",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/posts",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/posts",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/admin/posts/:id",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/posts/:id",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "PUT",
      "path": "/api/v1/admin/posts/:id",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/posts/:id/announce",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/posts/:id/announce/retry",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "PATCH",
      "path": "/api/v1/admin/posts/:id/publish",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/posts/upload",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth",
        "multerMiddleware"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/settings",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "PUT",
      "path": "/api/v1/admin/settings",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/admin/settings/:key",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/shard/account",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/shard/accounts",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/shard/atlas",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/shard/atlas/approve",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/shard/atlas/import",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "PUT",
      "path": "/api/v1/admin/shard/atlas/path",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/shard/atlas/reject",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/shard/audit",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/shard/ban",
      "handlers": 7,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/shard/broadcast",
      "handlers": 5,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/shard/char/:serial",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/shard/clilocs",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/shard/clilocs/import",
      "handlers": 5,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "PUT",
      "path": "/api/v1/admin/shard/clilocs/path",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/shard/houses",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/shard/kick",
      "handlers": 5,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/shard/link",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/shard/pages",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/shard/pages/:id/close",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/shard/pages/:id/respond",
      "handlers": 6,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/shard/roster/:account",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/shard/sales",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/shard/unban",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/shard/vendors/:account",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/shard/visibility",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "PUT",
      "path": "/api/v1/admin/shard/visibility",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "PUT",
      "path": "/api/v1/admin/site-mode",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/uo-link/config",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "PUT",
      "path": "/api/v1/admin/uo-link/config",
      "handlers": 8,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/uo-link/stream",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/uo-link/towncrier",
      "handlers": 7,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/admin/uo-link/towncrier/:id",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/uploads",
      "handlers": 2,
      "gates": [
        "noindex",
        "requireAuth",
        "multerMiddleware"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/users",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/users",
      "handlers": 7,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/admin/users/:id",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/users/:id",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "PUT",
      "path": "/api/v1/admin/users/:id",
      "handlers": 8,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/users/:id/mfa/reset",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/users/:id/shard/accounts",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/users/:id/shard/houses",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/admin/users/:id/shard/link/:account",
      "handlers": 5,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/users/:id/shard/online",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/users/:id/shard/sales",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/users/:id/shard/standing",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/admin/users/:id/trusted-devices",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/users/:id/trusted-devices",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/admin/users/:id/trusted-devices/:deviceId",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/wiki",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/wiki",
      "handlers": 8,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/admin/wiki/:slug",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/wiki/:slug",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "PUT",
      "path": "/api/v1/admin/wiki/:slug",
      "handlers": 8,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "PATCH",
      "path": "/api/v1/admin/wiki/:slug/publish",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/wiki/:slug/revisions",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/wiki/:slug/revisions/:id",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/wiki/:slug/revisions/:id/restore",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/wiki/categories",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/admin/wiki/categories",
      "handlers": 6,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/admin/wiki/categories/:id",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "PUT",
      "path": "/api/v1/admin/wiki/categories/:id",
      "handlers": 7,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/admin/wiki/tags",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/auth/invite/:token",
      "handlers": 3,
      "gates": [
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/invite/:token/accept",
      "handlers": 10,
      "gates": [
        "backoffGuard",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/login",
      "handlers": 8,
      "gates": [
        "backoffGuard",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/login/totp",
      "handlers": 10,
      "gates": [
        "backoffGuard",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/logout",
      "handlers": 2,
      "gates": [
        "attachSession"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/auth/me",
      "handlers": 2,
      "gates": [
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/auth/me/account",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/auth/me/account/identities",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/auth/me/account/identities/:provider",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "PATCH",
      "path": "/api/v1/auth/me/account/password",
      "handlers": 5,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/me/account/recovery-codes/generate",
      "handlers": 6,
      "gates": [
        "noindex",
        "requireAuth",
        "backoffGuard",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/auth/me/account/recovery-codes/status",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/me/account/totp/disable",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/me/account/totp/enable",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/me/account/totp/setup",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "PATCH",
      "path": "/api/v1/auth/me/account/username",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/auth/me/devices",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/me/devices",
      "handlers": 5,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/auth/me/devices/:id",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/auth/me/notifications/streams",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/auth/me/notifications/subscriptions",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "PUT",
      "path": "/api/v1/auth/me/notifications/subscriptions",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/auth/me/sessions",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/auth/me/sessions/:id",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/auth/me/trusted-devices",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/auth/me/trusted-devices",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/me/trusted-devices",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/auth/me/trusted-devices/:id",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/mobile/login",
      "handlers": 11,
      "gates": [
        "backoffGuard",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/mobile/logout",
      "handlers": 5,
      "gates": [
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/mobile/refresh",
      "handlers": 4,
      "gates": [
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/mobile/sso/exchange",
      "handlers": 6,
      "gates": [
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/auth/mobile/sso/start",
      "handlers": 7,
      "gates": [
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/password/forgot",
      "handlers": 4,
      "gates": [
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/auth/password/reset/:token",
      "handlers": 3,
      "gates": [
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/password/reset/:token",
      "handlers": 5,
      "gates": [
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/auth/providers",
      "handlers": 1,
      "gates": []
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/register",
      "handlers": 10,
      "gates": [
        "backoffGuard",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/auth/sso/:provider/callback",
      "handlers": 1,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/auth/sso/:provider/link",
      "handlers": 2,
      "gates": [
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/auth/sso/:provider/start",
      "handlers": 2,
      "gates": []
    },
    {
      "method": "POST",
      "path": "/api/v1/auth/sso/totp",
      "handlers": 8,
      "gates": [
        "backoffGuard",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/player/account",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/player/account/identities",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "DELETE",
      "path": "/api/v1/player/account/identities/:provider",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "PATCH",
      "path": "/api/v1/player/account/password",
      "handlers": 5,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/player/account/totp/disable",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/player/account/totp/enable",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/player/account/totp/setup",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "PATCH",
      "path": "/api/v1/player/account/username",
      "handlers": 4,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/player/appeals",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/player/appeals",
      "handlers": 5,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/player/appeals/:id/withdraw",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/player/appeals/eligible",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/player/shard/account",
      "handlers": 5,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/player/shard/accounts",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/player/shard/char/:serial",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/player/shard/houses",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/player/shard/link",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/player/shard/roster/:account",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/player/shard/sales",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/player/shard/vendors/:account",
      "handlers": 3,
      "gates": [
        "noindex",
        "requireAuth",
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/atlas/champions",
      "handlers": 5,
      "gates": [
        "middleware",
        "validate",
        "siteMode"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/atlas/creatures",
      "handlers": 8,
      "gates": [
        "middleware",
        "validate",
        "siteMode"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/atlas/creatures/:slug",
      "handlers": 7,
      "gates": [
        "middleware",
        "validate",
        "siteMode"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/atlas/landmarks",
      "handlers": 6,
      "gates": [
        "middleware",
        "validate",
        "siteMode"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/atlas/meta",
      "handlers": 3,
      "gates": [
        "siteMode"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/atlas/regions",
      "handlers": 6,
      "gates": [
        "middleware",
        "validate",
        "siteMode"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/public/contact",
      "handlers": 6,
      "gates": [
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/pages/:id/preview/:token",
      "handlers": 1,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/pages/:slug",
      "handlers": 2,
      "gates": [
        "siteMode"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/posts/:category",
      "handlers": 2,
      "gates": [
        "siteMode"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/posts/:category/:idOrSlug",
      "handlers": 2,
      "gates": [
        "siteMode"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/settings",
      "handlers": 1,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/champs",
      "handlers": 2,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/economy",
      "handlers": 4,
      "gates": [
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/features",
      "handlers": 1,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/feed",
      "handlers": 5,
      "gates": [
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/governors",
      "handlers": 2,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/governors/:city/history",
      "handlers": 5,
      "gates": [
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/guilds",
      "handlers": 2,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/houses",
      "handlers": 2,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/idoc",
      "handlers": 2,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/market",
      "handlers": 13,
      "gates": [
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/market/meta",
      "handlers": 2,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/market/vendors/:serial",
      "handlers": 7,
      "gates": [
        "middleware",
        "validate"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/online",
      "handlers": 2,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/points",
      "handlers": 2,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/points/:system",
      "handlers": 2,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/presence",
      "handlers": 2,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/ruleset",
      "handlers": 2,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/status",
      "handlers": 2,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/shard/stream",
      "handlers": 1,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/status",
      "handlers": 1,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/version",
      "handlers": 1,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/api/v1/public/wiki",
      "handlers": 2,
      "gates": [
        "siteMode"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/wiki/:slug",
      "handlers": 2,
      "gates": [
        "siteMode"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/wiki/categories",
      "handlers": 2,
      "gates": [
        "siteMode"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/public/wiki/tags",
      "handlers": 2,
      "gates": [
        "siteMode"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/settings/nav",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/settings/theme/options",
      "handlers": 1,
      "gates": [
        "noindex",
        "requireAuth"
      ]
    }
  ],
  "internal": [
    {
      "method": "GET",
      "path": "/health",
      "handlers": 1,
      "gates": []
    },
    {
      "method": "GET",
      "path": "/internal/bot-config",
      "handlers": 1,
      "gates": [
        "requireInternalKey"
      ]
    }
  ]
}
