[PERS SDK - v2.3.26](/sdk-reference/readme) / [Exports](/sdk-reference/modules) / UserStatusApi

# Class: UserStatusApi

Platform-Agnostic User Status API Client

Handles user status operations using the PERS backend.
Matches framework UserStatusApiService methods exactly.

✅ UPDATED: All endpoints updated to new RESTful /users patterns

Error handling patterns follow framework implementation:

- getRemoteEarnedUserStatus() uses silent fallback (empty array)
- Other operations throw errors for proper error handling


## Table of contents

### Constructors

- [constructor](/sdk-reference/classes/userstatusapi#constructor)


### Methods

- [getRemoteUserStatusTypes](/sdk-reference/classes/userstatusapi#getremoteuserstatustypes)
- [getRemoteEarnedUserStatus](/sdk-reference/classes/userstatusapi#getremoteearneduserstatus)
- [createUserStatusType](/sdk-reference/classes/userstatusapi#createuserstatustype)
- [updateUserStatusType](/sdk-reference/classes/userstatusapi#updateuserstatustype)
- [deleteUserStatusType](/sdk-reference/classes/userstatusapi#deleteuserstatustype)


## Constructors

### constructor

• **new UserStatusApi**(`apiClient`): [`UserStatusApi`](/sdk-reference/classes/userstatusapi)

#### Parameters

| Name | Type |
|  --- | --- |
| `apiClient` | [`PersApiClient`](/sdk-reference/classes/persapiclient) |


#### Returns

[`UserStatusApi`](/sdk-reference/classes/userstatusapi)

#### Defined in

[user-status/api/user-status-api.ts:19](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/user-status/api/user-status-api.ts#L19)

## Methods

### getRemoteUserStatusTypes

▸ **getRemoteUserStatusTypes**(`options?`): `Promise`<`PaginatedResponseDTO`<`UserStatusTypeDTO`>>

PUBLIC: Get remote user status types
✅ UPDATED: /user/status-type → /users/status-types

#### Parameters

| Name | Type |
|  --- | --- |
| `options?` | `PaginationOptions` |


#### Returns

`Promise`<`PaginatedResponseDTO`<`UserStatusTypeDTO`>>

#### Defined in

[user-status/api/user-status-api.ts:31](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/user-status/api/user-status-api.ts#L31)

### getRemoteEarnedUserStatus

▸ **getRemoteEarnedUserStatus**(`options?`): `Promise`<`PaginatedResponseDTO`<`UserStatusTypeDTO`>>

AUTH: Get earned user status for authenticated user
✅ UPDATED: /user/auth/status → /users/me/status
✅ FIXED: Returns `PaginatedResponseDTO<UserStatusTypeDTO>` to match v2.0.0
Note: Uses silent fallback pattern from framework - returns empty paginated response on error

#### Parameters

| Name | Type |
|  --- | --- |
| `options?` | `PaginationOptions` |


#### Returns

`Promise`<`PaginatedResponseDTO`<`UserStatusTypeDTO`>>

#### Defined in

[user-status/api/user-status-api.ts:52](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/user-status/api/user-status-api.ts#L52)

### createUserStatusType

▸ **createUserStatusType**(`userStatusType`): `Promise`<`UserStatusTypeDTO`>

ADMIN: Create user status type
✅ UPDATED: /user/admin/status-type → /users/status-types

#### Parameters

| Name | Type |
|  --- | --- |
| `userStatusType` | `UserStatusTypeDTO` |


#### Returns

`Promise`<`UserStatusTypeDTO`>

#### Defined in

[user-status/api/user-status-api.ts:75](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/user-status/api/user-status-api.ts#L75)

### updateUserStatusType

▸ **updateUserStatusType**(`id`, `userStatusType`): `Promise`<`UserStatusTypeDTO`>

ADMIN: Update user status type
PUT /users/status-types/:id

#### Parameters

| Name | Type |
|  --- | --- |
| `id` | `number` |
| `userStatusType` | `UserStatusTypeDTO` |


#### Returns

`Promise`<`UserStatusTypeDTO`>

#### Defined in

[user-status/api/user-status-api.ts:88](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/user-status/api/user-status-api.ts#L88)

### deleteUserStatusType

▸ **deleteUserStatusType**(`id`): `Promise`<`void`>

ADMIN: Delete user status type
DELETE /users/status-types/:id

#### Parameters

| Name | Type |
|  --- | --- |
| `id` | `number` |


#### Returns

`Promise`<`void`>

#### Defined in

[user-status/api/user-status-api.ts:101](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/user-status/api/user-status-api.ts#L101)