> 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/classes/identity.md).

# Identity

Represents an Identity in the Polymesh blockchain

## Hierarchy

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

  ↳ **Identity**

  ↳ [DefaultTrustedClaimIssuer](/polymesh-sdk-api-reference/classes/defaulttrustedclaimissuer.md)

## Index

### Constructors

* [constructor](#constructor)

### Properties

* [assetPermissions](#assetpermissions)
* [authorizations](#authorizations)
* [context](#protected-context)
* [did](#did)
* [portfolios](#portfolios)
* [uuid](#uuid)

### Methods

* [areSecondaryAccountsFrozen](#aresecondaryaccountsfrozen)
* [checkRoles](#checkroles)
* [exists](#exists)
* [getAssetBalance](#getassetbalance)
* [getHeldAssets](#getheldassets)
* [getInstructions](#getinstructions)
* [getPendingDistributions](#getpendingdistributions)
* [getPendingInstructions](#getpendinginstructions)
* [getPrimaryAccount](#getprimaryaccount)
* [getScopeId](#getscopeid)
* [getSecondaryAccounts](#getsecondaryaccounts)
* [getTrustingAssets](#gettrustingassets)
* [getVenues](#getvenues)
* [hasRole](#hasrole)
* [hasRoles](#hasroles)
* [hasValidCdd](#hasvalidcdd)
* [isCddProvider](#iscddprovider)
* [isEqual](#isequal)
* [isGcMember](#isgcmember)
* [toJson](#tojson)
* [generateUuid](#static-generateuuid)
* [unserialize](#static-unserialize)

## Constructors

### constructor

\+ **new Identity**(`identifiers`: UniqueIdentifiers, `context`: Context): [*Identity*](/polymesh-sdk-api-reference/classes/identity.md)

*Overrides void*

*Defined in* [*src/api/entities/Identity/index.ts:94*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L94)

Create an Identity entity

**Parameters:**

| Name          | Type              |
| ------------- | ----------------- |
| `identifiers` | UniqueIdentifiers |
| `context`     | Context           |

**Returns:** [*Identity*](/polymesh-sdk-api-reference/classes/identity.md)

## Properties

### assetPermissions

• **assetPermissions**: [*AssetPermissions*](/polymesh-sdk-api-reference/classes/assetpermissions.md)

*Defined in* [*src/api/entities/Identity/index.ts:94*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L94)

***

### authorizations

• **authorizations**: [*IdentityAuthorizations*](/polymesh-sdk-api-reference/classes/identityauthorizations.md)

*Defined in* [*src/api/entities/Identity/index.ts:92*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L92)

***

### `Protected` context

• **context**: *Context*

*Inherited from* [*CheckpointSchedule*](/polymesh-sdk-api-reference/classes/checkpointschedule.md)*.*[*context*](/polymesh-sdk-api-reference/classes/checkpointschedule.md#protected-context)

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

***

### did

• **did**: *string*

*Defined in* [*src/api/entities/Identity/index.ts:89*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L89)

Identity ID as stored in the blockchain

***

### portfolios

• **portfolios**: [*Portfolios*](/polymesh-sdk-api-reference/classes/portfolios.md)

*Defined in* [*src/api/entities/Identity/index.ts:93*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L93)

***

### uuid

• **uuid**: *string*

*Inherited from* [*CheckpointSchedule*](/polymesh-sdk-api-reference/classes/checkpointschedule.md)*.*[*uuid*](/polymesh-sdk-api-reference/classes/checkpointschedule.md#uuid)

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

## Methods

### areSecondaryAccountsFrozen

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

*Defined in* [*src/api/entities/Identity/index.ts:583*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L583)

Check whether secondary Accounts are frozen

**`note`** can be subscribed to

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

▸ **areSecondaryAccountsFrozen**(`callback`: [SubCallback](/polymesh-sdk-api-reference/globals.md#subcallback)‹boolean›): *Promise‹*[*UnsubCallback*](/polymesh-sdk-api-reference/globals.md#unsubcallback)*›*

*Defined in* [*src/api/entities/Identity/index.ts:584*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L584)

**Parameters:**

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

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

***

### checkRoles

▸ **checkRoles**(`roles`: [Role](/polymesh-sdk-api-reference/globals.md#role)\[]): *Promise‹*[*CheckRolesResult*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/docs/v14/docs/interfaces/checkrolesresult.md)*›*

*Defined in* [*src/api/entities/Identity/index.ts:351*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L351)

Check whether this Identity possesses all specified roles

**Parameters:**

| Name    | Type                                                   |
| ------- | ------------------------------------------------------ |
| `roles` | [Role](/polymesh-sdk-api-reference/globals.md#role)\[] |

**Returns:** *Promise‹*[*CheckRolesResult*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/docs/v14/docs/interfaces/checkrolesresult.md)*›*

***

### exists

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

*Overrides* [*Entity*](/polymesh-sdk-api-reference/classes/entity.md)*.*[*exists*](/polymesh-sdk-api-reference/classes/entity.md#abstract-exists)

*Defined in* [*src/api/entities/Identity/index.ts:713*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L713)

Determine whether this Identity exists on chain

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

***

### getAssetBalance

▸ **getAssetBalance**(`args`: object): *Promise‹BigNumber›*

*Defined in* [*src/api/entities/Identity/index.ts:161*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L161)

Retrieve the balance of a particular Asset

**`note`** can be subscribed to

**Parameters:**

▪ **args**: *object*

| Name     | Type   |
| -------- | ------ |
| `ticker` | string |

**Returns:** *Promise‹BigNumber›*

▸ **getAssetBalance**(`args`: object, `callback`: [SubCallback](/polymesh-sdk-api-reference/globals.md#subcallback)‹BigNumber›): *Promise‹*[*UnsubCallback*](/polymesh-sdk-api-reference/globals.md#unsubcallback)*›*

*Defined in* [*src/api/entities/Identity/index.ts:162*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L162)

**Parameters:**

▪ **args**: *object*

| Name     | Type   |
| -------- | ------ |
| `ticker` | string |

▪ **callback**: [*SubCallback*](/polymesh-sdk-api-reference/globals.md#subcallback)*‹BigNumber›*

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

***

### getHeldAssets

▸ **getHeldAssets**(`opts`: object): *Promise‹*[*ResultSet*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/docs/v14/docs/interfaces/resultset.md)*‹*[*Asset*](/polymesh-sdk-api-reference/classes/asset.md)*››*

*Defined in* [*src/api/entities/Identity/index.ts:309*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L309)

Retrieve a list of all Assets which were held at one point by this Identity

**`note`** uses the middleware

**`note`** supports pagination

**Parameters:**

▪`Default value` **opts**: *object*= { order: Order.Asc }

| Name     | Type      |
| -------- | --------- |
| `order?` | Order     |
| `size?`  | BigNumber |
| `start?` | BigNumber |

**Returns:** *Promise‹*[*ResultSet*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/docs/v14/docs/interfaces/resultset.md)*‹*[*Asset*](/polymesh-sdk-api-reference/classes/asset.md)*››*

***

### getInstructions

▸ **getInstructions**(): *Promise‹*[*GroupedInstructions*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/docs/v14/docs/interfaces/groupedinstructions.md)*›*

*Defined in* [*src/api/entities/Identity/index.ts:461*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L461)

Retrieve all Instructions where this Identity is a participant, grouped by status

**Returns:** *Promise‹*[*GroupedInstructions*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/docs/v14/docs/interfaces/groupedinstructions.md)*›*

***

### getPendingDistributions

▸ **getPendingDistributions**(): *Promise‹*[*DistributionWithDetails*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/docs/v14/docs/interfaces/distributionwithdetails.md)*\[]›*

*Defined in* [*src/api/entities/Identity/index.ts:620*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L620)

Retrieve every Dividend Distribution for which this Identity is eligible and hasn't been paid

**`note`** uses the middleware

**`note`** this query can be potentially **SLOW** depending on which Assets this Identity has held

**Returns:** *Promise‹*[*DistributionWithDetails*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/docs/v14/docs/interfaces/distributionwithdetails.md)*\[]›*

***

### getPendingInstructions

▸ **getPendingInstructions**(): *Promise‹*[*Instruction*](/polymesh-sdk-api-reference/classes/instruction.md)*\[]›*

*Defined in* [*src/api/entities/Identity/index.ts:530*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L530)

Retrieve all pending Instructions involving this Identity

**`deprecated`** in favor of `getInstructions`

**Returns:** *Promise‹*[*Instruction*](/polymesh-sdk-api-reference/classes/instruction.md)*\[]›*

***

### getPrimaryAccount

▸ **getPrimaryAccount**(): *Promise‹*[*PermissionedAccount*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/docs/v14/docs/interfaces/permissionedaccount.md)*›*

*Defined in* [*src/api/entities/Identity/index.ts:262*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L262)

Retrieve the primary Account associated with the Identity

**`note`** can be subscribed to

**Returns:** *Promise‹*[*PermissionedAccount*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/docs/v14/docs/interfaces/permissionedaccount.md)*›*

▸ **getPrimaryAccount**(`callback`: [SubCallback](/polymesh-sdk-api-reference/globals.md#subcallback)‹[PermissionedAccount](https://github.com/PolymeshAssociation/polymesh-sdk/blob/docs/v14/docs/interfaces/permissionedaccount.md)›): *Promise‹*[*UnsubCallback*](/polymesh-sdk-api-reference/globals.md#unsubcallback)*›*

*Defined in* [*src/api/entities/Identity/index.ts:263*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L263)

**Parameters:**

| Name       | Type                                                                                                                                                                                               |
| ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `callback` | [SubCallback](/polymesh-sdk-api-reference/globals.md#subcallback)‹[PermissionedAccount](https://github.com/PolymeshAssociation/polymesh-sdk/blob/docs/v14/docs/interfaces/permissionedaccount.md)› |

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

***

### getScopeId

▸ **getScopeId**(`args`: object): *Promise‹string | null›*

*Defined in* [*src/api/entities/Identity/index.ts:439*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L439)

Retrieve the Scope ID associated to this Identity's Investor Uniqueness Claim for a specific Asset, or null if there is none

**`note`** more on Investor Uniqueness [here](https://developers.polymesh.network/introduction/identity#polymesh-unique-identity-system-puis) and [here](https://developers.polymesh.network/polymesh-docs/primitives/confidential-identity)

**Parameters:**

▪ **args**: *object*

| Name    | Type                                                            |
| ------- | --------------------------------------------------------------- |
| `asset` | [Asset](/polymesh-sdk-api-reference/classes/asset.md) \| string |

**Returns:** *Promise‹string | null›*

***

### getSecondaryAccounts

▸ **getSecondaryAccounts**(): *Promise‹*[*PermissionedAccount*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/docs/v14/docs/interfaces/permissionedaccount.md)*\[]›*

*Defined in* [*src/api/entities/Identity/index.ts:674*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L674)

Get the list of secondary Accounts related to the Identity

**`note`** can be subscribed to

**Returns:** *Promise‹*[*PermissionedAccount*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/docs/v14/docs/interfaces/permissionedaccount.md)*\[]›*

▸ **getSecondaryAccounts**(`callback`: [SubCallback](/polymesh-sdk-api-reference/globals.md#subcallback)‹[PermissionedAccount](https://github.com/PolymeshAssociation/polymesh-sdk/blob/docs/v14/docs/interfaces/permissionedaccount.md)\[]›): *Promise‹*[*UnsubCallback*](/polymesh-sdk-api-reference/globals.md#unsubcallback)*›*

*Defined in* [*src/api/entities/Identity/index.ts:675*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L675)

**Parameters:**

| Name       | Type                                                                                                                                                                                                  |
| ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `callback` | [SubCallback](/polymesh-sdk-api-reference/globals.md#subcallback)‹[PermissionedAccount](https://github.com/PolymeshAssociation/polymesh-sdk/blob/docs/v14/docs/interfaces/permissionedaccount.md)\[]› |

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

***

### getTrustingAssets

▸ **getTrustingAssets**(): *Promise‹*[*Asset*](/polymesh-sdk-api-reference/classes/asset.md)*\[]›*

*Defined in* [*src/api/entities/Identity/index.ts:386*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L386)

Get the list of Assets for which this Identity is a trusted claim issuer

**`note`** uses the middleware

**Returns:** *Promise‹*[*Asset*](/polymesh-sdk-api-reference/classes/asset.md)*\[]›*

***

### getVenues

▸ **getVenues**(): *Promise‹*[*Venue*](/polymesh-sdk-api-reference/classes/venue.md)*\[]›*

*Defined in* [*src/api/entities/Identity/index.ts:403*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L403)

Retrieve all Venues created by this Identity

**`note`** can be subscribed to

**Returns:** *Promise‹*[*Venue*](/polymesh-sdk-api-reference/classes/venue.md)*\[]›*

▸ **getVenues**(`callback`: [SubCallback](/polymesh-sdk-api-reference/globals.md#subcallback)‹[Venue](/polymesh-sdk-api-reference/classes/venue.md)\[]›): *Promise‹*[*UnsubCallback*](/polymesh-sdk-api-reference/globals.md#unsubcallback)*›*

*Defined in* [*src/api/entities/Identity/index.ts:404*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L404)

**Parameters:**

| Name       | Type                                                                                                                        |
| ---------- | --------------------------------------------------------------------------------------------------------------------------- |
| `callback` | [SubCallback](/polymesh-sdk-api-reference/globals.md#subcallback)‹[Venue](/polymesh-sdk-api-reference/classes/venue.md)\[]› |

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

***

### hasRole

▸ **hasRole**(`role`: [Role](/polymesh-sdk-api-reference/globals.md#role)): *Promise‹boolean›*

*Defined in* [*src/api/entities/Identity/index.ts:113*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L113)

Check whether this Identity possesses the specified Role

**Parameters:**

| Name   | Type                                                |
| ------ | --------------------------------------------------- |
| `role` | [Role](/polymesh-sdk-api-reference/globals.md#role) |

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

***

### hasRoles

▸ **hasRoles**(`roles`: [Role](/polymesh-sdk-api-reference/globals.md#role)\[]): *Promise‹boolean›*

*Defined in* [*src/api/entities/Identity/index.ts:375*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L375)

Check whether this Identity possesses all specified roles

**`deprecated`** in favor of `checkRoles`

**Parameters:**

| Name    | Type                                                   |
| ------- | ------------------------------------------------------ |
| `roles` | [Role](/polymesh-sdk-api-reference/globals.md#role)\[] |

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

***

### hasValidCdd

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

*Defined in* [*src/api/entities/Identity/index.ts:210*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L210)

Check whether this Identity has a valid CDD claim

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

***

### isCddProvider

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

*Defined in* [*src/api/entities/Identity/index.ts:243*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L243)

Check whether this Identity is a CDD provider

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

***

### isEqual

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

*Inherited from* [*CheckpointSchedule*](/polymesh-sdk-api-reference/classes/checkpointschedule.md)*.*[*isEqual*](/polymesh-sdk-api-reference/classes/checkpointschedule.md#isequal)

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

Determine whether this Entity is the same as another one

**Parameters:**

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

**Returns:** *boolean*

***

### isGcMember

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

*Defined in* [*src/api/entities/Identity/index.ts:226*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L226)

Check whether this Identity is Governance Committee member

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

***

### toJson

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

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

*Defined in* [*src/api/entities/Identity/index.ts:726*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/src/api/entities/Identity/index.ts#L726)

Return the Identity's DID

**Returns:** *string*

***

### `Static` generateUuid

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

*Inherited from* [*CheckpointSchedule*](/polymesh-sdk-api-reference/classes/checkpointschedule.md)*.*[*generateUuid*](/polymesh-sdk-api-reference/classes/checkpointschedule.md#static-generateuuid)

*Defined in* [*src/api/entities/Entity.ts:14*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/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* [*CheckpointSchedule*](/polymesh-sdk-api-reference/classes/checkpointschedule.md)*.*[*unserialize*](/polymesh-sdk-api-reference/classes/checkpointschedule.md#static-unserialize)

*Defined in* [*src/api/entities/Entity.ts:23*](https://github.com/PolymeshAssociation/polymesh-sdk/blob/46845947/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*
