Skip to main content

Validator API - Ethereum


API AuthenticationClick to view API Authentication details
API calls require authentication with API key via Authorization request header or URL property. Calls are made to one of the Ethereum Validator API endpoints found in your app's dashboard.

For example: https://hubble.figment.io/api/v1/prime

Here's some boilerplate to get you started.
fetch("https://hubble.figment.io/api/v1/prime/eth2_staking/positions", {
method: 'POST', // can also be 'GET', 'PUT' or any appropriate method
headers: {
"Authorization" : "<api_key>",
"Content-Type": "application/json" // if method is 'POST'
},
body: JSON.stringify({
// JSON Payload
})
})

Available Methods

/eth2_staking/positions

Request creation of new staking position with the passed attributes.

Request Body
Example Response
{
"success": true
}
SpecificationView Specification

Parameters

  • external_user_idstring — A customer user ID.
  • external_user_emailstring — A customer email address.
  • withdrawal_addressstring — An Ethereum address.
  • validators_countinteger — A number of validators.
  • eth2_network_namestring — A network name, denoting testnet (goerli) or mainnet (mainnet).

Response

  • successboolean — Returns true if the action was successful, otherwise returns false.

Webhook configuration

Users can be notified via webhook when a new staking position is created. Configure a webhook URL and a webhook API key under "Prime / ETH Staking" in the Prime Dashboard. The configured API key will be sent as an Authorization header.

Note

Validator API webhooks can only be configured from the Prime dashboard.

Webhook response format

{
  "action": "",
  "data": {
    "id": "",
    "withdrawal_address": "",
    "validators_count": 0
  }
}
  • actionstring
  • dataobject
    • idstring
    • withdrawal_addressstring
    • validators_countnumber

/eth2_staking/positions

Returns a list of staking positions.

Request Query
Example Response
{
"data": [
{
"id": "18",
"type": "position",
"attributes": {
"id": 18,
"eth1_withdrawal_address": "0xE40F80618324C814cD444434670a44ba4583aE38",
"staked_amount": 320,
"validators_count": 10,
"created_at": "2021-10-04T14:28:25.497Z",
"updated_at": "2022-10-17T14:40:10.589Z",
"name": null
}
},
{
"id": "20",
"type": "position",
"attributes": {
"id": 20,
"eth1_withdrawal_address": "0xE40F80618324C814cD444434670a44ba4583aE38",
"staked_amount": 320,
"validators_count": 10,
"created_at": "2021-10-04T14:28:25.700Z",
"updated_at": "2022-10-17T14:40:10.578Z",
"name": null
}
},
{
"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
}
}
],
"links": {
"self": "https://hubble.figment.io/api/v1/prime/eth2_staking/positions",
"current": "https://hubble.figment.io/api/v1/prime/eth2_staking/positions?page[number]=1"
}
}
SpecificationView Specification

Parameters

  • withdrawal_addressstring — A withdrawal address (required)
  • page[size]integer — The number of results to display, used for pagination (optional).
  • page[number]integer — The number of pages to display (optional).
  • fundable_positions_onlybooleantrue will display only positions which can be funded (optional).

Response

  • data - array
    • object — Each response object contains the following fields:
      • id — A unique identifier.
      • type — The type of staking position.
      • attributes
        • id — A unique identifier.
        • name — A name.
        • eth1_withdrawal_address — An Ethereum address.
        • staked_amount — The amount of staked ETH.
        • validators_count — A number of validators.
        • created_at — Timestamp.
        • updated_at — Timestamp.
      • linksobject — Pagination links based on page[size] and page[number].

/eth2_staking/positions/{position_id}/validators

Returns a list of validators for a given staking position.

Request Query
Example Response
{
"data": [
{
"id": "31",
"type": "validator",
"attributes": {
"id": 31,
"pubkey": "d1ef8d468ef53d82368d2026e321ab2c6d44f44c33b7b9f22369bf6dcf37fb0208f82dd6b485325ce1bbf5aec7ad45bb",
"name": null,
"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-----"
},
"relationships": {
"position": {
"data": {
"id": "13",
"type": "position"
}
}
}
}
],
"links": {
"self": "https://hubble.figment.io/api/v1/prime/eth2_staking/positions/13/validators",
"current": "https://hubble.figment.io/api/v1/prime/eth2_staking/positions/13/validators?page[number]=1"
}
}
SpecificationView Specification

Parameters

  • position_idstring — A valid staking position ID (required).
  • includestring — Accepted value: position
  • status_history - string — If present, status change history will be included for each validator.
  • status - string — Accepted value(s): funding_requested, deposited, pending_initialized, pending_queued, active_ongoing, active_exiting, active_slashed, exited_unslashed, exited_slashed, withdrawal_possible, withdrawal_done, provisioned.
  • page[size]integer — The number of results to display, used for pagination (optional).
  • page[number]integer — The page to display (optional).

