Skip to main content
Version: v30.0.x

Class: Identities

Defined in: src/api/client/Identities.ts:37

Handles all Identity related functionality

Methods

allowIdentityToCreatePortfolios()

allowIdentityToCreatePortfolios(args: AllowIdentityToCreatePortfoliosParams, opts?: ProcedureOpts): Promise<GenericPolymeshTransaction<void, void>>

Defined in: src/api/client/Identities.ts:269

Gives permission to the Identity to create Portfolios on behalf of the signing Identity

Parameters

ParameterType

args

AllowIdentityToCreatePortfoliosParams

opts?

ProcedureOpts

Returns

Promise<GenericPolymeshTransaction<void, void>>

Throws

if

  • the provided Identity already has permissions to create portfolios for signing Identity
  • the provided Identity does not exist

Note

this method is of type ProcedureMethod, which means you can call allowIdentityToCreatePortfolios.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it


attestPrimaryKeyRotation()

attestPrimaryKeyRotation(args: AttestPrimaryKeyRotationParams, opts?: ProcedureOpts): Promise<GenericPolymeshTransaction<AuthorizationRequest, AuthorizationRequest>>

Defined in: src/api/client/Identities.ts:155

Get CDD Provider's attestation to change primary key

Parameters

ParameterType

args

AttestPrimaryKeyRotationParams

opts?

ProcedureOpts

Returns

Promise<GenericPolymeshTransaction<AuthorizationRequest, AuthorizationRequest>>

Note

the transaction signer must be a CDD provider

Note

this creates an Authorization Requests which have to be accepted by the targetAccount along with the authorization for RotatingPrimaryKey. An Account or Identity can fetch its pending Authorization Requests by calling authorizations.getReceived. Also, an Account or Identity can directly fetch the details of an Authorization Request by calling authorizations.getOne

Note

required role:

  • Customer Due Diligence Provider

Note

this method is of type ProcedureMethod, which means you can call attestPrimaryKeyRotation.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it


createChild()

createChild(args: CreateChildIdentityParams, opts?: ProcedureOpts): Promise<GenericPolymeshTransaction<ChildIdentity, ChildIdentity>>

Defined in: src/api/client/Identities.ts:245

Creates a child identity and makes the secondaryKey as the primary key of the child identity

Parameters

ParameterType

args

CreateChildIdentityParams

opts?

ProcedureOpts

Returns

Promise<GenericPolymeshTransaction<ChildIdentity, ChildIdentity>>

Note

the given secondaryKey is removed as secondary key from the signing Identity

Throws

if

  • the transaction signer is not the primary account of which the secondaryKey is a secondary key
  • the secondaryKey can't be unlinked (can happen when it's part of a multisig with some balance)
  • the signing account is not a primary key
  • the signing Identity is already a child of some other identity

Deprecated

Child identities are no longer supported in chain v8

Note

this method is of type ProcedureMethod, which means you can call createChild.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it


createChildren()

createChildren(args: CreateChildIdentitiesParams, opts?: ProcedureOpts): Promise<GenericPolymeshTransaction<ChildIdentity[], ChildIdentity[]>>

Defined in: src/api/client/Identities.ts:260

Create child identities using off chain authorization

Parameters

ParameterType

args

CreateChildIdentitiesParams

opts?

ProcedureOpts

Returns

Promise<GenericPolymeshTransaction<ChildIdentity[], ChildIdentity[]>>

Note

the list of key provided in the params should not be linked to any other account

Throws

if

  • the signing account is not a primary key
  • the signing Identity is already a child of some other identity
  • expiresAt is not a future date
  • the any key in childKeyAuths is already linked to an Identity

Deprecated

Child identities are no longer supported in chain v8

Note

this method is of type ProcedureMethod, which means you can call createChildren.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it


createPortfolio()

createPortfolio(args: object, opts?: ProcedureOpts): Promise<GenericPolymeshTransaction<NumberedPortfolio[], NumberedPortfolio>>

Defined in: src/api/client/Identities.ts:189

Create a new Portfolio under the ownership of the signing Identity

Parameters

ParameterType

args

{ name: string; ownerDid?: string; }

args.name

string

args.ownerDid?

string

opts?

ProcedureOpts

Returns

Promise<GenericPolymeshTransaction<NumberedPortfolio[], NumberedPortfolio>>

Note

the ownerDid is optional. If provided portfolios will be created as Custody Portfolios under the ownerDid

Note

this method is of type ProcedureMethod, which means you can call createPortfolio.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it


createPortfolios()

createPortfolios(args: object, opts?: ProcedureOpts): Promise<GenericPolymeshTransaction<NumberedPortfolio[], NumberedPortfolio[]>>

Defined in: src/api/client/Identities.ts:199

Creates a set of new Portfolios under the ownership of the signing Identity

Parameters

ParameterType

args

{ names: string[]; ownerDid?: string; }

args.names

string[]

args.ownerDid?

string

opts?

ProcedureOpts

Returns

Promise<GenericPolymeshTransaction<NumberedPortfolio[], NumberedPortfolio[]>>

Note

the ownerDid is optional. If provided portfolios will be created as Custody Portfolios under the ownerDid

Note

this method is of type ProcedureMethod, which means you can call createPortfolios.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it


getAllowedCustodians()

getAllowedCustodians(did: string | Identity): Promise<string[]>

Defined in: src/api/client/Identities.ts:291

Returns a list of allowed custodian did(s) for Identity

Parameters

ParameterType

did

string | Identity

Returns

