> For the complete documentation index, see [llms.txt](https://developers.polymath.network/polymesh-sdk-api-reference/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v9/classes/account.md).

# Account

Represents an account in the Polymesh blockchain. Accounts can hold POLYX, control Identities and vote on proposals (among other things)

## Hierarchy

* [Entity](/polymesh-sdk-api-reference/docs-v9/classes/entity.md)‹UniqueIdentifiers, string›

  ↳ **Account**

## Index

### Properties

* [address](/polymesh-sdk-api-reference/docs-v9/classes/account.md#address)
* [authorizations](/polymesh-sdk-api-reference/docs-v9/classes/account.md#authorizations)
* [context](/polymesh-sdk-api-reference/docs-v9/classes/account.md#protected-context)
* [key](/polymesh-sdk-api-reference/docs-v9/classes/account.md#key)
* [uuid](/polymesh-sdk-api-reference/docs-v9/classes/account.md#uuid)

### Methods

* [getBalance](/polymesh-sdk-api-reference/docs-v9/classes/account.md#getbalance)
* [getIdentity](/polymesh-sdk-api-reference/docs-v9/classes/account.md#getidentity)
* [getPermissions](/polymesh-sdk-api-reference/docs-v9/classes/account.md#getpermissions)
* [getTransactionHistory](/polymesh-sdk-api-reference/docs-v9/classes/account.md#gettransactionhistory)
* [hasPermissions](/polymesh-sdk-api-reference/docs-v9/classes/account.md#haspermissions)
* [isEqual](/polymesh-sdk-api-reference/docs-v9/classes/account.md#isequal)
* [isFrozen](/polymesh-sdk-api-reference/docs-v9/classes/account.md#isfrozen)
* [leaveIdentity](/polymesh-sdk-api-reference/docs-v9/classes/account.md#leaveidentity)
* [toJson](/polymesh-sdk-api-reference/docs-v9/classes/account.md#tojson)
* [generateUuid](/polymesh-sdk-api-reference/docs-v9/classes/account.md#static-generateuuid)
* [unserialize](/polymesh-sdk-api-reference/docs-v9/classes/account.md#static-unserialize)

## Properties

### address

• **address**: *string*

*Defined in* [*src/api/entities/Account.ts:63*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Account.ts#L63)

Polymesh-specific address of the account. Serves as an identifier

### authorizations

• **authorizations**: [*Authorizations*](/polymesh-sdk-api-reference/docs-v9/classes/authorizations.md)*‹*[*Account*](/polymesh-sdk-api-reference/docs-v9/classes/account.md)*›*

*Defined in* [*src/api/entities/Account.ts:71*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Account.ts#L71)

### `Protected` context

• **context**: [*Context*](/polymesh-sdk-api-reference/docs-v9/classes/context.md)

*Inherited from* [*Entity*](/polymesh-sdk-api-reference/docs-v9/classes/entity.md)*.*[*context*](/polymesh-sdk-api-reference/docs-v9/classes/entity.md#protected-context)

*Defined in* [*src/api/entities/Entity.ts:48*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Entity.ts#L48)

### key

• **key**: *string*

*Defined in* [*src/api/entities/Account.ts:68*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Account.ts#L68)

public key of the account. This is a hex representation of the address that is transversal to any Substrate chain

### uuid

• **uuid**: *string*

*Inherited from* [*Entity*](/polymesh-sdk-api-reference/docs-v9/classes/entity.md)*.*[*uuid*](/polymesh-sdk-api-reference/docs-v9/classes/entity.md#uuid)

*Defined in* [*src/api/entities/Entity.ts:46*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Entity.ts#L46)

## Methods

### getBalance

▸ **getBalance**(): *Promise‹*[*AccountBalance*](/polymesh-sdk-api-reference/docs-v9/globals.md#accountbalance)*›*

*Defined in* [*src/api/entities/Account.ts:108*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Account.ts#L108)

Get the free/locked POLYX balance of the account

**`note`** can be subscribed to

**Returns:** *Promise‹*[*AccountBalance*](/polymesh-sdk-api-reference/docs-v9/globals.md#accountbalance)*›*

▸ **getBalance**(`callback`: [SubCallback](/polymesh-sdk-api-reference/docs-v9/globals.md#subcallback)‹[AccountBalance](/polymesh-sdk-api-reference/docs-v9/globals.md#accountbalance)›): *Promise‹*[*UnsubCallback*](/polymesh-sdk-api-reference/docs-v9/globals.md#unsubcallback)*›*

*Defined in* [*src/api/entities/Account.ts:109*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Account.ts#L109)

**Parameters:**

| Name       | Type                                                                                                                                                       |
| ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `callback` | [SubCallback](/polymesh-sdk-api-reference/docs-v9/globals.md#subcallback)‹[AccountBalance](/polymesh-sdk-api-reference/docs-v9/globals.md#accountbalance)› |

**Returns:** *Promise‹*[*UnsubCallback*](/polymesh-sdk-api-reference/docs-v9/globals.md#unsubcallback)*›*

### getIdentity

▸ **getIdentity**(): *Promise‹*[*Identity*](/polymesh-sdk-api-reference/docs-v9/classes/identity.md) *| null›*

*Defined in* [*src/api/entities/Account.ts:127*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Account.ts#L127)

Retrieve the Identity associated to this Account (null if there is none)

**Returns:** *Promise‹*[*Identity*](/polymesh-sdk-api-reference/docs-v9/classes/identity.md) *| null›*

### getPermissions

▸ **getPermissions**(): *Promise‹Permissions›*

*Defined in* [*src/api/entities/Account.ts:265*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Account.ts#L265)

Retrieve the Permissions this Signer has as a Signing Key for its corresponding Identity

**Returns:** *Promise‹Permissions›*

### getTransactionHistory

▸ **getTransactionHistory**(`filters`: object): *Promise‹*[*ResultSet*](/polymesh-sdk-api-reference/docs-v9/interfaces/resultset.md)*‹*[*ExtrinsicData*](/polymesh-sdk-api-reference/docs-v9/interfaces/extrinsicdata.md)*››*

*Defined in* [*src/api/entities/Account.ts:159*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Account.ts#L159)

Retrieve a list of transactions signed by this account. Can be filtered using parameters

**`note`** uses the middleware

**Parameters:**

▪`Default value` **filters**: *object*= {}

| Name           | Type                       | Description                                   |
| -------------- | -------------------------- | --------------------------------------------- |
| `blockNumber?` | BigNumber                  | -                                             |
| `orderBy?`     | TransactionOrderByInput    | -                                             |
| `size?`        | undefined \| number        | page size                                     |
| `start?`       | undefined \| number        | page offset                                   |
| `success?`     | undefined \| false \| true | whether the transaction was successful or not |
| `tag?`         | TxTag                      | tag associated with the transaction           |

**Returns:** *Promise‹*[*ResultSet*](/polymesh-sdk-api-reference/docs-v9/interfaces/resultset.md)*‹*[*ExtrinsicData*](/polymesh-sdk-api-reference/docs-v9/interfaces/extrinsicdata.md)*››*

### hasPermissions

▸ **hasPermissions**(`permissions`: [SimplePermissions](/polymesh-sdk-api-reference/docs-v9/interfaces/simplepermissions.md)): *Promise‹boolean›*

*Defined in* [*src/api/entities/Account.ts:293*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Account.ts#L293)

Check if this Account possesses certain Permissions for its corresponding Identity

**Parameters:**

| Name          | Type                                                                                     |
| ------------- | ---------------------------------------------------------------------------------------- |
| `permissions` | [SimplePermissions](/polymesh-sdk-api-reference/docs-v9/interfaces/simplepermissions.md) |

**Returns:** *Promise‹boolean›*

### isEqual

▸ **isEqual**(`entity`: [Entity](/polymesh-sdk-api-reference/docs-v9/classes/entity.md)‹unknown, unknown›): *boolean*

*Inherited from* [*Entity*](/polymesh-sdk-api-reference/docs-v9/classes/entity.md)*.*[*isEqual*](/polymesh-sdk-api-reference/docs-v9/classes/entity.md#isequal)

*Defined in* [*src/api/entities/Entity.ts:61*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Entity.ts#L61)

Whether this Entity is the same as another one

**Parameters:**

| Name     | Type                                                                              |
| -------- | --------------------------------------------------------------------------------- |
| `entity` | [Entity](/polymesh-sdk-api-reference/docs-v9/classes/entity.md)‹unknown, unknown› |

**Returns:** *boolean*

### isFrozen

▸ **isFrozen**(): *Promise‹boolean›*

*Defined in* [*src/api/entities/Account.ts:244*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Account.ts#L244)

Check whether this Account is frozen. If frozen, it cannot perform any action until the primary key of the Identity unfreezes all secondary keys

**Returns:** *Promise‹boolean›*

### leaveIdentity

▸ **leaveIdentity**(`args`: void, `opts?`: [ProcedureOpts](/polymesh-sdk-api-reference/docs-v9/interfaces/procedureopts.md)): *Promise‹*[*TransactionQueue*](/polymesh-sdk-api-reference/docs-v9/classes/transactionqueue.md)*‹void››*

*Defined in* [*src/api/entities/Account.ts:99*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Account.ts#L99)

Leave the Account's Identity. This operation can only be done if the Account is a secondary key for the Identity

**`note`** this method is of type [ProcedureMethod](/polymesh-sdk-api-reference/docs-v9/interfaces/proceduremethod.md), which means you can call `leaveIdentity.checkAuthorization` on it to see whether the Current Account has the required permissions to run it

**Parameters:**

| Name    | Type                                                                             |
| ------- | -------------------------------------------------------------------------------- |
| `args`  | void                                                                             |
| `opts?` | [ProcedureOpts](/polymesh-sdk-api-reference/docs-v9/interfaces/procedureopts.md) |

**Returns:** *Promise‹*[*TransactionQueue*](/polymesh-sdk-api-reference/docs-v9/classes/transactionqueue.md)*‹void››*

### toJson

▸ **toJson**(): *string*

*Overrides* [*Entity*](/polymesh-sdk-api-reference/docs-v9/classes/entity.md)*.*[*toJson*](/polymesh-sdk-api-reference/docs-v9/classes/entity.md#abstract-tojson)

*Defined in* [*src/api/entities/Account.ts:419*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Account.ts#L419)

Return the Account's address

**Returns:** *string*

### `Static` generateUuid

▸ **generateUuid**‹**Identifiers**›(`identifiers`: Identifiers): *string*

*Inherited from* [*Entity*](/polymesh-sdk-api-reference/docs-v9/classes/entity.md)*.*[*generateUuid*](/polymesh-sdk-api-reference/docs-v9/classes/entity.md#static-generateuuid)

*Defined in* [*src/api/entities/Entity.ts:14*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Entity.ts#L14)

Generate the Entity's UUID from its identifying properties

**Type parameters:**

▪ **Identifiers**

**Parameters:**

| Name          | Type        | Description |
| ------------- | ----------- | ----------- |
| `identifiers` | Identifiers |             |

**Returns:** *string*

### `Static` unserialize

▸ **unserialize**‹**Identifiers**›(`serialized`: string): *Identifiers*

*Inherited from* [*Entity*](/polymesh-sdk-api-reference/docs-v9/classes/entity.md)*.*[*unserialize*](/polymesh-sdk-api-reference/docs-v9/classes/entity.md#static-unserialize)

*Defined in* [*src/api/entities/Entity.ts:23*](https://github.com/PolymathNetwork/polymesh-sdk/blob/56921667/src/api/entities/Entity.ts#L23)

Unserialize a UUID into its Unique Identifiers

**Type parameters:**

▪ **Identifiers**

**Parameters:**

| Name         | Type   | Description         |
| ------------ | ------ | ------------------- |
| `serialized` | string | UUID to unserialize |

**Returns:** *Identifiers*
