api.client.AccountManagement - PolymeshAssociation/polymesh-sdk GitHub Wiki

@polymeshassociation/polymesh-sdk / api/client/AccountManagement

api/client/AccountManagement

Classes

AccountManagement

Defined in: api/client/AccountManagement.ts:52

Handles functionality related to Account Management

Methods

acceptPrimaryKey()

acceptPrimaryKey(args, opts?): Promise<GenericPolymeshTransaction<void, void>>

Defined in: api/client/AccountManagement.ts:364

Accepts the authorization to become the new primary key of the issuing identity.

If a CDD service provider approved this change (or this is not required), primary key of the Identity is updated.

Parameters
Parameter Type
args AcceptPrimaryKeyRotationParams
opts? ProcedureOpts
Returns

Promise<GenericPolymeshTransaction<void, void>>

Note

The caller (new primary key) must be either a secondary key of the issuing identity, or unlinked to any identity.

Note

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

acceptSubsidy()

acceptSubsidy(args, opts?): Promise<GenericPolymeshTransaction<void, void>>

Defined in: api/client/AccountManagement.ts:212

Accepts a pending subsidy request from subsidizer

Parameters
Parameter Type
args AcceptSubsidyParams
opts? ProcedureOpts
Returns

Promise<GenericPolymeshTransaction<void, void>>

Note

Only the beneficiary can accept an already approved subsidy request. Pending subsidies for a beneficiary can be fetched by calling subsidies.getPendingSubsidies.

Note

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

addSecondaryAccounts()

addSecondaryAccounts(args, opts?): Promise<GenericPolymeshTransaction<Identity, Identity>>

Defined in: api/client/AccountManagement.ts:161

Adds a list of secondary Accounts to the signing Identity

Parameters
Parameter Type
args AddSecondaryAccountsParams
opts? ProcedureOpts
Returns

Promise<GenericPolymeshTransaction<Identity, Identity>>

Throws

if the signing Account is not the primary Account of the Identity

Note

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

approveSubsidy()

approveSubsidy(args, opts?): Promise<GenericPolymeshTransaction<void, void>>

Defined in: api/client/AccountManagement.ts:205

Approves a subsidy request

This is to be called in by the paying key to approve allowance with respect to a beneficiary key.

Parameters
Parameter Type
args SubsidizeAccountParams
opts? ProcedureOpts
Returns

Promise<GenericPolymeshTransaction<void, void>>

Note

this will create a pending subsidies entry, which has to be accepted by the beneficiary Account. Pending subsidies for a beneficiary can be fetched by calling subsidies.getPendingSubsidies.

Throws

if same allowance amount is pending for acceptance with respect to same beneficiary

Note

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

createMultiSigAccount()

createMultiSigAccount(args, opts?): Promise<GenericPolymeshTransaction<MultiSig, MultiSig>>

Defined in: api/client/AccountManagement.ts:228

Create a MultiSig Account

Parameters
Parameter Type
args CreateMultiSigParams
opts? ProcedureOpts
Returns

Promise<GenericPolymeshTransaction<MultiSig, MultiSig>>

Note

this will create an Authorization Request for each signing Account which will have to be accepted before they can approve transactions. None of the signing Accounts can be associated with an Identity when accepting the Authorization 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 createMultiSigAccount.checkAuthorization on it to see whether the signing Account and Identity have the required roles and permissions to run it

freezeSecondaryAccounts()

freezeSecondaryAccounts(opts?): Promise<GenericPolymeshTransaction<void, void>>

Defined in: api/client/AccountManagement.ts:189

Freeze all of the secondary Accounts in the signing Identity. This means revoking their permission to perform any operation on the blockchain and freezing their funds until the Accounts are unfrozen via unfreezeSecondaryAccounts

Parameters
Parameter Type
opts? ProcedureOpts
Returns

Promise<GenericPolymeshTransaction<void, void>>

Note

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

generateOffChainAuthSignature()

generateOffChainAuthSignature(args): Promise<`0x${string}`>

Defined in: api/client/AccountManagement.ts:373

Generate an offchain authorization signature with a specified signer

Parameters
Parameter Type Description
args { expiry: Date; signer: string | Account; target: string | Identity; } -
args.expiry Date date after which the authorization expires
args.signer string | Account Signer to be used to generate the off chain auth signature
args.target string | Identity DID of the identity to which signer is targeting the authorization
Returns

Promise<`0x${string}`>

getAccount()

getAccount(args): Promise<Account | MultiSig>

Defined in: api/client/AccountManagement.ts:302

Return an Account instance from an address. If the Account has multiSig signers, the returned value will be a MultiSig instance

Parameters
Parameter Type
args { address: string; }
args.address string
Returns

Promise<Account | MultiSig>

getAccountBalance()
Call Signature

getAccountBalance(args?): Promise<AccountBalance>

Defined in: api/client/AccountManagement.ts:237

Get the free/locked POLYX balance of an Account

Parameters
Parameter Type Description
args? { account: string | Account; } -
args.account? string | Account The account to get balance for (defaults to the signing Account)
Returns

Promise<AccountBalance>

The account's POLYX balance information

Note

can be subscribed to, if connected to node using a web socket

Call Signature

getAccountBalance(callback): Promise<UnsubCallback>

Defined in: api/client/AccountManagement.ts:246

