Mapa de rutas

Cada método, URL, acción objetivo, y permiso requerido.

Mapa de rutas

"Auth" significa cualquier usuario autenticado; un slug de permiso significa que el firewall también requiere que prc.authUser.hasPermission() pase (consulta Seguridad y permisos) — de no ser así, redirige a dashboard.notAuthorized en lugar de a login.

Cada ruta POST, PUT, y DELETE a continuación requiere un token CSRF válido en rc.csrf. Las rutas GET no lo requieren - consulta Verificación de CSRF.

Los marcadores de posición :userId, :roleId, :permissionId, :auditLogId, :settingId, :tokenId, :passkeyId, y :size son los nombres de parámetro literales que el router vincula en rc. :size es sm o lg.

MétodoURLHandler.AcciónAuth
GET/loginAuth.loginInvitado
POST/loginAuth.doLoginInvitado
GET/registerAuth.registerInvitado
POST/registerAuth.doRegisterInvitado
GET/register/check-emailAuth.checkEmailAvailabilityInvitado
GET/verify-registrationAuth.verifyRegistrationInvitado
GET/activate-invitationAuth.activateInvitationInvitado
POST/activate-invitationAuth.doActivateInvitationInvitado
GET/confirm-email-changeAuth.verifyEmailChangeInvitado o Auth — alcanzable de cualquier forma, a diferencia de las demás acciones de Auth (consulta Handlers y enrutamiento)
GET/forgot-passwordAuth.forgotPasswordInvitado
POST/forgot-passwordAuth.doForgotPasswordInvitado
GET/reset-passwordAuth.resetPasswordInvitado
POST/reset-passwordAuth.doResetPasswordInvitado
POST/logoutAuth.logoutAuth
GET/dashboardDashboard.indexAuth
GET/auditlogAuditLog.indexauditlog:read,auditlog:admin
GET/auditlog/:auditLogIdAuditLog.showauditlog:read,auditlog:admin
GET/auditlog/searchAuditLog.searchauditlog:read,auditlog:admin
GET/auditlog/exportAuditLog.exportauditlog:export,auditlog:admin
POST/auditlog/purgeAuditLog.purgeauditlog:delete,auditlog:admin
DELETE/auditlog/clearAuditLog.clearauditlog:admin
GET/usersUsers.indexusers:read,users:admin
GET/users/searchUsers.searchusers:read,users:admin
POST/usersUsers.createusers:write,users:admin
GET/users/:userIdUsers.showusers:read
PUT/users/:userIdUsers.updateusers:write,users:admin
DELETE/users/:userIdUsers.deleteusers:delete,users:admin
POST/users/:userId/invitationUsers.resendInvitationusers:write,users:admin
PUT/users/:userId/profileUsers.updateProfileusers:write,users:admin
POST/users/:userId/statusUsers.setStatususers:write,users:admin
POST/users/:userId/preferencesUsers.savePreferencesusers:write,users:admin
POST/users/:userId/reset-passwordUsers.resetPasswordusers:admin
POST/users/:userId/force-password-resetUsers.forcePasswordResetusers:admin
POST/users/:userId/verifyUsers.verifyusers:admin
POST/users/:userId/revoke-remember-tokensUsers.revokeRememberTokensusers:admin
POST/users/:userId/roles/:roleIdUsers.addRoleusers:admin
DELETE/users/:userId/roles/:roleIdUsers.removeRoleusers:admin
POST/users/:userId/permissions/:permissionIdUsers.addPermissionusers:admin
DELETE/users/:userId/permissions/:permissionIdUsers.removePermissionusers:admin
POST/users/:userId/tokens/revoke-allUsers.revokeAllTokensusers:admin
DELETE/users/:userId/tokens/:tokenIdUsers.revokeTokenusers:admin
GET/rolesRoles.indexroles:read,roles:admin
POST/rolesRoles.createroles:write,roles:admin
PUT/roles/:roleIdRoles.updateroles:write,roles:admin
DELETE/roles/:roleIdRoles.deleteroles:delete,roles:admin
GET/roles/:roleId/usersRoles.usersroles:read,roles:admin
GET/roles/:roleId/available-usersRoles.availableUsersroles:read,roles:admin
POST/roles/:roleId/users/:userIdRoles.addUserroles:admin
DELETE/roles/:roleId/users/:userIdRoles.removeUserroles:admin
GET/permissionsPermissions.indexpermissions:read,permissions:admin
POST/permissionsPermissions.createpermissions:write,permissions:admin
PUT/permissions/:permissionIdPermissions.updatepermissions:write,permissions:admin
DELETE/permissions/:permissionIdPermissions.deletepermissions:delete,permissions:admin
GET/profileProfile.indexAuth
POST/profileProfile.saveAuth
GET/profile/passkey-requiredProfile.passkeyRequiredAuth
POST/profile/passwordProfile.doPasswordChangeAuth
POST/profile/email-changeProfile.requestEmailChangeAuth
DELETE/profile/email-changeProfile.cancelEmailChangeAuth
GET/profile/api-tokensProfile.listTokensAuth
POST/profile/api-tokensProfile.createTokenAuth
POST/profile/api-tokens/:tokenIdProfile.updateTokenAuth
DELETE/profile/api-tokens/:tokenIdProfile.deleteTokenAuth
GET/profile/passkeysProfile.listPasskeysAuth
POST/profile/passkeysProfile.updatePasskeyAuth
DELETE/profile/passkeys/:passkeyIdProfile.deletePasskeyAuth
POST/profile/avatarProfile.uploadAvatarAuth
DELETE/profile/avatarProfile.deleteAvatarAuth
GET/settingsSettings.indexsettings:read,settings:admin
POST/settingsSettings.savesettings:write,settings:admin
GET/settings/registrySettings.registrysettings:read,settings:admin
POST/settings/registrySettings.createRegistrysettings:write,settings:admin
GET/settings/registry/searchSettings.registrySearchsettings:read,settings:admin
PUT/settings/registry/:settingIdSettings.updateRegistrysettings:write,settings:admin
DELETE/settings/registry/:settingIdSettings.deleteRegistrysettings:write,settings:admin
POST/settings/registry/:settingId/statusSettings.toggleRegistryStatussettings:write,settings:admin
POST/settings/clear-template-cacheSettings.clearTemplateCachesettings:admin
POST/settings/clear-sessions-cacheSettings.clearSessionsCachesettings:admin
POST/settings/revoke-remember-tokensSettings.revokeRememberTokenssettings:admin
POST/settings/flush-settings-cacheSettings.flushSettingsCachesettings:admin
POST/settings/logoSettings.uploadLogosettings:write,settings:admin
DELETE/settings/logoSettings.deleteLogosettings:write,settings:admin
GET/avatars/:userId/:sizeAssets.avatarAuth
GET/branding/logo/:sizeAssets.logoPúblico
GET/healthcheckDevuelve Ok!Público

Todas las rutas también admiten el patrón catch-all basado en convenciones /:handler/:action?, que se compara al final en app/config/Router.bx.

Handlers y enrutamientoCada handler, sus acciones, y cómo Router.bx conecta las URLs con ellos. Seguridad y permisosAutenticación de sesión, CSRF, JWT, encabezados de seguridad, y el modelo de permisos resource:action.
Editar esta página Descargar Markdown Última actualización Oct 1, 2026, 2:02:30 PM