> ## Documentation Index
> Fetch the complete documentation index at: https://yieldxyz.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# DOT Validator Staking

> Direct validator nomination on Polkadot

Direct validator nomination on Polkadot with higher minimums and manual payout claims.

***

## What this yield is

* **Asset**: DOT (native Polkadot token)
* **Mechanism**: Nominate up to 16 validators
* **Rewards**: Era-based rewards (\~24 hours per era)
* **Unbonding**: 28-day unbonding period
* **Minimum**: \~250 DOT (check yield metadata for current minimum)

***

## Required inputs

| Argument             | Required | Description                                   |
| -------------------- | -------- | --------------------------------------------- |
| `amount`             | Yes      | Amount of DOT to stake                        |
| `validatorAddresses` | Yes      | Array of validator stash addresses (up to 16) |

***

## Actions & lifecycle

<Tabs>
  <Tab title="Enter">
    * Bond DOT transaction
    * Nominate validators transaction
    * Active after era boundary
    * Rewards begin accruing
  </Tab>

  <Tab title="Exit">
    * Unbond DOT (initiates 28-day period)
    * No rewards during unbonding
    * Withdraw after unbonding completes
  </Tab>

  <Tab title="Manage">
    * Claim payouts (required each era)
    * Change nominations
    * Bond more DOT
    * Rebond (cancel unbonding)
  </Tab>
</Tabs>

***

## Example flow

<CodeGroup>
  ```bash Get yield metadata theme={null}
  curl --request GET \
    --url https://api.yield.xyz/v1/yields/polkadot-dot-validator-staking \
    --header 'accept: application/json' \
    --header 'x-api-key: <API_KEY>'
  ```

  ```bash Get validators theme={null}
  curl --request GET \
    --url https://api.yield.xyz/v1/yields/polkadot-dot-validator-staking/validators \
    --header 'accept: application/json' \
    --header 'x-api-key: <API_KEY>'
  ```

  ```bash Enter staking theme={null}
  curl --request POST \
    --url https://api.yield.xyz/v1/actions/enter \
    --header 'accept: application/json' \
    --header 'content-type: application/json' \
    --header 'x-api-key: <API_KEY>' \
    --data '{
      "yieldId": "polkadot-dot-validator-staking",
      "address": "1YourPolkadotAddress",
      "arguments": {
        "amount": "250",
        "validatorAddresses": ["1Validator1", "1Validator2"]
      }
    }'
  ```
</CodeGroup>

***

## Pending actions

The following pending actions are available for DOT validator staking:

| Action          | Description                                       |
| --------------- | ------------------------------------------------- |
| `WITHDRAW`      | After 28-day unbonding, withdraw unstaked balance |
| `REVOKE`        | Stop nominating validators (DOT stays locked)     |
| `UNLOCK_LOCKED` | Unlock DOT that failed to nominate or was revoked |
| `VOTE`          | Change nominated validators without unstaking     |
| `REBOND`        | Cancel unbonding and return to staking            |
| `STAKE`         | Bond more DOT to existing nominations             |

***

## Operational notes

<AccordionGroup>
  <Accordion title="28-day unbonding">
    Cannot be cancelled once initiated. Use `REBOND` pending action if you need to reverse an unbonding.
  </Accordion>

  <Accordion title="Dynamic minimum stake">
    The minimum stake requirement varies from era to era (currently \~250 DOT). Once you have an existing staked position meeting the minimum, subsequent stakes can be smaller.
  </Accordion>

  <Accordion title="Validator over-subscription">
    A validator can be over-subscribed when it has more than 512 active nominators. Only the top 512 nominators by delegated DOT receive staking rewards.
  </Accordion>

  <Accordion title="Nomination limits">
    You can nominate up to 16 validators. Rewards begin at the end of the following era (within 24-48 hours if your validator is in the active set).
  </Accordion>
</AccordionGroup>

***

## Preferred validators

| Validator      | Address                                            |
| -------------- | -------------------------------------------------- |
| Luganodes      | `1vTaLKEyj2Wn9xEkUGixBkVXJAd4pzDgXzz9CuVjhVqhHRQ`  |
| RockX          | `14N5GT7YTaDBSsLpfxxtCxNdYfgDofGj5wQSfqC1URKHdT8C` |
| RockX          | `14DXNLsWfpf1RZ3eZSemHaitFh7WM6ZwswJUVLxqQhRvc2ui` |
| Coinbase Cloud | `16SSTPeD2UW3hhnuRBS6HjpxhzRFBrRf2Wupxf1iJgMkhBSD` |
| P2P            | `134Bw4gHcAaHBYx6JVK91b1CeC9yWseVdZqyttpaN5zBHn43` |

***

## See also

<CardGroup cols={2}>
  <Card title="Pool Staking" icon="users" href="/documentation/coverage/supported-yields/staking/non-evm/polkadot/pool">
    Lower minimums, simpler management
  </Card>

  <Card title="Polkadot Overview" icon="circle-nodes" href="/documentation/coverage/supported-yields/staking/non-evm/polkadot">
    All DOT staking
  </Card>
</CardGroup>