Get the free/locked POLYX balance of the signing Account (with subscription)

Parameters
Parameter Type Description
callback SubCallback<AccountBalance> Callback function to receive balance updates
Returns

Promise<UnsubCallback>

An unsubscribe function

Note

can be subscribed to, if connected to node using a web socket

Call Signature

getAccountBalance(args, callback): Promise<UnsubCallback>

Defined in: api/client/AccountManagement.ts:256

Get the free/locked POLYX balance of an Account (with subscription)

Parameters
Parameter Type Description
args { account: string | Account; } -
args.account string | Account The account to get balance for
callback SubCallback<AccountBalance> Callback function to receive balance updates
Returns

Promise<UnsubCallback>

An unsubscribe function

Note

can be subscribed to, if connected to node using a web socket

getSigningAccount()

getSigningAccount(): Account | null

Defined in: api/client/AccountManagement.ts:309

Return the signing Account, or null if no signing Account has been set

Returns

Account | null

getSigningAccounts()

getSigningAccounts(): Promise<Account[]>

Defined in: api/client/AccountManagement.ts:322

Return a list that contains all the signing Accounts associated to the SDK instance's Signing Manager

Returns

Promise<Account[]>

Throws

— if there is no Signing Manager attached to the SDK

getSubsidy()

getSubsidy(args): Subsidy

Defined in: api/client/AccountManagement.ts:329

Return an Subsidy instance for a pair of beneficiary and subsidizer Account

Parameters
Parameter Type
args { beneficiary: string | Account; subsidizer: string | Account; }
args.beneficiary string | Account
args.subsidizer string | Account
Returns

Subsidy

inviteAccount()

inviteAccount(args, opts?): Promise<GenericPolymeshTransaction<AuthorizationRequest, AuthorizationRequest>>

Defined in: api/client/AccountManagement.ts:184

Send an invitation to an Account to join the signing Identity as a secondary Account

Parameters
Parameter Type
args InviteAccountParams
opts? ProcedureOpts
Returns

Promise<GenericPolymeshTransaction<AuthorizationRequest, AuthorizationRequest>>

Note

this will create an Authorization Request which has 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

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

isValidAddress()

isValidAddress(args): boolean

Defined in: api/client/AccountManagement.ts:346

Returns true

Parameters
Parameter Type Description
args { address: string; } -
args.address string is a valid ss58 address for the connected network
Returns

boolean

leaveIdentity()

leaveIdentity(opts?): Promise<GenericPolymeshTransaction<void, void>>

Defined in: api/client/AccountManagement.ts:149

Disassociate the signing Account from its Identity. This operation can only be done if the signing Account is a secondary Account

Parameters
Parameter Type
opts? ProcedureOpts
Returns

Promise<GenericPolymeshTransaction<void, void>>

Note

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

modifyPermissions()

modifyPermissions(args, opts?): Promise<GenericPolymeshTransaction<void, void>>

Defined in: api/client/AccountManagement.ts:175

Modify all permissions of a list of secondary Accounts associated with the signing Identity

Parameters
Parameter Type
args ModifySignerPermissionsParams
opts? ProcedureOpts
Returns

Promise<GenericPolymeshTransaction<void, void>>

Throws

if the signing Account is not the primary Account of the Identity whose secondary Account permissions are being modified

Note

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

removeSecondaryAccounts()

removeSecondaryAccounts(args, opts?): Promise<GenericPolymeshTransaction<void, void>>

Defined in: api/client/AccountManagement.ts:154

Remove a list of secondary Accounts associated with the signing Identity

Parameters
Parameter Type
args RemoveSecondaryAccountsParams
opts? ProcedureOpts
Returns

Promise<GenericPolymeshTransaction<void, void>>

Note

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

revokePermissions()

revokePermissions(args, opts?): Promise<GenericPolymeshTransaction<void, void>>

Defined in: api/client/AccountManagement.ts:168

Revoke all permissions of a list of secondary Accounts associated with the signing Identity

Parameters
Parameter Type
args { secondaryAccounts: (string | Account)[]; }
args.secondaryAccounts (string | Account)[]
opts? ProcedureOpts
Returns

Promise<GenericPolymeshTransaction<void, void>>

Throws

if the signing Account is not the primary Account of the Identity whose secondary Account permissions are being revoked

Note

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

revokeSubsidy()

revokeSubsidy(args, opts?): Promise<GenericPolymeshTransaction<void, void>>

Defined in: api/client/AccountManagement.ts:219

Revokes an already approved subsidy request

Parameters
Parameter Type
args RevokeSubsidyParams
opts? ProcedureOpts
Returns

Promise<GenericPolymeshTransaction<void, void>>

Note

Only the subsidizer can revoke an already approved subsidy request. Pending subsidies for a beneficiary can be fetched by calling subsidies.getPendingSubsidies.

Note

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

unfreezeSecondaryAccounts()

unfreezeSecondaryAccounts(opts?): Promise<GenericPolymeshTransaction<void, void>>

Defined in: api/client/AccountManagement.ts:194

Unfreeze all of the secondary Accounts in the signing Identity. This will restore their permissions as they were before being frozen

Parameters
Parameter Type
opts? ProcedureOpts
Returns

Promise<GenericPolymeshTransaction<void, void>>

Note

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