Class: Forem::Services::AdminUserService
- Inherits:
-
BaseService
- Object
- BaseService
- Forem::Services::AdminUserService
- Defined in:
- lib/forem/services/admin_user_service.rb
Overview
Service for interacting with the Forem Admin Users API.
Provides administrative operations on user accounts. These endpoints require an API key with admin-level privileges. Access via Client#admin_users. All methods inject the client's requestor automatically so no additional configuration is required.
Instance Method Summary collapse
-
#bulk_link_identities(provider:, identities:, **opts) ⇒ Array<ForemObject>
Submit multiple external identity links in one request.
-
#create(params = {}, opts = {}) ⇒ AdminUser
Invite a new user to the Forem instance.
-
#identities(user_id, **opts) ⇒ Array<ForemObject>
List a user's linked external identities.
-
#link_identity(user_id, provider:, uid:, **opts) ⇒ ForemObject
Link an external identity to a user.
-
#unlink_identity(user_id, identity_id, **opts) ⇒ ForemObject?
Unlink an external identity from a user.
-
#update_notification_settings(user_id, settings:, **opts) ⇒ ForemObject
The updated notification setting.
Methods inherited from BaseService
Constructor Details
This class inherits a constructor from Forem::Services::BaseService
Instance Method Details
#bulk_link_identities(provider:, identities:, **opts) ⇒ Array<ForemObject>
Submit multiple external identity links in one request.
67 68 69 70 71 72 73 |
# File 'lib/forem/services/admin_user_service.rb', line 67 def bulk_link_identities(provider:, identities:, **opts) AdminUser.bulk_link_identities( provider: provider, identities: identities, **opts_with_requestor(opts) ) end |
#create(params = {}, opts = {}) ⇒ AdminUser
Invite a new user to the Forem instance.
Creates a user account and sends them an invitation email. Requires admin privileges.
39 40 41 |
# File 'lib/forem/services/admin_user_service.rb', line 39 def create(params = {}, opts = {}) AdminUser.create(params, opts_with_requestor(opts)) end |
#identities(user_id, **opts) ⇒ Array<ForemObject>
List a user's linked external identities.
80 81 82 |
# File 'lib/forem/services/admin_user_service.rb', line 80 def identities(user_id, **opts) AdminUser.identities(user_id, **opts_with_requestor(opts)) end |
#link_identity(user_id, provider:, uid:, **opts) ⇒ ForemObject
Link an external identity to a user.
50 51 52 53 54 55 56 57 |
# File 'lib/forem/services/admin_user_service.rb', line 50 def link_identity(user_id, provider:, uid:, **opts) AdminUser.link_identity( user_id, provider: provider, uid: uid, **opts_with_requestor(opts) ) end |
#unlink_identity(user_id, identity_id, **opts) ⇒ ForemObject?
Unlink an external identity from a user.
91 92 93 94 95 96 97 |
# File 'lib/forem/services/admin_user_service.rb', line 91 def unlink_identity(user_id, identity_id, **opts) AdminUser.unlink_identity( user_id, identity_id, **opts_with_requestor(opts) ) end |
#update_notification_settings(user_id, settings:, **opts) ⇒ ForemObject
Returns the updated notification setting.
104 105 106 107 108 109 110 |
# File 'lib/forem/services/admin_user_service.rb', line 104 def update_notification_settings(user_id, settings:, **opts) AdminUser.update_notification_settings( user_id, settings: settings, **opts_with_requestor(opts) ) end |