Promise<string[]>

Throws

if

  • the provided Identity does not exist

getChildIdentity()

getChildIdentity(args: object): Promise<ChildIdentity>

Defined in: src/api/client/Identities.ts:220

Create a ChildIdentity instance from a DID

Parameters

ParameterType

args

{ did: string; }

args.did

string

Returns

Promise<ChildIdentity>

Throws

if there is no ChildIdentity with the passed DID

Deprecated

Child identities are no longer supported in chain v8


getIdentity()

getIdentity(args: object): Promise<Identity>

Defined in: src/api/client/Identities.ts:209

Create an Identity instance from a DID

Parameters

ParameterType

args

{ did: string; }

args.did

string

Returns

Promise<Identity>

Throws

if there is no Identity with the passed DID


isIdentityValid()

isIdentityValid(args: object): Promise<boolean>

Defined in: src/api/client/Identities.ts:228

Return whether the supplied Identity/DID exists

Parameters

ParameterType

args

{ identity: string | Identity; }

args.identity

string | Identity

Returns

Promise<boolean>


registerIdentity()

registerIdentity(args: RegisterIdentityParams, opts?: ProcedureOpts): Promise<GenericPolymeshTransaction<Identity, Identity>>

Defined in: src/api/client/Identities.ts:135

Register an Identity

Parameters

ParameterType

args

RegisterIdentityParams

opts?

ProcedureOpts

Returns

Promise<GenericPolymeshTransaction<Identity, Identity>>

Note

the transaction signer must be a DID Registrar

Note

this may create Authorization Requests which have to be accepted by the targetAccount. An Account or Identity can fetch its pending Authorization Requests by calling authorizations.getReceived. Also, an Account or Identity can directly fetch the details of an Authorization Request by calling authorizations.getOne

Note

required role:

  • DID Registrar

Note

this method is of type ProcedureMethod, which means you can call registerIdentity.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it


revokeIdentityToCreatePortfolios()

revokeIdentityToCreatePortfolios(args: RevokeIdentityToCreatePortfoliosParams, opts?: ProcedureOpts): Promise<GenericPolymeshTransaction<void, void>>

Defined in: src/api/client/Identities.ts:281

Revokes permission from the Identity to create Portfolios on behalf of the signing Identity

Parameters

ParameterType

args

RevokeIdentityToCreatePortfoliosParams

opts?

ProcedureOpts

Returns

Promise<GenericPolymeshTransaction<void, void>>

Throws

if

  • the provided Identity already does not have permissions to create portfolios for signing Identity
  • the provided Identity does not exist

Note

this method is of type ProcedureMethod, which means you can call revokeIdentityToCreatePortfolios.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it


rotatePrimaryKey()

rotatePrimaryKey(args: RotatePrimaryKeyParams, opts?: ProcedureOpts): Promise<GenericPolymeshTransaction<AuthorizationRequest, AuthorizationRequest>>

Defined in: src/api/client/Identities.ts:167

Creates an Authorization to rotate primary key of the signing Identity by the targetAccount

Parameters

ParameterType

args

RotatePrimaryKeyParams

opts?

ProcedureOpts

Returns

Promise<GenericPolymeshTransaction<AuthorizationRequest, AuthorizationRequest>>

Note

this creates an Authorization Requests which have to be accepted by the targetAccount along with the optional CDD authorization generated by CDD provider attesting the rotation of primary key An Account or Identity can fetch its pending Authorization Requests by calling authorizations.getReceived. Also, an Account or Identity can directly fetch the details of an Authorization Request by calling authorizations.getOne

Note

this method is of type ProcedureMethod, which means you can call rotatePrimaryKey.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it


rotatePrimaryKeyToSecondary()

rotatePrimaryKeyToSecondary(args: RotatePrimaryKeyToSecondaryParams, opts?: ProcedureOpts): Promise<GenericPolymeshTransaction<AuthorizationRequest, AuthorizationRequest>>

Defined in: src/api/client/Identities.ts:180

Creates an Authorization to rotate primary key of the signing Identity to an existing secondary key identified by the targetAccount

Parameters

ParameterType

args

RotatePrimaryKeyToSecondaryParams

opts?

ProcedureOpts

Returns

Promise<GenericPolymeshTransaction<AuthorizationRequest, AuthorizationRequest>>

Note

the given targetAccount must be an existing secondaryKey or unlinked to any other Identity

Note

this creates an Authorization Requests which have to be accepted by the targetAccount along with the optional CDD authorization generated by CDD provider attesting the rotation of primary key An Account or Identity can fetch its pending Authorization Requests by calling authorizations.getReceived. Also, an Account or Identity can directly fetch the details of an Authorization Request by calling authorizations.getOne

Throws

if the given targetAccount is linked with another Identity

Throws

if the given targetAccount is already the primary key of the signing Identity

Throws

if the given targetAccount already has a pending invitation to become the primary key of the signing Identity

Note

this method is of type ProcedureMethod, which means you can call rotatePrimaryKeyToSecondary.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it


selfRegisterDid()

selfRegisterDid(opts?: ProcedureOpts): Promise<GenericPolymeshTransaction<Identity, Identity>>

Defined in: src/api/client/Identities.ts:142

Register a new DID for the signing Account

Parameters

ParameterType

opts?

ProcedureOpts

Returns

Promise<GenericPolymeshTransaction<Identity, Identity>>

Throws

if the signing Account is already linked to an Identity

Note

this method is of type NoArgsProcedureMethod, which means you can call selfRegisterDid.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it