# getVoteAccounts

Returns the account info and associated stake for all the voting accounts in the current bank.

This method will use `30` [Compute Units](/v1/about/billing.md).

***

## **Parameters**

* `object` *optional.* Configuration object containing the following fields:
  * `commitment` string. The level of commitment required for the query. The options include:
    * `finalized` string. The node will query the most recent block confirmed by the supermajority of the cluster as having reached maximum lockout, meaning the cluster has recognized this block as finalized.
    * `confirmed` string. The node will query the most recent block that has been voted on by the supermajority of the cluster.
    * `processed` string. The node will query its most recent block. Note that the block may not be complete.
  * `votePubkey` string (optional). Only return results for this validator vote address (base-58 encoded).
  * `keepUnstakedDelinquents` boolean. The boolean value that determines whether or not to filter out delinquent validators with no stake.
  * `delinquentSlotDistance` u64. Specify the number of slots behind the tip that a validator must fall to be considered delinquent. The parameter is passed as an integer and it's not recomended to specify this argument.

## Returns

`result` A JSON object of current and delinquent accounts, each containing an array of JSON objects with the following fields:

* `current` The current account with the following fields:
  * `activatedStake` The stake, in lamports, delegated to this vote account and active in this epoch. Represented as an u64 integer.
  * `commission` The percentage (0-100) of rewards payout owed to the vote account.
  * `epochCredits` The latest history of earned credits for up to five epochs, as an array of arrays containing: epoch, credits, previousCredits.
  * `epochVoteAccount` Boolean value, whether the vote account is staked for this epoch.
  * `lastVote` Most recent slot voted on by this vote account.
  * `nodePubkey` The validator identity as base-58 encoded string.
  * `rootSlot` The current root slot for this vote account.
  * `votePubkey` The vote account address as base-58 encoded string.
* `delinquent` The delinquent account with the following fields:
  * `activatedStake` The stake, in lamports, delegated to this vote account and active in this epoch. Represented as an u64 integer.
  * `commission` The percentage (0-100) of rewards payout owed to the vote account.
  * `epochCredits` The latest history of earned credits for up to five epochs, as an array of arrays containing: epoch, credits, previousCredits.
  * `epochVoteAccount` Boolean value, whether the vote account is staked for this epoch.
  * `lastVote` Most recent slot voted on by this vote account.
  * `nodePubkey` The validator identity as base-58 encoded string.
  * `rootSlot` The current root slot for this vote account.
  * `votePubkey` The vote account address as base-58 encoded string.

```bash
// Result
{
  "jsonrpc": "2.0",
  "result": {
    "current": [
      {
        "commission": 0,
        "epochVoteAccount": true,
        "epochCredits": [
          [1, 64, 0],
          [2, 192, 64]
        ],
        "nodePubkey": "B97CCUW3AEZFGy6uUg6zUdnNYvnVq5VG8PUtb2HayTDD",
        "lastVote": 147,
        "activatedStake": 42,
        "votePubkey": "3ZT31jkAGhUaw8jsy4bTknwBMP8i4Eueh52By4zXcsVw"
      }
    ],
    "delinquent": []
  },
  "id": 1
}
```

{% tabs %}
{% tab title="mainnet" %}

<pre class="language-bash"><code class="lang-bash"><strong>curl https://mainnet.solana.validationcloud.io/v1/&#x3C;YOUR_API_KEY_HERE> \
</strong>    -X POST \
    -H "Content-Type: application/json" \
    -d '{"jsonrpc":"2.0","id":1, "method":"getVoteAccounts"}'
    
</code></pre>

{% endtab %}

{% tab title="devnet" %}

```bash
curl https://devnet.solana.validationcloud.io/v1/<YOUR_API_KEY_HERE> \
    -X POST \
    -H "Content-Type: application/json" \
    -d '{"jsonrpc":"2.0","id":1, "method":"getVoteAccounts"}'
    
```

{% endtab %}
{% endtabs %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.validationcloud.io/v1/solana/http-methods/getvoteaccounts.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
