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

# Class: BusinessService

Platform-Agnostic Business Service

Contains business logic and operations that work across platforms.
No framework dependencies - pure TypeScript business logic.

Focuses only on actual backend capabilities.

## Table of contents

### Constructors

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


### Methods

- [getActiveBusinesses](/sdk-reference/classes/businessservice#getactivebusinesses)
- [getBusinessTypes](/sdk-reference/classes/businessservice#getbusinesstypes)
- [getBusinessById](/sdk-reference/classes/businessservice#getbusinessbyid)
- [getBusinessByAccount](/sdk-reference/classes/businessservice#getbusinessbyaccount)
- [getBusinessesByType](/sdk-reference/classes/businessservice#getbusinessesbytype)
- [getBusinesses](/sdk-reference/classes/businessservice#getbusinesses)
- [createBusiness](/sdk-reference/classes/businessservice#createbusiness)
- [createBusinessByDisplayName](/sdk-reference/classes/businessservice#createbusinessbydisplayname)
- [updateBusiness](/sdk-reference/classes/businessservice#updatebusiness)
- [toggleBusinessStatus](/sdk-reference/classes/businessservice#togglebusinessstatus)


## Constructors

### constructor

• **new BusinessService**(`businessApi`): [`BusinessService`](/sdk-reference/classes/businessservice)

#### Parameters

| Name | Type |
|  --- | --- |
| `businessApi` | [`BusinessApi`](/sdk-reference/classes/businessapi) |


#### Returns

[`BusinessService`](/sdk-reference/classes/businessservice)

#### Defined in

[business/services/business-service.ts:26](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/business/services/business-service.ts#L26)

## Methods

### getActiveBusinesses

▸ **getActiveBusinesses**(`options?`): `Promise`<`PaginatedResponseDTO`<`BusinessDTO`>>

Get all active businesses with pagination

#### Parameters

| Name | Type |
|  --- | --- |
| `options?` | `BusinessFilterOptions` |


#### Returns

`Promise`<`PaginatedResponseDTO`<`BusinessDTO`>>

**`Deprecated`**

Use getBusinesses({ active: true }) for more control

#### Defined in

[business/services/business-service.ts:32](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/business/services/business-service.ts#L32)

### getBusinessTypes

▸ **getBusinessTypes**(`options?`): `Promise`<`PaginatedResponseDTO`<`BusinessTypeDTO`>>

Get all business types with pagination

#### Parameters

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


#### Returns

`Promise`<`PaginatedResponseDTO`<`BusinessTypeDTO`>>

#### Defined in

[business/services/business-service.ts:39](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/business/services/business-service.ts#L39)

### getBusinessById

▸ **getBusinessById**(`businessId`): `Promise`<`BusinessDTO`>

Get business by ID

#### Parameters

| Name | Type |
|  --- | --- |
| `businessId` | `string` |


#### Returns

`Promise`<`BusinessDTO`>

#### Defined in

[business/services/business-service.ts:46](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/business/services/business-service.ts#L46)

### getBusinessByAccount

▸ **getBusinessByAccount**(`accountAddress`): `Promise`<`BusinessDTO`>

Get business by account address

#### Parameters

| Name | Type |
|  --- | --- |
| `accountAddress` | `string` |


#### Returns

`Promise`<`BusinessDTO`>

#### Defined in

[business/services/business-service.ts:53](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/business/services/business-service.ts#L53)

### getBusinessesByType

▸ **getBusinessesByType**(`typeId`, `options?`): `Promise`<`PaginatedResponseDTO`<`BusinessDTO`>>

Get businesses by type (server-side filtering)
Uses the businessTypeId parameter for efficient server-side filtering.

#### Parameters

| Name | Type |
|  --- | --- |
| `typeId` | `string` |
| `options?` | `BusinessFilterOptions` |


#### Returns

`Promise`<`PaginatedResponseDTO`<`BusinessDTO`>>

#### Defined in

[business/services/business-service.ts:61](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/business/services/business-service.ts#L61)

### getBusinesses

▸ **getBusinesses**(`options?`): `Promise`<`PaginatedResponseDTO`<`BusinessDTO`>>

ADMIN: Get all businesses with filtering and pagination

#### Parameters

| Name | Type | Description |
|  --- | --- | --- |
| `options?` | `BusinessFilterOptions` | Filter and pagination options |


#### Returns

`Promise`<`PaginatedResponseDTO`<`BusinessDTO`>>

**`See`**

BusinessFilterOptions for available filter options

#### Defined in

[business/services/business-service.ts:79](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/business/services/business-service.ts#L79)

### createBusiness

▸ **createBusiness**(`dto`): `Promise`<`BusinessTokenBalancesDTO` | `BusinessApiKeyDTO`>

ADMIN: Create business with full DTO

#### Parameters

| Name | Type |
|  --- | --- |
| `dto` | `BusinessCreateRequestDTO` |


#### Returns

`Promise`<`BusinessTokenBalancesDTO` | `BusinessApiKeyDTO`>

#### Defined in

[business/services/business-service.ts:86](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/business/services/business-service.ts#L86)

### createBusinessByDisplayName

▸ **createBusinessByDisplayName**(`displayName`): `Promise`<`BusinessTokenBalancesDTO` | `BusinessApiKeyDTO`>

ADMIN: Create business by display name

#### Parameters

| Name | Type |
|  --- | --- |
| `displayName` | `string` |


#### Returns

`Promise`<`BusinessTokenBalancesDTO` | `BusinessApiKeyDTO`>

**`Deprecated`**

Use createBusiness(dto) for full control

#### Defined in

[business/services/business-service.ts:94](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/business/services/business-service.ts#L94)

### updateBusiness

▸ **updateBusiness**(`id`, `businessData`): `Promise`<`BusinessDTO`>

ADMIN: Update business

#### Parameters

| Name | Type |
|  --- | --- |
| `id` | `string` |
| `businessData` | `BusinessUpdateRequestDTO` |


#### Returns

`Promise`<`BusinessDTO`>

#### Defined in

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

### toggleBusinessStatus

▸ **toggleBusinessStatus**(`id`, `dto`): `Promise`<`BusinessDTO`>

ADMIN: Toggle business active status

#### Parameters

| Name | Type |
|  --- | --- |
| `id` | `string` |
| `dto` | `BusinessToggleActiveRequestDTO` |


#### Returns

`Promise`<`BusinessDTO`>

#### Defined in

[business/services/business-service.ts:108](https://github.com/eXplorins/PERS-sdks/blob/main/packages/pers-sdk/packages/pers-sdk/src/business/services/business-service.ts#L108)