# getTokenAccountsByDelegate

Returns all SPL Token accounts by approved Delegate.

This method will use `30` [Compute Units](https://docs.validationcloud.io/v1/about/billing).

***

{% hint style="warning" %}
`getTokenAccountsByDelegate` for Solana is limited to 10 requests per second. If you have higher rate limit needs, [contact us](https://www.validationcloud.io/contact).
{% endhint %}

## **Parameters**

* `pubkey` string. The Pubkey of account delegate to query encoded as base-58 string.
* `object` array. The JSON object with the following fields:
  * `mint` string. The Pubkey of the specific token Mint to limit accounts to, as base-58 encoded string.
  * `programId` string. The Pubkey of the Token program ID that owns the accounts, as base-58 encoded string.
* `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.
* `encoding` string. The encoding format for account data. It can be one of base58 (slow, base64, base64+zstd or jsonParsed.
* `dataSlice` string The returned account data using the provided offset: 'usize' and length: 'usize' fields; only available for base58, base64, or base64+zstd encodings.
* `minContextSlot` integer The minimum slot at which the request can be evaluated.

## Returns

`result` An object with the following fields:

* `context` The information about the current state of the program.
  * `apiVersion` The version of the Solana RPC API to use.
  * `slot` An integer representing the slot for which to retrieve the fee calculator.
* `value` A JSON object with the following fields:
  * `account` An address on the Solana blockchain that is used to store assets.
    * `data` A string containing the encoded data to be passed to the instruction.
      * `program` The program that manages the token.
      * `parsed` An array of parsed instructions that were executed in the block's transactions.
        * `info` An array of information objects that provide additional details about the transactions in the block.
          * `tokenAmount` The balance of the token in the token account.
            * `amount` The raw total token supply without decimals, a string representation of a u64 integer.
            * `decimals` An integer value representing the number of decimal places used by the token.
            * `uiAmount` The total token supply using mint-prescribed decimals (DEPRECATED).
            * `uiAmountString` The total token supply as a string using mint-prescribed decimals.
          * `delegate` The public address of the delegate from which the account tokens are to be retrieved encoded as base-58 string.
          * `delegateAmount` The configuration object with the following fields:
            * `amount` The raw total token supply without decimals, a string representation of a u64 integer.
            * `decimals` An integer value representing the number of decimal places used by the token.
            * `uiAmount` The total token supply using mint-prescribed decimals (DEPRECATED).
            * `uiAmountString` The total token supply as a string using mint-prescribed decimals.
          * `isNative` A boolean value indicating whether the token is a native token of the Solana blockchain.
          * `mint` Provides information about the creation of new tokens.
          * `owner` The base-58 encoded Pubkey of the program this account has been assigned to.
          * `state` The current state of the token account.
        * `type` The type of the block. It can be used to differentiate between regular blocks and special blocks such as snapshot or transaction confirmation blocks.
      * `space` The amount of storage space required to store the token account.
    * `pubkey` The public key associated with the token account.

```bash
// Result
{
  "jsonrpc": "2.0",
  "result": {
    "context": {
      "slot": 1114
    },
    "value": [
      {
        "account": {
          "data": {
            "program": "spl-token",
            "parsed": {
              "info": {
                "tokenAmount": {
                  "amount": "1",
                  "decimals": 1,
                  "uiAmount": 0.1,
                  "uiAmountString": "0.1"
                },
                "delegate": "4Nd1mBQtrMJVYVfKf2PJy9NZUZdTAsp7D4xWLs4gDB4T",
                "delegatedAmount": {
                  "amount": "1",
                  "decimals": 1,
                  "uiAmount": 0.1,
                  "uiAmountString": "0.1"
                },
                "state": "initialized",
                "isNative": false,
                "mint": "3wyAj7Rt1TWVPZVteFJPLa26JmLvdb1CAKEFZm3NY75E",
                "owner": "CnPoSPKXu7wJqxe59Fs72tkBeALovhsCxYeFwPCQH9TD"
              },
              "type": "account"
            },
            "space": 165
          },
          "executable": false,
          "lamports": 1726080,
          "owner": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
          "rentEpoch": 4,
          "space": 165
        },
        "pubkey": "28YTZEwqtMHWrhWcvv34se7pjS7wctgqzCPB3gReCFKp"
      }
    ]
  },
  "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": "getTokenAccountsByDelegate","params": ["4Nd1mBQtrMJVYVfKf2PJy9NZUZdTAsp7D4xWLs4gDB4T",{"programId": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"},{"encoding": "jsonParsed"}]}'
    
</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": "getTokenAccountsByDelegate","params": ["4Nd1mBQtrMJVYVfKf2PJy9NZUZdTAsp7D4xWLs4gDB4T",{"programId": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"},{"encoding": "jsonParsed"}]}'
    
```

{% endtab %}
{% endtabs %}
