Validator API - Ethereum
API AuthenticationClick to view API Authentication details
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
- Fetch with Header
- Fetch with Parameter
- CURL with Header
- CURL with Parameter
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
})
})
fetch("https://hubble.figment.io/api/v1/prime/apikey/{{apikey}}/eth2_staking/positions", {
method: 'POST', // can also be 'GET', 'PUT' or any appropriate method
headers: {
"Content-Type": "application/json" // if method is 'POST'
},
body: JSON.stringify({
// JSON Payload
})
})
curl -X POST 'https://hubble.figment.io/api/v1/prime/eth2_staking/positions' \
--header 'Content-Type: application/json' \
--header 'Authorization: <api_key>' \
--data '{
// JSON Payload
}'
curl -X POST 'https://hubble.figment.io/api/v1/prime/apikey/{{apikey}}/eth2_staking/positions' \
--header 'Content-Type: application/json' \
--data '{
// JSON Payload
}'
Available Methods
/eth2_staking/positions
Request creation of new staking position with the passed attributes.
{
"success": true
}
SpecificationView Specification
Parameters
external_user_id
—string
— A customer user ID.external_user_email
—string
— A customer email address.withdrawal_address
—string
— An Ethereum address.validators_count
—integer
— A number of validators.eth2_network_name
—string
— A network name, denoting testnet (goerli
) or mainnet (mainnet
).
Response
success
—boolean
— Returnstrue
if the action was successful, otherwise returnsfalse
.
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
}
}
action
—string
data
—object
id
—string
withdrawal_address
—string
validators_count
—number
/eth2_staking/positions
Returns a list of staking positions.
{
"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_address
—string
— 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_only
—boolean
—true
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.
links
—object
— Pagination links based onpage[size]
andpage[number]
.
/eth2_staking/positions/{position_id}/validators
Returns a list of validators for a given staking position.
{
"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_id
—string
— A valid staking position ID (required).include
—string
— 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
id
—string
- A unique identifier.type
—string
— The type of position.attributes
—object
id
—number
— A unique identifier.pubkey
—string
— A public key.name
—string
— The position name.withdrawal_credentials
—string
— Valid withdrawal credentials.amount
—integer
— An amount of ETH staked on the validator, in Gwei (1 Gwei is 1e9 wei).signature
—string
— A valid signature.deposit_data_root
—string
— The deposit data.deposit_message_root
—string
— The deposit message.deposit_cli_version
—string
— The version of the CLI software used when making the deposit.fork_version
—string
— A fork version.eth2_network_name
—string
— A network name, denoting testnet (goerli
) or mainnet (mainnet
).status
-string
— The positions current status.status_synced_at
—string
— A timestamp indicating when the status was last synced.fee_recipient_address
—hex
— The fee recipient address, equivalent to thewithdrawal_address
.presigned_exit_transaction
—string
— 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 datedVersion
for when the exit transaction was last refreshed. TheComment
portion of the PGP message contains the validator's public key and encryptedVoluntaryExit
message for that validator. Shown with the query parameterpresigned_exit_transaction=true
.
status_history
—array
— Details of the status history. -status
—string
— A status. -changed_at
—string
— A timestamp.relationships
—object
position
—object
data
—object
id
—string
— A unique identifier.type
—string
— The position type.
links
—object
— Pagination links based onpage[size]
andpage[number]
.self
—string
current
—string
next
—string
last
—string
prev
—string
included
—array
object
id
—string
— A unique identifier.type
—string
— The position type.attributes
—object
id
—string
— A unique identifier.name
—string
— A name.eth1_withdrawal_address
—string
— An Ethereum address.staked_amount
—integer
— An amount of staked ETH.validators_count
—integer
— A number of validators.created_at
—string
— A timestamp.updated_at
—string
— 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
.
{
"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_address
—string
— An Ethereum funding address.withdrawal_address
—string
— An Ethereum withdrawal address.validators_count
—integer
— A number of validators.eth2_network_name
—string
— A network name, denoting testnet (goerli
) or mainnet (mainnet
).
Response
data
-array
object
id
—string
- A unique identifier.type
—string
— The type of position.attributes
—object
id
—number
— A unique identifier.pubkey
—string
— A public key.name
—string
— The position name.withdrawal_credentials
—string
— Valid withdrawal credentials.amount
—integer
— An amount of ETH.signature
—string
— A valid signature.deposit_data_root
—string
— The deposit data.deposit_message_root
—string
— The deposit message.fork_version
—string
— A fork version.eth2_network_name
—string
— A network name, denoting testnet (goerli
) or mainnet (mainnet
).status
-string
— The positions current status.deposit_cli_version
—string
— The version of the CLI software used when making the deposit.status_synced_at
—string
— A timestamp indicating when the status was last synced,status_history
—array
— Details of the status history.status
—string
— A status.changed_at
—string
— A timestamp.
relationships
—object
position
—object
data
—object
id
—string
— A unique identifier.type
—string
— The position type.
meta
—object
Metadata of the transaction.raw_transaction
—object
from
—string
to
—string
value
—string
data
—string
links
—object
— Pagination links based onpage[size]
andpage[number]
.self
—string
current
—string
next
—string
last
—string
prev
—string
/eth2_staking/provision
Provision a new validator with passed attributes.
{
"staked_eth_amount": 32,
"eth1_withdrawal_address": "0xE40F80618324C814cD444434670a44ba4583aE38",
"eth2_network_name": "goerli",
"success": true
}
SpecificationView Specification
Parameters
external_user_id
—string
— A customer user ID (optional).external_user_email
—string
— A customer email address (optional).withdrawal_address
—string
— An Ethereum address (required).validators_count
—integer
— A number of validators (required).eth2_network_name
—string
— A network name, denoting testnet (goerli
), or mainnet (mainnet
) (required).
Response
Status 200
, 201
staked_eth_amount
—integer
— An amount of staked ETH.eth1_withdrawal_address
—string
— An Ethereum address.eth2_network_name
—string
— A network name, denoting testnet (goerli
) or mainnet (mainnet
).success
—boolean
— The response code of a successful result can be either200
or201
.
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 avalidators_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 givenwithdrawal_address
will cause the request to fail.- For example, if withdrawal address
0x123
has zero existing, un-funded validators, then the maximum value ofvalidators_count
is 100. However, if withdrawal address0x123
has 30 existing, un-funded validators, the maximum value forvalidators_count
is 70.
- For example, if withdrawal address
- 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
}
}
action
—string
data
—object
id
—string
withdrawal_address
—string
validators_count
—number
/eth2_staking/validators
Returns a list of validators belonging to a customer.
{
"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_address
—string
— 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).include
—string
— Accepts the valueposition
.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
.
Response
data
—array
object
id
—string
— A unique identifier.type
—string
— The type of position.attributes
—object
name
—string
— The position name.pubkey
—string
— A public key.withdrawal_credentials
—string
— Valid withdrawal credentials.amount
—integer
— An amount of ETH.signature
—string
— A valid signature.deposit_data_root
—string
— The deposit data.deposit_message_root
—string
— The deposit message.fork_version
—string
— A fork version.eth2_network_name
—string
— A network name,testnet
,mainnet
status
—string
— The positions current status.deposit_cli_version
—string
— The version of the CLI software used when making the deposit.status_synced_at
—string
— A timestamp indicating when the status was last synced,status_history
—array
— Details of the status history.status
—string
— A status.changed_at
—string
— A timestamp.
fee_recipient_address
—hex
— The fee recipient address, equivalent to thewithdrawal_address
.presigned_exit_transaction
—string
— 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 datedVersion
for when the exit transaction was last refreshed. TheComment
portion of the PGP message contains the validator's public key and encryptedVoluntaryExit
message for that validator. Shown with the query parameterpresigned_exit_transaction=true
.
relationships
—object
position
—object
data
—object
id
—string
— A unique identifier.type
—string
— The position type.
links
—object
— Pagination links based onpage[size]
andpage[number]
.self
—string
current
—string
next
—string
last
—string
prev
—string
included
—array
object
id
—string
— A unique identifier.type
—string
— The position type.attributes
—object
id
—string
— A unique identifier.name
—string
— A name.eth1_withdrawal_address
—string
— An Ethereum address.staked_amount
—integer
— An amount of staked ETH.validators_count
—integer
— A number of validators.created_at
—string
— A timestamp.updated_at
—string
— A timestamp.
/eth2_staking/validators/{id}
Returns information about a single validator.
{
"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
id
—string
— The validator ID.include
—string
— Accepts the valueposition
.status_history
—string
— If present, the status change history will be included for each validator.
Response
data
—array
object
id
—string
- A unique identifier.type
—string
- The type of position.attributes
—object
id
—number
- A unique identifier.pubkey
—string
— A public key.name
—string
— The position name.withdrawal_credentials
—string
— Valid withdrawal credentials.amount
—integer
— An amount of ETH.signature
—string
— A valid signature.deposit_data_root
—string
— The deposit data.deposit_message_root
—string
— The deposit message.fork_version
—string
— A fork version.eth2_network_name
—string
— A network name, denoting testnet (goerli
) or mainnet (mainnet
).status
—string
— The positions current status.deposit_cli_version
—string
— The version of the CLI software used when making the deposit.status_synced_at
—string
— A timestamp indicating when the status was last synced,status_history
—array
— Details of the status history.status
—string
— A status.changed_at
—string
— A timestamp.
fee_recipient_address
—hex
— The fee recipient address, equivalent to thewithdrawal_address
.presigned_exit_transaction
—string
— 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 datedVersion
for when the exit transaction was last refreshed. TheComment
portion of the PGP message contains the validator's public key and encryptedVoluntaryExit
message for that validator. Shown with the query parameterpresigned_exit_transaction=true
.
relationships
—object
position
—object
data
—object
id
—string
— A unique identifier.type
—string
— The position type.