Skip to content
On this page

Retrieve Validators List

[GET]/validators

EndpointDescription
https://eth-api.everstake.one/api/v1/eth2_staking/validatorsMethod which gives an opportunity to retrieve validators related to a client.

Request Parameters

ParameterTypeDescription
withdrawal_addressstringEthereum address for withdrawal purposes.
page[size]integerSets the number of entries to display per page
page[number]integerSpecifies which page of results to display
status_historybooleanIf provided, includes status change history for each validator
statusstringValid inputs: funding_requested, deposited, pending_initialized, pending_queued, active_ongoing, active_exiting, active_slashed, exited_unslashed, exited_slashed, withdrawal_possible, withdrawal_done, provisioned

Request Example

plaintext
https://eth-api.everstake.one/api/v1/eth2_staking/validators?
page%5Bsize%5D=20&page%5Bnumber%5D=1

Request cURL

bash
curl -X 'GET' \
'https://eth-api.everstake.one/api/v1/eth2_staking/validators?
page%5Bsize%5D=20&page%5Bnumber%5D=1' \
-H 'accept: application/json'

Response Details

ParameterTypeDescription
dataarrayContains a list of objects, where each object signifies a unique validator. Every validator object contains an id (a unique identifier), type (indicating the type of position), and attributes
idintegerUnique Validator’s ID
typestringThe type of object, which is "validator" for this endpoint.
statusstringValid inputs: funding_requested, deposited, pending_initialized, pending_queued, active_ongoing, active_exiting, active_slashed, exited_unslashed, exited_slashed, withdrawal_possible, withdrawal_done, provisioned
attributesobjectContains attributes such as name, public key, withdrawal credentials, amount of ETH, signature, deposit data, deposit message, fork version, network name (testnet/mainnet), current status, deposit CLI version, timestamp for last status sync, Everstake’s base64 signature, status history, fee recipient address, timestamps for on-demand exit request/approval/submission, Staking API flow ID for exit request, pre-signed exit transaction
relationshipsobjectPosition details
linksobjectPagination links (self, current, next, last, previous)
includedarrayContains unique ID, position type, attributes like unique ID, name, Ethereum withdrawal address, amount of staked ETH, count of validators, timestamps for creation and update

Response Example

json
{
  "data": [
    {
      "id": "31",
      "type": "validator",
      "attributes": {
        "id": 31,
        "pubkey": "d1ef8d468ef53d82368d2026e321ab2c6d44f44c33b7b9f22369bf6dcf37fb0208f82dd6b485325ce1bbf5aec7ad45bb",
        "name": "string",
        "withdrawal_credentials": "010000000000000000000000fc438e6cc4b230eb5bfaae1337c3f5da2b9140f1",
        "amount": 32000000000,
        "signature": "aab7e3b41689fced6c3437a6bc5caf471ed319b94ad2642c47c5f641d5e3a046432171d47d48cd7a3e8a323939d4976c1315ad4dae134c421214673ddff9105ef1bb7f79c1babc6cd9c31428d5e44472164e9c9fccfd10fb9768c0855b194f49",
        "deposit_data_root": "b2f5083221d6b61f2237af155c07c746f6a75c7d24dfe418106efdf87e9b9422",
        "deposit_message_root": "026cbefa013e03a3d81592b7a5f6205773c12a6f7674529e497e9a4eb2df2d44",
        "deposit_cli_version": "1.2.0",
        "fork_version": "00000000",
        "eth2_network_name": "goerli",
        "status": "funding_requested",
        "status_synced_at": "2023-01-14T16:00:14.459Z",
        "fee_recipient_address": "0x781462762B706AA7c1DA71FBA1a545724928b81f",
        "presigned_exit_transaction": "-----BEGIN PGP MESSAGE-----\nVersion: 2023-03-03 (159679)\nComment: 0xf27394bf199c58623206923c26fd186fd1e91302d09f22aaf40c053d8725364b05199bebe91d3a6737aebe8cc5a1b202\n\nwV7DhAgK6qzUbbYSAQdA069SH+2v3hkzd/REedn8/1k2eVK0GGV4r4lzGf5Jg3Ew\n/cFSwaXhaBgfinFXMCmYJtYZF06oZcH4XzZm3IPeXktS6wfScogE+W/eapX0nHlT\n0sF6Bb/uJAExeOtRurwgqDkc/D+g+BioSsg2XQ6O9a6SUj7bb2plX2E9JPhSMhPY\nzLXA4cB8F9IjpSv/Ofhlbid9+cWnZLDHrU69Q0nCcTwZTQZbOoOi7Mj04pKEHux1\nvaalZ4O8N5ptJwWygB7NMxZAkosruPURQ4HS2EaFjr5Fjle6+pfYN1y39hOvsoQe\nT3E1/4DbfmFbDNjBqwjAJLkmEBu18AKgxJtEjQaCoeF1Q/WTIA8JBX3yy14AZI3q\noYZ5gd5QdVo24aoYrm75rQO0GfZqvU5B/kKezrA+eFngO79bgppyjIacItNaHEaD\nkQfO+6SE8A0mQXxQr0IqJiiNhrG8tPhDcLZcvKRXPoGIkQcFNCPiOehFsB6drhP6\n7v/P81fj63df8fk6FBkiDHIdros8xj9PGHbYNrCNsw==\n=DiMO\n-----END PGP MESSAGE-----"
      },
      "status_history": [
        {
          "status": "funding_requested",
          "changed_at": "2023-01-14T16:00:14.459Z"
        }
      ],
      "relationships": {
        "position": {
          "data": {
            "id": "13",
            "type": "position"
          }
        }
      }
    }
  ],
  "links": {
    "self": "string",
    "current": "string"
  },
  "included": [
    {
      "id": "77",
      "type": "position",
      "attributes": {
        "id": 77,
        "eth1_withdrawal_address": "0xE40F80618324C814cD444434670a44ba4583aE38",
        "staked_amount": 128,
        "validators_count": 4,
        "created_at": "2022-03-21T13:30:54.214Z",
        "updated_at": "2022-10-17T14:40:10.618Z",
        "name": null
      }
    }
  ]
}

Additional notes

The pre-signed exit transaction is encrypted with your public encryption key stored with Everstake.

Contact Everstake for storing a PGP or RSA key.

The pre-signed exit transactions are refreshed on a daily basis for active validators with a stored encryption key.

This is shown with the query parameter presigned_exit_transaction = true.