Response

  • data - array
    • object
      • idstring - A unique identifier.
      • typestring — The type of position.
      • attributesobject
        • idnumber — A unique identifier.
        • pubkeystring — A public key.
        • namestring — The position name.
        • withdrawal_credentialsstring — Valid withdrawal credentials.
        • amountinteger — An amount of ETH staked on the validator, in Gwei (1 Gwei is 1e9 wei).
        • signaturestring — A valid signature.
        • deposit_data_rootstring — The deposit data.
        • deposit_message_rootstring — The deposit message.
        • deposit_cli_versionstring — The version of the CLI software used when making the deposit.
        • fork_versionstring — A fork version.
        • eth2_network_namestring — A network name, denoting testnet (goerli) or mainnet (mainnet).
        • status - string — The positions current status.
        • status_synced_atstring — A timestamp indicating when the status was last synced.
        • fee_recipient_addresshex — The fee recipient address, equivalent to the withdrawal_address.
        • presigned_exit_transactionstring — A valid PGP message block. Pre-signed exit transactions are refreshed daily at 6:30AM UTC for active validators which have a stored PGP key. The PGP message in this response contains the dated Version for when the exit transaction was last refreshed. The Comment portion of the PGP message contains the validator's public key and encrypted VoluntaryExit message for that validator. Shown with the query parameter presigned_exit_transaction=true.
      • status_historyarray — Details of the status history. - statusstring — A status. - changed_atstring — A timestamp.
      • relationshipsobject
        • positionobject
          • dataobject
            • idstring — A unique identifier.
            • typestring — The position type.
      • linksobject — Pagination links based on page[size] and page[number].
        • selfstring
        • currentstring
        • nextstring
        • laststring
        • prevstring
      • includedarray
        • object
          • idstring — A unique identifier.
          • typestring — The position type.
          • attributesobject
            • idstring — A unique identifier.
            • namestring — A name.
            • eth1_withdrawal_addressstring — An Ethereum address.
            • staked_amountinteger — An amount of staked ETH.
            • validators_countinteger — A number of validators.
            • created_atstring — A timestamp.
            • updated_atstring — A timestamp.

/eth2_staking/funding_transactions

Returns an unsigned deposit transaction for the requested number of validators. If no validators are available, the raw_transaction will be null.

Request Body
Example Response
{
"data": [
{
"id": "32",
"type": "validator",
"attributes": {
"id": 32,
"pubkey": "d1ef8d468ef53d82368d2026e321ab2c6d44f44c33b7b9f22369bf6dcf37fb0208f82dd6b485325ce1bbf5aec7ad45bb",
"name": null,
"withdrawal_credentials": "010000000000000000000000fc438e6cc4b230eb5bfaae1337c3f5da2b9140f1",
"amount": 32000000000,
"signature": "aab7e3b41689fced6c3437a6bc5caf471ed319b94ad2642c47c5f641d5e3a046432171d47d48cd7a3e8a323939d4976c1315ad4dae134c421214673ddff9105ef1bb7f79c1babc6cd9c31428d5e44472164e9c9fccfd10fb9768c0855b194f49",
"deposit_data_root": "b2f5083221d6b61f2237af155c07c746f6a75c7d24dfe418106efdf87e9b9422",
"deposit_message_root": "026cbefa013e03a3d81592b7a5f6205773c12a6f7674529e497e9a4eb2df2d44",
"fork_version": "00000000",
"eth2_network_name": "goerli",
"status": "funding_requested",
"deposit_cli_version": "1.2.0",
"status_synced_at": "2023-01-14T16:00:14.459Z",
"status_history": [
{
"status": "funding_requested",
"changed_at": "2023-01-04T16:00:14.459Z"
}
]
},
"relationships": {
"position": {
"data": {
"id": "13",
"type": "position"
}
}
}
}
],
"meta": {
"raw_transaction": {
"from": "0xBe000000000000000000000000000000000000b9",
"to": "0x2f9bCa3Ab411Bd26f78B69d12A8DaF0Effb3C516",
"value": "32000000000000000000",
"data": "0x4f498c73000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000005200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000006038313964353230333235313539313433393232323934306139393163663739333466656231383334373534656133613034343962393339656266313166643965323831373636663966386334626532616332383165313138633635383231383500000000000000000000000000000000000000000000000000000000000000606134343635346163306461613136613465366636313836653437333961383436386533613662633639663364666364643264393863353966336135363736363133373236343066303661303033303833663632623065376561613335386661300000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000403031303030303030303030303030303030303030303030306261623033653739626334363564363137326231623535326237636363646536646339653139623700000000000000000000000000000000000000000000000000000000000000403031303030303030303030303030303030303030303030306261623033653739626334363564363137326231623535326237636363646536646339653139623700000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000c061613034633330613537643565343630623939666239306264353863323461363961643434333465383933383833343132333866613565323865623830623630663335633433623761336262376332653464616362353965306264336336636531333632333365383263356164343331636536363061393566393962396437373230393332313462363338656466316137376263656365373639656636336432363732376135626639643636633536353763353733623030336263326134343600000000000000000000000000000000000000000000000000000000000000c0386363613363363839323662636435633761383561626538393161323961653131626139343138323065623638663339633862633665393035396339666134363862373564643464613437336534653161636263663362343538383165373864306235346564366664643936623461303632363233633034623736383732313532313039303234666663366635663030313466393936363961376537653562613738313863333037613363353161626664653736396161303433386136663063000000000000000000000000000000000000000000000000000000000000000200f2e67348479dcada2cca326f4353d929c1861dff713802738b2116ec29dba6f0ed88b0a11faba6377686b1ec2184e78afbcf96a69f43c0127c9ce1f2798834"
}
},
"links": {
"self": "https://hubble.figment.io/api/v1/prime/eth2_staking/positions/13/funding_transactions",
"current": "https://hubble.figment.io/api/v1/prime/eth2_staking/positions/13/funding_transactions?page[number]=1"
}
}
SpecificationView Specification

