<html><head><title>Signer</title><linkrel="stylesheet"type="text/css"href="/static/style.css"></head><body><divclass="sidebar"><divclass="header"><divclass="logo"><ahref="/"><divclass="image"></div><divclass="name">ethers</div><divclass="version">v5.0-beta</div></a></div></div><divclass="toc"><div><divclass="link title"><ahref="/">Documentation</a></div><divclass="base show link depth-1"><ahref="/getting-started/">Getting Started</a></div><divclass="hide link depth-2"><ahref="/getting-started/#installing">Installing</a></div><divclass="hide link depth-2"><ahref="/getting-started/#importing">Importing</a></div><divclass="base show link depth-1"><ahref="/concepts/">Concepts</a></div><divclass="hide link depth-2"><ahref="/concepts/events/">Events</a></div><divclass="hide link depth-3"><ahref="/concepts/events/#solidity-topics">Solidity Topics</a></div><divclass="hide link depth-2"><ahref="/concepts/gas/">Gas</a></div><divclass="hide link depth-3"><ahref="/concepts/gas/#gas-price">Gas Price</a></div><divclass="hide link depth-3"><ahref="/concepts/gas/#gas-limit">Gas Limit</a></div><divclass="base ancestor show link depth-1"><ahref="/api/">Application Programming Interface</a></div><divclass="show link depth-2"><ahref="/api/contract/">Contracts</a></div><divclass="hide link depth-3"><ahref="/api/contract/#buckets">Buckets</a></div><divclass="myself ancestor ancestor show link depth-2"><ahref="/api/signer/">Signers</a></div><divclass="child link depth-3"><ahref="/api/signer/#signer">Signer</a></div><divclass="child link depth-3"><ahref="/api/signer/#wallet">Wallet</a></div><divclass="child link depth-3"><ahref="/api/signer/#voidsigner">VoidSigner</a></div><divclass="child link depth-3"><ahref="/api/signer/#externallyownedaccount">ExternallyOwnedAccount</a></div><divclass="show link depth-2"><ahref="/api/providers/">Providers</a></div><divclass="hide link depth-3"><ahref="/api/providers/provider/">Provider</a></div><divclass="hide link depth-4"><ahref="/api/providers/provider/#accounts-methods">Accounts Methods</a></div><divclass="hide link depth-4"><ahref="/api/providers/provider/#blocks-methods">Blocks Methods</a></div><divclass="hide link depth-4"><ahref="/api/providers/provider/#ethereum-naming-service-(ens)-methods">Ethereum Naming Service (ENS) Methods</a></div><divclass="hide link depth-4"><ahref="/api/providers/provider/#logs-methods">Logs Methods</a></div><divclass="hide link depth-4"><ahref="/api/providers/provider/#network-status-methods">Network Status Methods</a></div><divclass="hide link depth-4"><ahref="/api/providers/provider/#transactions-methods">Transactions Methods</a></div><divclass="hide link depth-4"><ahref="/api/providers/provider/#event-emitter-methods">Event Emitter Methods</a></div><divclass="hide link depth-4"><ahref="/api/providers/provider/#inspection-methods">Inspection Methods</a></div><divclass="hide link depth-3"><ahref="/api/providers/jsonrpc-provider/">JsonRpcProvider</a></div><divclass="hide link depth-4"><ahref="/api/providers/jsonrpc-provider/#jsonrpcsigner">JsonRpcSigner</a></div><divclass="hide link depth-4"><ahref="/api/providers/jsonrpc-provider/#jsonrpcuncheckedsigner">JsonRpcUncheckedSigner</a></div><divclass="hide link depth-3"><ahref="/api/providers/api-providers/">API Providers</a></div><divclass="hide link depth-4"><ahref="/api/providers/api-providers/#etherscanprovider">EtherscanProvider</a></div><divclass="hide link depth-4"><ahref="/api/providers/api-providers/#infuraprovider">InfuraProvider</a></div><divclass="hide link depth-4"><ahref="/api/providers/api-providers/#alchemyprovider">AlchemyProvider</a></div><divclass="hide link depth-4"><ahref="/api/providers/api-providers/#cloudfrontprovider">CloudfrontProvider</a></div><divclass="hide link depth-3"><ahref="/api/providers/other/">Other Providers</a></div><divclass="hide link depth-4"><ahref="/api/providers/other/#fallbackprovider">FallbackProvider</a></div><divclass="hide link depth-4"><ahref="/api/providers/other/#ipcprovider">IpcProvi
<p>The <b>Signer</b> class is abstract and cannot be directly instaniated. Instead use one of the concreate sub-classes, such as the <ahref="/api/signer/#wallet">Wallet</a>, <ahref="/api/signer/#void-signer">VoidSigner</a> or <ahref="/api/providers/jsonrpc-provider/#signer-jsonrpc">JsonRpcSigner</a>.</p>
<aname="signer-connect"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">signer</span> . <spanclass="method">connect</span> ( <spanclass="param">provider</span> ) <spanclass="arrow">⇒</span><spanclass="returns"><ahref="/api/signer/#signer">Signer</a></span><divclass="anchors"><aclass="self"href="#signer-connect"></a></div></div><divclass="body"><p>Sub-classes <b>must</b> implement this, however they may simply throw an error if changing providers is not supported.</p></div></div>
<aname="signer-getaddress"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">signer</span> . <spanclass="method">getAddress</span> ( ) <spanclass="arrow">⇒</span><spanclass="returns">Promise< string< <ahref="/api/utils/address/#address">Address</a> > ></span><divclass="anchors"><aclass="self"href="#signer-getaddress"></a><aclass="source"href="https://github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages/abstract-signer/src.ts/index.ts#L53">source</a></div></div><divclass="body"><p>Returns a Promise that resolves to the account address.</p><p>This is a Promise so that a <b>Signer</b> can be designed around an asynchronous source, such as hardware wallets.</p><p>Sub-classes <b>must</b> implement this.</p></div></div>
<aname="signer-issigner"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">Signer</span> . <spanclass="method">isSigner</span> ( <spanclass="param">object</span> ) <spanclass="arrow">⇒</span><spanclass="returns">boolean</span><divclass="anchors"><aclass="self"href="#signer-issigner"></a><aclass="source"href="https://github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages/abstract-signer/src.ts/index.ts#L205">source</a></div></div><divclass="body"><p>Returns true if an only if <i>object</i> is a <b>Signer</b>.</p></div></div>
<aname="signer-getbalance"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">signer</span> . <spanclass="method">getBalance</span> ( [ <spanclass="param">blockTag</span> = <spanclass="default-value">"</span><spanclass="param">latest</span>" ] ) <spanclass="arrow">⇒</span><spanclass="returns">Promise< <ahref="/api/utils/bignumber/">BigNumber</a> ></span><divclass="anchors"><aclass="self"href="#signer-getbalance"></a><aclass="source"href="https://github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages/abstract-signer/src.ts/index.ts#L69">source</a></div></div><divclass="body"><p>Returns the balance of this wallet at <i>blockTag</i>.</p></div></div>
<aname="signer-getchainid"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">signer</span> . <spanclass="method">getChainId</span> ( ) <spanclass="arrow">⇒</span><spanclass="returns">Promise< number ></span><divclass="anchors"><aclass="self"href="#signer-getchainid"></a><aclass="source"href="https://github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages/abstract-signer/src.ts/index.ts#L105">source</a></div></div><divclass="body"><p>Returns ths chain ID this wallet is connected to.</p></div></div>
<aname="signer-getgasprice"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">signer</span> . <spanclass="method">getGasPrice</span> ( ) <spanclass="arrow">⇒</span><spanclass="returns">Promise< <ahref="/api/utils/bignumber/">BigNumber</a> ></span><divclass="anchors"><aclass="self"href="#signer-getgasprice"></a><aclass="source"href="https://github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages/abstract-signer/src.ts/index.ts#L110">source</a></div></div><divclass="body"><p>Returns the current gas price.</p></div></div>
<aname="signer-gettransactioncount"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">signer</span> . <spanclass="method">getTransactionCount</span> ( [ <spanclass="param">blockTag</span> = <spanclass="default-value">"</span><spanclass="param">latest</span>" ] ) <spanclass="arrow">⇒</span><spanclass="returns">Promise< number ></span><divclass="anchors"><aclass="self"href="#signer-gettransactioncount"></a><aclass="source"href="https://github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages/abstract-signer/src.ts/index.ts#L74">source</a></div></div><divclass="body"><p>Returns the number of transactions this account has ever sent. This is the value required to be included in transactions as the <codeclass="inline">nonce</code>.</p></div></div>
<aname="signer-call"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">signer</span> . <spanclass="method">call</span> ( <spanclass="param">transactionRequest</span> ) <spanclass="arrow">⇒</span><spanclass="returns">Promise< string< <ahref="/api/utils/bytes/#datahexstring">DataHexstring</a> > ></span><divclass="anchors"><aclass="self"href="#signer-call"></a><aclass="source"href="https://github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages/abstract-signer/src.ts/index.ts#L88">source</a></div></div><divclass="body"><p>Returns the result of calling using the <i>transactionRequest</i>, with this account address being used as the <codeclass="inline">from</code> field.</p></div></div>
<aname="signer-estimategas"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">signer</span> . <spanclass="method">estimateGas</span> ( <spanclass="param">transactionRequest</span> ) <spanclass="arrow">⇒</span><spanclass="returns">Promise< <ahref="/api/utils/bignumber/">BigNumber</a> ></span><divclass="anchors"><aclass="self"href="#signer-estimategas"></a><aclass="source"href="https://github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages/abstract-signer/src.ts/index.ts#L80">source</a></div></div><divclass="body"><p>Returns the result of estimating the cost to send the <i>transactionRequest</i>, with this account address being used as the <codeclass="inline">from</code> field.</p></div></div>
<aname="signer-resolvename"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">signer</span> . <spanclass="method">resolveName</span> ( <spanclass="param">ensName</span> ) <spanclass="arrow">⇒</span><spanclass="returns">Promise< string< <ahref="/api/utils/address/#address">Address</a> > ></span><divclass="anchors"><aclass="self"href="#signer-resolvename"></a><aclass="source"href="https://github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages/abstract-signer/src.ts/index.ts#L115">source</a></div></div><divclass="body"><p>Returns the address associated with the <i>ensName</i>.</p></div></div>
<aname="signer-signmessage"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">signer</span> . <spanclass="method">signMessage</span> ( <spanclass="param">message</span> ) <spanclass="arrow">⇒</span><spanclass="returns">Promise< string< <ahref="/api/utils/bytes/#signature-flat">FlatSignature</a> > ></span><divclass="anchors"><aclass="self"href="#signer-signmessage"></a></div></div><divclass="body"><p>This returns a Promise which resolves to the <ahref="/api/utils/bytes/#signature-flat">Flat-Format Signature</a> of <i>message</i>.</p><p>Sub-classes <b>must</b> implement this, however they may throw if signing a message is not supported.</p></div></div>
<divclass="definition container-box note show-anchors"><divclass="term">Note</div><divclass="body"><p>If <i>message</i> is a string, it is <b>treated as a string</b> and converted to its representation in UTF8 bytes.</p><p><b>If and only if</b> a message is a <ahref="/api/utils/bytes/#bytes">Bytes</a> will it be treated as binary data.</p><p>For example, the string <codeclass="inline">"0x1234"</code> is 6 characters long (and in this case 6 bytes long). This is <b>not</b> equivalent to the array <codeclass="inline">[ 0x12, 0x34 ]</code>, which is 2 bytes long.</p><p>A common case is to sign a hash. In this case, if the hash is a string, it <b>must</b> be converted to an array first, using the <ahref="/api/utils/bytes/#utils-arrayify">arrayify</a> utility function.</p></div></div>
<aname="signer-signtransaction"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">signer</span> . <spanclass="method">signTransaction</span> ( <spanclass="param">transactionRequest</span> ) <spanclass="arrow">⇒</span><spanclass="returns">Promise< string< <ahref="/api/utils/bytes/#datahexstring">DataHexstring</a> > ></span><divclass="anchors"><aclass="self"href="#signer-signtransaction"></a></div></div><divclass="body"><p>Returns a Promise which resolves to the signed transaction of the <i>transactionRequest</i>. This method does not populate any missing fields.</p><p>Sub-classes <b>must</b> implement this, however they may throw if signing a transaction is not supported.</p></div></div>
<aname="signer-sendtransaction"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">signer</span> . <spanclass="method">sendTransaction</span> ( <spanclass="param">transactionRequest</span> ) <spanclass="arrow">⇒</span><spanclass="returns">Promise< <ahref="/api/providers/types/#provider-transactionresponse">TransactionResponse</a> ></span><divclass="anchors"><aclass="self"href="#signer-sendtransaction"></a></div></div><divclass="body"><p>This method populates the transactionRequest with missing fields, using <ahref="/api/signer/#signer-populatetransaction">populateTransaction</a> and returns a Promise which resolves to the transaction.</p><p>Sub-classes <b>must</b> implement this, however they may throw if signing a transaction is not supported.</p></div></div>
<p>It is very important that all important properties of a <b>Signer</b> are <b>immutable</b>. Since Ethereum is very asynchronous and deals with critical data (such as ether and other potentially valuable crypto assets), keeping properties such as the <i>provider</i> and <i>address</i> static helps prevent serious issues.</p><p>A sub-class <b>must</b> call <codeclass="inline">super()</code>.</p>
<aname="signer-checktransaction"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">signer</span> . <spanclass="method">checkTransaction</span> ( <spanclass="param">transactionRequest</span> ) <spanclass="arrow">⇒</span><spanclass="returns"><ahref="/api/providers/types/#provider-transactionrequest">TransactionRequest</a></span><divclass="anchors"><aclass="self"href="#signer-checktransaction"></a><aclass="source"href="https://github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages/abstract-signer/src.ts/index.ts#L132">source</a></div></div><divclass="body"><p>This is generally not required to be overridden, but may needed to provide custom behaviour in sub-classes.</p><p>This should return a <b>copy</b> of the <i>transactionRequest</i>, with any properties needed by <codeclass="inline">call</code>, <codeclass="inline">estimateGas</code> and <codeclass="inline">populateTransaction</code> (which is used by sendTransaction). It should also throw an error if any unknown key is specified.</p><p>The default implementation checks only valid <ahref="/api/providers/types/#provider-transactionrequest">TransactionRequest</a> properties exist and adds <codeclass="inline">from</code> to the transaction if it does not exist, or verifies it is equal to the Signer's address if it does exist.</p></div></div>
<aname="signer-populatetransaction"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">signer</span> . <spanclass="method">populateTransaction</span> ( <spanclass="param">transactionRequest</span> ) <spanclass="arrow">⇒</span><spanclass="returns">Promise< <ahref="/api/providers/types/#provider-transactionrequest">TransactionRequest</a> ></span><divclass="anchors"><aclass="self"href="#signer-populatetransaction"></a><aclass="source"href="https://github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages/abstract-signer/src.ts/index.ts#L163">source</a></div></div><divclass="body"><p>This is generally not required to be overridden, but may needed to provide custom behaviour in sub-classes.</p><p>This should return a <b>copy</b> of <i>transactionRequest</i>, follow the same procedure as <codeclass="inline">checkTransaction</code> and fill in any properties required for sending a transaction. The result should have all promises resolved; if needed the <ahref="/api/utils/properties/#utils-resolveproperties">resolveProperties</a> utility function can be used for this.</p><p>The default implementation calls <codeclass="inline">checkTransaction</code> and resolves to if it is an ENS name, adds <codeclass="inline">gasPrice</code>, <codeclass="inline">nonce</code>, <codeclass="inline">gasLimit</code> and <codeclass="inline">chainId</code> based on the related operations on Signer.</p></div></div>
<aname="wallet"></a><aname="wallet"></a><h2class="show-anchors"><div>Wallet<spanclass="inherits"> inherits <ahref="/api/signer/#externally-owned-account">ExternallyOwnedAccount</a> and <ahref="/api/signer/#signer">Signer</a></span><divclass="anchors"><aclass="self"href="#wallet"></a><aclass="source"href="https://github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages/wallet/src.ts/index.ts#L30">source</a></div></div></h2>
<p>The Wallet class inherits <ahref="/api/signer/#signer">Signer</a> and can sign transactions and messages using a private key as a standard Externally Owned Account (EOA).</p>
<aname="wallet-constructor"></a><divclass="property show-anchors"><divclass="signature"><spanclass="modifier">new </span><spanclass="path">ethers</span> . <spanclass="method">Wallet</span> ( <spanclass="param">privateKey</span> [ , <spanclass="param">provider</span> ] ) <divclass="anchors"><aclass="self"href="#wallet-constructor"></a><aclass="source"href="https://github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages/wallet/src.ts/index.ts#L40">source</a></div></div><divclass="body"><p>Create a new Wallet instance for <i>privateKey</i> and optionally connected to the <i>provider</i>.</p></div></div>
<aname="wallet-createrandom"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">ethers</span> . <spanclass="path">Wallet</span> . <spanclass="method">createRandom</span> ( [ <spanclass="param">options</span> = <spanclass="default-value">{</span>} ] ) <spanclass="arrow">⇒</span><spanclass="returns"><ahref="/api/signer/#wallet">Wallet</a></span><divclass="anchors"><aclass="self"href="#wallet-createrandom"></a><aclass="source"href="https://github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages/wallet/src.ts/index.ts#L143">source</a></div></div><divclass="body"><p>Returns a new Wallet with a random private key, generated from cryptographically secure entropy sources. If the current environment does not have a secure entropy source, an error is thrown.</p></div></div>
<aname="wallet-fromencryptedjson"></a><divclass="property show-anchors"><divclass="signature"><spanclass="path">ethers</span> . <spanclass="path">Wallet</span> . <spanclass="method">fromEncryptedJson</span> ( <spanclass="param">json</span> , <spanclass="param">password</span> [ , <spanclass="param">progress</span> ] ) <spanclass="arrow">⇒</span><spanclass="returns">Promise< <ahref="/api/signer/#wallet">Wallet</a> ></span><divclass="anchors"><aclass="self"href="#wallet-fromencryptedjson"></a><aclass="source"href="https://github.com/ethers-io/ethers.js/blob/ethers-v5-beta/packages/wallet/src.ts/index.ts#L156">source</a></div></div><divclass="body"><p>Create an instance from an encrypted JSON wallet. If <i>progress</i> is provided it will be called during decryption with a value between 0 and 1 indicating the progress towards completion.</p></div></div>
<divclass="property show-anchors"><divclass="signature"><spanclass="path">ethers</span> . <spanclass="path">Wallet</span> . <spanclass="method">fromMnemonic</span> ( <spanclass="param">mnemonic</span> [ , <spanclass="param">path</span> , [ <spanclass="param">wordlist</span> ] ] ) <spanclass="arrow">⇒</span><spanclass="returns"><ahref="/api/signer/#wallet">Wallet</a></span><divclass="anchors"></div></div><divclass="body"><p>Create an instance from a mnemonic phrase.</p><p>If path is not specified, the Ethereum default path is used (i.e. m/44'/60'/0'/0/0).</p><p>If wordlist is not specified, the English Wordlist is used.</p></div></div>
<divclass="property show-anchors"><divclass="signature"><spanclass="path">wallet</span> . <spanclass="method">address</span><spanclass="arrow">⇒</span><spanclass="returns">string< <ahref="/api/utils/address/#address">Address</a> ></span><divclass="anchors"></div></div><divclass="body"><p>The address for the account this Wallet represents.</p></div></div>
<divclass="property show-anchors"><divclass="signature"><spanclass="path">wallet</span> . <spanclass="method">provider</span><spanclass="arrow">⇒</span><spanclass="returns"><ahref="/api/providers/provider/">Provider</a></span><divclass="anchors"></div></div><divclass="body"><p>The provider this wallet is connected to, which will ge used for any <ahref="/api/signer/#signer-blockchain">Blockchain Methods</a> methods. This can be null.</p></div></div>
<divclass="definition container-box note show-anchors"><divclass="term">Note</div><divclass="body"><p>A <b>Wallet</b> instance is immuatable, so if you wish to change the Provider, you may use the <ahref="/api/signer/#signer-connect">connect</a> method to create a new instance connected to the desired provider.</p></div></div>
<divclass="property show-anchors"><divclass="signature"><spanclass="path">wallet</span> . <spanclass="method">publicKey</span><spanclass="arrow">⇒</span><spanclass="returns">string< <ahref="/api/utils/bytes/#datahexstring">DataHexstring</a>< 65 > ></span><divclass="anchors"></div></div><divclass="body"><p>The uncompressed public key for this Wallet represents.</p></div></div>
<p>A <b>VoidSigner</b> is a simple Signer which cannot sign.</p><p>It is useful as a read-only signer, when an API requires a Signer as a parameter, but it is known only read-only operations will be carried.</p><p>For example, the <codeclass="inline">call</code> operation will automatically have the provided address passed along during the execution.</p>
<divclass="property show-anchors"><divclass="signature"><spanclass="modifier">new </span><spanclass="path">ethers</span> . <spanclass="method">VoidSigner</span> ( <spanclass="param">address</span> ) <spanclass="arrow">⇒</span><spanclass="returns"><ahref="/api/signer/#void-signer">VoidSigner</a></span><divclass="anchors"></div></div><divclass="body"><p>Create a new instance of a <b>VoidSigner</b> for <i>address</i>.</p></div></div>
<divclass="property show-anchors"><divclass="signature"><spanclass="path">voidSigner</span> . <spanclass="method">address</span><spanclass="arrow">⇒</span><spanclass="returns">string< <ahref="/api/utils/address/#address">Address</a> ></span><divclass="anchors"></div></div><divclass="body"><p>The address of this <b>VoidSigner</b>.</p></div></div>
<divclass="property show-anchors"><divclass="signature"><spanclass="path">eoa</span> . <spanclass="method">address</span><spanclass="arrow">⇒</span><spanclass="returns">string< <ahref="/api/utils/address/#address">Address</a> ></span><divclass="anchors"></div></div><divclass="body"><p>The <ahref="/api/utils/address/#address">Address</a> of this EOA.</p></div></div>
<divclass="property show-anchors"><divclass="signature"><spanclass="path">eoa</span> . <spanclass="method">privateKey</span><spanclass="arrow">⇒</span><spanclass="returns">string< <ahref="/api/utils/bytes/#datahexstring">DataHexstring</a>< 32 > ></span><divclass="anchors"></div></div><divclass="body"><p>The privateKey of this EOA</p></div></div>
<divclass="property show-anchors"><divclass="signature"><spanclass="path">eoa</span> . <spanclass="method">mnemonic</span><spanclass="arrow">⇒</span><spanclass="returns">string</span><divclass="anchors"></div></div><divclass="body"><p><i>Optional</i>. The account HD mnemonic, if it has one and can be determined.</p></div></div>
<divclass="property show-anchors"><divclass="signature"><spanclass="path">eoa</span> . <spanclass="method">path</span><spanclass="arrow">⇒</span><spanclass="returns">string</span><divclass="anchors"></div></div><divclass="body"><p><i>Optional</i>. The account HD path, if it has one and can be determined.</p></div></div><divclass="footer"><divclass="nav previous"><ahref="/api/contract/"><spanclass="arrow">←</span>Contracts</a></div><divclass="nav next"><ahref="/api/providers/">Providers<spanclass="arrow">→</span></a></div></div><divclass="copyright">The content of this site is licensed under the <ahref="https://choosealicense.com/licenses/cc-by-4.0/">Creative Commons Attribution 4.0 International License</a>.</div></div><scriptsrc="/script.js"type="text/javascript"></script></body></html><!-- ContentHash:f8ad55e1a73a42b6c441ffc866de012dd177e039cf868ef8e53fd2cfd9ab35df -->