Skip to main content
Skip to main content

UserService

Provides layer to manipulate users.

Hierarchy

  • TransactionBaseService

    UserService

Constructors

constructor

new UserService(«destructured»)

Parameters

Name
«destructured»

Overrides

TransactionBaseService.constructor

Defined in

medusa/src/services/user.ts:45

Properties

__configModule__

Protected Optional Readonly __configModule__: Record<string, unknown>

Inherited from

TransactionBaseService.__configModule__

Defined in

medusa/src/interfaces/transaction-base-service.ts:14


__container__

Protected Readonly __container__: any

Inherited from

TransactionBaseService.__container__

Defined in

medusa/src/interfaces/transaction-base-service.ts:13


__moduleDeclaration__

Protected Optional Readonly __moduleDeclaration__: Record<string, unknown>

Inherited from

TransactionBaseService.__moduleDeclaration__

Defined in

medusa/src/interfaces/transaction-base-service.ts:15


analyticsConfigService_

Protected Readonly analyticsConfigService_: AnalyticsConfigService

Defined in

medusa/src/services/user.ts:40


eventBus_

Protected Readonly eventBus_: EventBusService

Defined in

medusa/src/services/user.ts:42


featureFlagRouter_

Protected Readonly featureFlagRouter_: FlagRouter

Defined in

medusa/src/services/user.ts:43


manager_

Protected manager_: EntityManager

Inherited from

TransactionBaseService.manager_

Defined in

medusa/src/interfaces/transaction-base-service.ts:5


transactionManager_

Protected transactionManager_: undefined | EntityManager

Inherited from

TransactionBaseService.transactionManager_

Defined in

medusa/src/interfaces/transaction-base-service.ts:6


userRepository_

Protected Readonly userRepository_: Repository<User>

Defined in

medusa/src/services/user.ts:41


Events

Static Events: Object

Type declaration

NameType
CREATEDstring
DELETEDstring
PASSWORD_RESETstring
UPDATEDstring

Defined in

medusa/src/services/user.ts:33

Accessors

activeManager_

Protected get activeManager_(): EntityManager

Returns

EntityManager

-EntityManager:

Inherited from

TransactionBaseService.activeManager_

Defined in

medusa/src/interfaces/transaction-base-service.ts:8

Methods

atomicPhase_

Protected atomicPhase_<TResult, TError>(work, isolationOrErrorHandler?, maybeErrorHandlerOrDontFail?): Promise<TResult>

Wraps some work within a transactional block. If the service already has a transaction manager attached this will be reused, otherwise a new transaction manager is created.

Name
TResult
TError

Parameters

NameDescription
work(transactionManager: EntityManager) => Promise<TResult>
isolationOrErrorHandler?IsolationLevel | (error: TError) => Promise<void | TResult>
maybeErrorHandlerOrDontFail?(error: TError) => Promise<void | TResult>

Returns

Promise<TResult>

-Promise: the result of the transactional work

Inherited from

TransactionBaseService.atomicPhase_

Defined in

medusa/src/interfaces/transaction-base-service.ts:56


create

create(user, password): Promise<User>

Creates a user with username being validated. Fails if email is not a valid format.

Parameters

NameDescription
userCreateUserInput
passwordstring

Returns

Promise<User>

-Promise: the result of create -User:

Defined in

medusa/src/services/user.ts:171


delete

delete(userId): Promise<void>

Deletes a user from a given user id.

Parameters

NameDescription
userIdstring

Returns

Promise<void>

-Promise: the result of the delete operation.

Defined in

medusa/src/services/user.ts:263


generateResetPasswordToken

generateResetPasswordToken(userId): Promise<string>

Generate a JSON Web token, that will be sent to a user, that wishes to reset password. The token will be signed with the users current password hash as a secret a long side a payload with userId and the expiry time for the token, which is always 15 minutes.

Parameters

NameDescription
userIdstring

Returns

Promise<string>

-Promise: the generated JSON web token -string: (optional)

Defined in

medusa/src/services/user.ts:327


hashPassword_

hashPassword_(password): Promise<string>

Hashes a password

Parameters

NameDescription
passwordstring

Returns

Promise<string>

-Promise: hashed password -string: (optional)

Defined in

medusa/src/services/user.ts:159


list

list(selector, config?): Promise<User[]>

Parameters

NameDescription
selectorFilterableUserProps
configobject

Returns

Promise<User[]>

-Promise: the result of the find operation -User[]: -User:

Defined in

medusa/src/services/user.ts:65


retrieve

retrieve(userId, config?): Promise<User>

Gets a user by id. Throws in case of DB Error and if user was not found.

Parameters

NameDescription
userIdstring
configFindConfig<User>

Returns

Promise<User>

-Promise: the user document. -User:

Defined in

medusa/src/services/user.ts:77


retrieveByApiToken

retrieveByApiToken(apiToken, relations?): Promise<User>

Gets a user by api token. Throws in case of DB Error and if user was not found.

Parameters

NameDefault valueDescription
apiTokenstringthe token of the user to get.
relationsstring[][]

Returns

Promise<User>

-Promise: the user document. -User:

Defined in

medusa/src/services/user.ts:107


retrieveByEmail

retrieveByEmail(email, config?): Promise<User>

Gets a user by email. Throws in case of DB Error and if user was not found.

Parameters

NameDescription
emailstring
configFindConfig<User>

Returns

Promise<User>

-Promise: the user document. -User:

Defined in

medusa/src/services/user.ts:135


setPassword_

setPassword_(userId, password): Promise<User>

Sets a password for a user Fails if no user exists with userId and if the hashing of the new password does not work.

Parameters

NameDescription
userIdstring
passwordstring

Returns

Promise<User>

-Promise: the result of the update operation -User:

Defined in

medusa/src/services/user.ts:298


shouldRetryTransaction_

Protected shouldRetryTransaction_(err): boolean

Parameters

Name
err

Returns

boolean

-boolean: (optional)

Inherited from

TransactionBaseService.shouldRetryTransaction_

Defined in

medusa/src/interfaces/transaction-base-service.ts:37


update

update(userId, update): Promise<User>

Updates a user.

Parameters

NameDescription
userIdstring
updateUpdateUserInput

Returns

Promise<User>

-Promise: the result of create -User:

Defined in

medusa/src/services/user.ts:217


withTransaction

withTransaction(transactionManager?): UserService

Parameters

Name
transactionManager?

Returns

UserService

-UserService:

Inherited from

TransactionBaseService.withTransaction

Defined in

medusa/src/interfaces/transaction-base-service.ts:20

Was this section helpful?