Parameters

  • funding_addressstring — An Ethereum funding address.
  • withdrawal_addressstring — An Ethereum withdrawal address.
  • validators_countinteger — A number of validators.
  • eth2_network_namestring — A network name, denoting testnet (goerli) or mainnet (mainnet).

Response

  • data - array
    • object
      • idstring - A unique identifier.
      • typestring — The type of position.
      • attributesobject
        • idnumber — A unique identifier.
        • pubkeystring — A public key.
        • namestring — The position name.
        • withdrawal_credentialsstring — Valid withdrawal credentials.
        • amountinteger — An amount of ETH.
        • signaturestring — A valid signature.
        • deposit_data_rootstring — The deposit data.
        • deposit_message_rootstring — The deposit message.
        • fork_versionstring — A fork version.
        • eth2_network_namestring — A network name, denoting testnet (goerli) or mainnet (mainnet).
        • status - string — The positions current status.
        • deposit_cli_versionstring — The version of the CLI software used when making the deposit.
        • status_synced_atstring — A timestamp indicating when the status was last synced,
        • status_historyarray — Details of the status history.
          • statusstring — A status.
          • changed_atstring — A timestamp.
      • relationshipsobject
        • positionobject
          • dataobject
            • idstring — A unique identifier.
            • typestring — The position type.
      • metaobject Metadata of the transaction.
        • raw_transactionobject
          • fromstring
          • tostring
          • valuestring
          • datastring
      • linksobject — Pagination links based on page[size] and page[number].
        • selfstring
        • currentstring
        • nextstring
        • laststring
        • prevstring

/eth2_staking/provision

Provision a new validator with passed attributes.

Request Body
Example Response
{
"staked_eth_amount": 32,
"eth1_withdrawal_address": "0xE40F80618324C814cD444434670a44ba4583aE38",
"eth2_network_name": "goerli",
"success": true
}
SpecificationView Specification

Parameters

  • external_user_idstring — A customer user ID (optional).
  • external_user_emailstring — A customer email address (optional).
  • withdrawal_addressstring — An Ethereum address (required).
  • validators_countinteger — A number of validators (required).
  • eth2_network_namestring — A network name, denoting testnet (goerli), or mainnet (mainnet) (required).

Response

Status 200, 201

  • staked_eth_amountinteger — An amount of staked ETH.
  • eth1_withdrawal_addressstring — An Ethereum address.
  • eth2_network_namestring — A network name, denoting testnet (goerli) or mainnet (mainnet).
  • successboolean — The response code of a successful result can be either 200 or 201.

Status 422

An error status 422 is returned under the following conditions:

  • If /provision is called while validators are in the process of being provisioned, the error message is "We are currently fulfilling a previous request, please retry your request in a few minutes"
  • If /provision is called with a validators_count that exceeds the number of remaining un-funded validators, the error message is "You currently have n/100 unfunded validators, you are able to create no more validators."

