# Get Stakes For Validator

You can fetch all stakes for a particular validator quite easily. This code snippet show how you can achieve this. You can run this in <mark style="color:yellow;">replit</mark> to see it in action.

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

```javascript

const SHYFT_KEY = "YOUR-KEY"

async function fetchGraphQL(query, name, variables) {
  const result = await fetch(
    `https://programs.shyft.to/v0/graphql/?api_key=${SHYFT_KEY}`,
    {
      method: "POST",
      body: JSON.stringify({
        query: query,
        variables: variables,
        operationName: name
      })
    }
  );

  return await result.json();
}

async function fetchStakes(validator:string) {

const query = `
  query StakesQuery($_contains: jsonb = "") {
    Stake_Program_Stake(where: {stake: {_contains: $_contains}}) {
      meta
      stake
      _lamports
      pubkey
    }
  }
`;

  const variables = {
    _contains: {
      delegation: {
        voter: validator
      }
    }
  }

  const { errors, data } = await fetchGraphQL(
    query,
    "StakesQuery",
    variables
  );

  if (errors) {
    // handle those errors like a pro
    console.error(errors);
  }

  // do something great with this precious data
  console.dir(data, {depth:null});
}

fetchStakes("FiijvR2ibXEHaFqB127CxrL3vSj19K2Kx1jf2RbK4BWS");
```

{% endtab %}

{% tab title="Response" %}

```json
{
  "data": {
    "Stake_Program_Stake": [
      {
        "meta": {
          "lockup": {
            "epoch": "0",
            "custodian": "11111111111111111111111111111111",
            "unix_timestamp": "0"
          },
          "authorized": {
            "staker": "86MSNjPmqs8myPNCtVXfGfugRdHms8rYGZyQQgpDa4rJ",
            "withdrawer": "86MSNjPmqs8myPNCtVXfGfugRdHms8rYGZyQQgpDa4rJ"
          },
          "rentExemptReserve": "2282880"
        },
        "stake": {
          "delegation": {
            "stake": "47717120",
            "voter": "FiijvR2ibXEHaFqB127CxrL3vSj19K2Kx1jf2RbK4BWS",
            "activationEpoch": "595",
            "deactivationEpoch": "18446744073709551615",
            "warmupCooldownRate": 0.25
          },
          "creditsObserved": "41711266"
        },
        "_lamports": 50000000
      },
      
      //More responses in array
      
    ]
  }
}
```

{% endtab %}
{% endtabs %}
