Versions in this module Expand all Collapse all v0 v0.0.14 Jan 4, 2026 v0.0.13 Jan 3, 2026 v0.0.12 Jan 3, 2026 v0.0.11 Jan 3, 2026 v0.0.10 Jan 3, 2026 v0.0.9 Jan 3, 2026 v0.0.8 Dec 31, 2025 v0.0.7 Dec 29, 2025 Changes in this version + type BanUserRequestDTO struct + ExpiresAt *time.Time + ID string + Reason string + type CreateUserRequestDTO struct + Email string + EmailVerified bool + Metadata map[string]string + Name string + Password string + Role string + Username string + type DeleteUserRequestDTO struct + ID string + type GetAuditLogsRequestDTO struct + Page int + PageSize int + type GetStatsRequestDTO struct + Period string + type ImpersonateUserRequestDTO struct + Duration time.Duration + ID string + type ListSessionsRequestDTO struct + Limit int + Page int + UserID string + type ListUsersRequestDTO struct + Limit int + Page int + Role string + Search string + Status string + type RevokeSessionRequestDTO struct + ID string + type SetUserRoleRequestDTO struct + ID string + Role string + type UnbanUserRequestDTO struct + ID string + Reason string v0.0.6 Dec 17, 2025 v0.0.5 Dec 12, 2025 v0.0.4 Dec 8, 2025 v0.0.3 Dec 8, 2025 v0.0.2 Nov 24, 2025 v0.0.1 Nov 20, 2025 Changes in this version + const PermAuditRead + const PermRoleAssign + const PermSessionRead + const PermSessionRevoke + const PermStatsRead + const PermUserBan + const PermUserCreate + const PermUserDelete + const PermUserImpersonate + const PermUserRead + const PermUserUpdate + const PluginID + const PluginName + const PluginVersion + type BanUserRequest struct + AdminID xid.ID + AppID xid.ID + ExpiresAt *time.Time + Reason string + UserID xid.ID + UserOrganizationID *xid.ID + type Config struct + AllowImpersonation bool + AllowUserCreation bool + AllowUserDeletion bool + MaxImpersonationDuration time.Duration + RequiredRole string + func DefaultConfig() Config + type CreateUserRequest struct + AdminID xid.ID + AppID xid.ID + Email string + EmailVerified bool + Metadata map[string]string + Name string + Password string + Role string + UserOrganizationID *xid.ID + Username string + type ErrorResponse = responses.ErrorResponse + type Handler struct + func NewHandler(service *Service) *Handler + func (h *Handler) BanUser(c forge.Context) error + func (h *Handler) CreateUser(c forge.Context) error + func (h *Handler) DeleteUser(c forge.Context) error + func (h *Handler) GetAuditLogs(c forge.Context) error + func (h *Handler) GetStats(c forge.Context) error + func (h *Handler) ImpersonateUser(c forge.Context) error + func (h *Handler) ListSessions(c forge.Context) error + func (h *Handler) ListUsers(c forge.Context) error + func (h *Handler) RevokeSession(c forge.Context) error + func (h *Handler) SetUserRole(c forge.Context) error + func (h *Handler) UnbanUser(c forge.Context) error + type ImpersonateUserRequest struct + AdminID xid.ID + AppID xid.ID + Duration time.Duration + IPAddress string + UserAgent string + UserID xid.ID + UserOrganizationID *xid.ID + type ListSessionsRequest struct + AdminID xid.ID + AppID xid.ID + Limit int + Page int + UserID *xid.ID + UserOrganizationID *xid.ID + type ListSessionsResponse struct + Limit int + Page int + Sessions []*session.Session + Total int + TotalPages int + type ListUsersRequest struct + AdminID xid.ID + AppID xid.ID + Limit int + Page int + Role string + Search string + Status string + UserOrganizationID *xid.ID + type ListUsersResponse struct + Limit int + Page int + Total int + TotalPages int + Users []*user.User + type MessageResponse = responses.MessageResponse + type Plugin struct + func NewPlugin() *Plugin + func (p *Plugin) Description() string + func (p *Plugin) ID() string + func (p *Plugin) Init(auth interface{}) error + func (p *Plugin) Migrate() error + func (p *Plugin) Name() string + func (p *Plugin) RegisterHooks(registry interface{}) error + func (p *Plugin) RegisterRoles(registry interface{}) error + func (p *Plugin) RegisterRoutes(router forge.Router) error + func (p *Plugin) RegisterServiceDecorators(registry interface{}) error + func (p *Plugin) Version() string + type Service struct + func NewService(config Config, userService interface{}, sessionService interface{}, ...) *Service + func (s *Service) BanUser(ctx context.Context, req *BanUserRequest) error + func (s *Service) CreateUser(ctx context.Context, req *CreateUserRequest) (*user.User, error) + func (s *Service) DeleteUser(ctx context.Context, userID, adminID xid.ID) error + func (s *Service) ImpersonateUser(ctx context.Context, req *ImpersonateUserRequest) (*session.Session, error) + func (s *Service) ListSessions(ctx context.Context, req *ListSessionsRequest) (*ListSessionsResponse, error) + func (s *Service) ListUsers(ctx context.Context, req *ListUsersRequest) (*ListUsersResponse, error) + func (s *Service) RevokeSession(ctx context.Context, sessionID, adminID xid.ID) error + func (s *Service) SetUserRole(ctx context.Context, req *SetUserRoleRequest) error + func (s *Service) UnbanUser(ctx context.Context, req *UnbanUserRequest) error + type SetUserRoleRequest struct + AdminID xid.ID + AppID xid.ID + Role string + UserID xid.ID + UserOrganizationID *xid.ID + type StatsResponse struct + ActiveSessions int + ActiveUsers int + BannedUsers int + Timestamp string + TotalSessions int + TotalUsers int + type UnbanUserRequest struct + AdminID xid.ID + AppID xid.ID + Reason string + UserID xid.ID + UserOrganizationID *xid.ID