Notes

  • Each withdrawal address has a maximum of 100 un-funded validators that can be provisioned at any time.
  • Specifying a validators_count greater than the number of existing un-funded validators for a given withdrawal_address will cause the request to fail.
    • For example, if withdrawal address 0x123 has zero existing, un-funded validators, then the maximum value of validators_count is 100. However, if withdrawal address 0x123 has 30 existing, un-funded validators, the maximum value for validators_count is 70.
  • Once you have deposited to your provisioned validators, you can expect up to a 25 minute wait until the validator_count limit has been reset to acknowledge the deposit.

Webhook configuration

User can be notified once a new validator is provisioned. Configure a webhook URL and webhook API key under Prime / ETH Staking in the Prime Dashboard. The configured API key will be sent as an Authorization header.

Note

Validator API webhooks can only be configured from the Prime dashboard.

Webhook response format

{
  "action": "",
  "data": {
    "id": "",
    "withdrawal_address": "",
    "validators_count": 0
  }
}
  • actionstring
  • dataobject
    • idstring
    • withdrawal_addressstring
    • validators_countnumber

/eth2_staking/validators

Returns a list of validators belonging to a customer.

Request Query
Example Response
{
"data": [
{
"id": "32",
"type": "validator",
"attributes": {
"id": 32,
"pubkey": "d1ef8d468ef53d82368d2026e321ab2c6d44f44c33b7b9f22369bf6dcf37fb0208f82dd6b485325ce1bbf5aec7ad45bb",
"name": null,
"withdrawal_credentials": "010000000000000000000000fc438e6cc4b230eb5bfaae1337c3f5da2b9140f1",
"amount": 32000000000,
"signature": "aab7e3b41689fced6c3437a6bc5caf471ed319b94ad2642c47c5f641d5e3a046432171d47d48cd7a3e8a323939d4976c1315ad4dae134c421214673ddff9105ef1bb7f79c1babc6cd9c31428d5e44472164e9c9fccfd10fb9768c0855b194f49",
"deposit_data_root": "b2f5083221d6b61f2237af155c07c746f6a75c7d24dfe418106efdf87e9b9422",
"deposit_message_root": "026cbefa013e03a3d81592b7a5f6205773c12a6f7674529e497e9a4eb2df2d44",
"fork_version": "00001020",
"eth2_network_name": "goerli",
"status": "deposited",
"deposit_cli_version": "1.2.0",
"status_synced_at": "2023-02-03T15:00:21.420Z",
"status_history": [
{
"status": "funding_requested",
"changed_at": "2023-01-04T16: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-----"
},
"relationships": {
"position": {
"data": {
"id": "13",
"type": "position"
}
}
}
}
],
"links": {
"self": "https://hubble.staging.figment.io/api/v1/prime/eth2_staking/validators?withdrawal_address=0x781462762B706AA7c1DA71FBA1a545724928b81f&include=13&presigned_exit_transaction=true",
"current": "https://hubble.staging.figment.io/api/v1/prime/eth2_staking/validators?include=13&page[number]=1&presigned_exit_transaction=true&withdrawal_address=0x781462762B706AA7c1DA71FBA1a545724928b81f"
},
"included": [
{
"id": "13",
"type": "position",
"attributes": {
"id": 0,
"name": null,
"eth1_withdrawal_address": "0x781462762B706AA7c1DA71FBA1a545724928b81f",
"staked_amount": 32000000000,
"validators_count": 1,
"created_at": "2022-01-04T12:00:17.459Z",
"updated_at": "2023-01-04T12:00:22.264Z"
}
}
]
}
SpecificationView Specification

Parameters

  • withdrawal_addressstring — An Ethereum address.
  • page[size]integer — The number of results to display, used for pagination (optional).
  • page[number]integer — The page number to display (optional).
  • includestring — Accepts the value position.
  • status_historystring — If present, status change history will be included for each validator.
  • statusstring — Accepted value(s): funding_requested, deposited, pending_initialized, pending_queued, active_ongoing, active_exiting, active_slashed, exited_unslashed, exited_slashed, withdrawal_possible, withdrawal_done, provisioned.

Response

  • dataarray
    • object
      • idstring — A unique identifier.
      • typestring — The type of position.
      • attributesobject
        • namestring — The position name.
        • pubkeystring — A public key.
        • withdrawal_credentialsstring — Valid withdrawal credentials.
        • amountinteger — An amount of ETH.
        • signaturestring — A valid signature.
        • deposit_data_rootstring — The deposit data.
        • deposit_message_rootstring — The deposit message.
        • fork_versionstring — A fork version.
        • eth2_network_namestring — A network name, testnet, mainnet
        • statusstring — The positions current status.
        • deposit_cli_versionstring — The version of the CLI software used when making the deposit.
        • status_synced_atstring — A timestamp indicating when the status was last synced,
        • status_historyarray — Details of the status history.
          • statusstring — A status.
          • changed_atstring — A timestamp.
        • fee_recipient_addresshex — The fee recipient address, equivalent to the withdrawal_address.
        • presigned_exit_transactionstring — A valid PGP message block. Pre-signed exit transactions are refreshed daily at 6:30AM UTC for active validators which have a stored PGP key. The PGP message in this response contains the dated Version for when the exit transaction was last refreshed. The Comment portion of the PGP message contains the validator's public key and encrypted VoluntaryExit message for that validator. Shown with the query parameter presigned_exit_transaction=true.
      • relationshipsobject
        • positionobject
          • dataobject
            • idstring — A unique identifier.
            • typestring — The position type.
      • linksobject — Pagination links based on page[size] and page[number].
        • selfstring
        • currentstring
        • nextstring
        • laststring
        • prevstring
      • includedarray
        • object
          • idstring — A unique identifier.
          • typestring — The position type.
          • attributesobject
            • idstring — A unique identifier.
            • namestring — A name.
            • eth1_withdrawal_addressstring — An Ethereum address.
            • staked_amountinteger — An amount of staked ETH.
            • validators_countinteger — A number of validators.
            • created_atstring — A timestamp.
            • updated_atstring — A timestamp.

/eth2_staking/validators/{id}

Returns information about a single validator.

Request Query
Example Response
{
"data": {
"id": "33",
"type": "validator",
"attributes": {
"id": 32,
"pubkey": "d1ef8d468ef53d82368d2026e321ab2c6d44f44c33b7b9f22369bf6dcf37fb0208f82dd6b485325ce1bbf5aec7ad45bb",
"name": null,
"withdrawal_credentials": "010000000000000000000000fc438e6cc4b230eb5bfaae1337c3f5da2b9140f1",
"amount": 32000000000,
"signature": "aab7e3b41689fced6c3437a6bc5caf471ed319b94ad2642c47c5f641d5e3a046432171d47d48cd7a3e8a323939d4976c1315ad4dae134c421214673ddff9105ef1bb7f79c1babc6cd9c31428d5e44472164e9c9fccfd10fb9768c0855b194f49",
"deposit_data_root": "b2f5083221d6b61f2237af155c07c746f6a75c7d24dfe418106efdf87e9b9422",
"deposit_message_root": "026cbefa013e03a3d81592b7a5f6205773c12a6f7674529e497e9a4eb2df2d44",
"fork_version": "00000000",
"eth2_network_name": "goerli",
"status": "deposited",
"deposit_cli_version": "1.2.0",
"status_synced_at": "2023-01-10T12:00:11.189Z",
"status_history": [
{
"status": "funding_requested",
"changed_at": "2023-01-04T16: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-----"
},
"relationships": {
"position": {
"data": {
"id": "13",
"type": "position"
}
}
}
}
}
SpecificationView Specification

Parameters

  • idstring — The validator ID.
  • includestring — Accepts the value position.
  • status_historystring — If present, the status change history will be included for each validator.

Response

  • dataarray
    • object
      • idstring - A unique identifier.
      • typestring - The type of position.
      • attributesobject
        • idnumber - A unique identifier.
        • pubkeystring — A public key.
        • namestring — The position name.
        • withdrawal_credentialsstring — Valid withdrawal credentials.
        • amountinteger — An amount of ETH.
        • signaturestring — A valid signature.
        • deposit_data_rootstring — The deposit data.
        • deposit_message_rootstring — The deposit message.
        • fork_versionstring — A fork version.
        • eth2_network_namestring — A network name, denoting testnet (goerli) or mainnet (mainnet).
        • statusstring — The positions current status.
        • deposit_cli_versionstring — The version of the CLI software used when making the deposit.
        • status_synced_atstring — A timestamp indicating when the status was last synced,
        • status_historyarray — Details of the status history.
          • statusstring — A status.
          • changed_atstring — A timestamp.
        • fee_recipient_addresshex — The fee recipient address, equivalent to the withdrawal_address.
        • presigned_exit_transactionstring — A valid PGP message block. Pre-signed exit transactions are refreshed daily at 6:30AM UTC for active validators which have a stored PGP key. The PGP message in this response contains the dated Version for when the exit transaction was last refreshed. The Comment portion of the PGP message contains the validator's public key and encrypted VoluntaryExit message for that validator. Shown with the query parameter presigned_exit_transaction=true.
      • relationshipsobject
        • positionobject
          • dataobject
            • idstring — A unique identifier.
            • typestring — The position type.