MCPcopy Create free account
hub / github.com/authorizerdev/authorizer / User

Method User

internal/service/admin_users.go:50–75  ·  view source on GitHub ↗

User returns a single user by id or email. Requires super-admin auth. Logic migrated from internal/graphql/user.go.

(ctx context.Context, meta RequestMetadata, params *model.GetUserRequest)

Source from the content-addressed store, hash-verified

48// User returns a single user by id or email. Requires super-admin auth.
49// Logic migrated from internal/graphql/user.go.
50func (p *provider) User(ctx context.Context, meta RequestMetadata, params *model.GetUserRequest) (*model.User, *ResponseSideEffects, error) {
51 log := p.Log.With().Str("func", "User").Logger()
52 if err := p.requireSuperAdmin(ctx, meta); err != nil {
53 return nil, nil, err
54 }
55 // Try getting user by ID.
56 if params.ID != nil && strings.Trim(*params.ID, " ") != "" {
57 res, err := p.StorageProvider.GetUserByID(ctx, *params.ID)
58 if err != nil {
59 log.Debug().Err(err).Msg("failed GetUserByID")
60 return nil, nil, err
61 }
62 return res.AsAPIUser(), nil, nil
63 }
64 // Try getting user by email.
65 if params.Email != nil && strings.Trim(*params.Email, " ") != "" {
66 res, err := p.StorageProvider.GetUserByEmail(ctx, *params.Email)
67 if err != nil {
68 log.Debug().Err(err).Msg("failed GetUserByEmail")
69 return nil, nil, err
70 }
71 return res.AsAPIUser(), nil, nil
72 }
73 // Return error if no params are provided.
74 return nil, nil, fmt.Errorf("invalid params, user id or email is required")
75}
76
77// UpdateUser updates a user's profile, roles, MFA, or verification state and
78// returns the updated user. Requires super-admin auth. Logic migrated from

Callers

nothing calls this directly

Calls 4

requireSuperAdminMethod · 0.95
AsAPIUserMethod · 0.80
GetUserByIDMethod · 0.65
GetUserByEmailMethod · 0.65

Tested by

no test coverage detected