Skip to main content
GET
/
withdrawals
/
{withdrawalRoot}
Retrieve withdrawal by withdrawal root
curl --request GET \
  --url https://api.eigenexplorer.com/withdrawals/{withdrawalRoot} \
  --header 'X-API-Token: <x-api-token>'
import requests

url = "https://api.eigenexplorer.com/withdrawals/{withdrawalRoot}"

headers = {"X-API-Token": "<x-api-token>"}

response = requests.get(url, headers=headers)

print(response.text)
const options = {method: 'GET', headers: {'X-API-Token': '<x-api-token>'}};

fetch('https://api.eigenexplorer.com/withdrawals/{withdrawalRoot}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://api.eigenexplorer.com/withdrawals/{withdrawalRoot}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Token: <x-api-token>"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"net/http"
"io"
)

func main() {

url := "https://api.eigenexplorer.com/withdrawals/{withdrawalRoot}"

req, _ := http.NewRequest("GET", url, nil)

req.Header.Add("X-API-Token", "<x-api-token>")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.get("https://api.eigenexplorer.com/withdrawals/{withdrawalRoot}")
.header("X-API-Token", "<x-api-token>")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.eigenexplorer.com/withdrawals/{withdrawalRoot}")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["X-API-Token"] = '<x-api-token>'

response = http.request(request)
puts response.read_body
{
  "withdrawalRoot": "0x9e6728ef0a8ad6009107a886047aae35bc5ed7deaa68580b0d1f8f67e3e5ed31",
  "nonce": 0,
  "stakerAddress": "0x74ede5f75247fbdb9266d2b3a7be63b3db7611dd",
  "delegatedTo": "0x0000000000000000000000000000000000000000",
  "withdrawerAddress": "0x74ede5f75247fbdb9266d2b3a7be63b3db7611dd",
  "shares": [
    {
      "strategyAddress": "0x93c4b944d05dfe6df7645a86cd2206016c51564d",
      "shares": "1000288824523326631"
    }
  ],
  "createdAtBlock": 19912470,
  "createdAt": "2024-07-07T23:53:35.000Z",
  "updatedAtBlock": 19912470,
  "updatedAt": "2024-07-07T23:53:35.000Z",
  "isCompleted": false
}
{
"error": {
"code": "bad_request",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#bad_request"
}
}
{
"error": {
"code": "unauthorized",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#unauthorized"
}
}
{
"error": {
"code": "forbidden",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#forbidden"
}
}
{
"error": {
"code": "not_found",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#not_found"
}
}
{
"error": {
"code": "unprocessable_entity",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#unprocessable_entity"
}
}
{
"error": {
"code": "rate_limit_exceeded",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#rate_limit_exceeded"
}
}
{
"error": {
"code": "internal_server_error",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#internal_server_error"
}
}

Headers

X-API-Token
string
required

API Token for authentication

Path Parameters

withdrawalRoot
string
required

The root hash of the withdrawal

Example:

"0x9e6728ef0a8ad6009107a886047aae35bc5ed7deaa68580b0d1f8f67e3e5ed31"

Response

The requested withdrawal record.

withdrawalRoot
string
required

The root hash of the withdrawal

Example:

"0x9e6728ef0a8ad6009107a886047aae35bc5ed7deaa68580b0d1f8f67e3e5ed31"

nonce
number
required

The nonce of the withdrawal, ensuring unique hashes for otherwise identical withdrawals

Example:

0

stakerAddress
string
required

The contract address of the staker who initiated the withdrawal

Example:

"0x74ede5f75247fbdb9266d2b3a7be63b3db7611dd"

delegatedTo
string
required

The address to which the staker was delegated when the withdrawal was initiated

Example:

"0x0000000000000000000000000000000000000000"

withdrawerAddress
string
required

The address of the withdrawer, authorized to complete the withdrawal and receive the funds

Example:

"0x74ede5f75247fbdb9266d2b3a7be63b3db7611dd"

shares
object[]
required

The list of strategy shares

Example:
[
{
"strategyAddress": "0x93c4b944d05dfe6df7645a86cd2206016c51564d",
"shares": "1000288824523326631"
}
]
createdAtBlock
number
required

The block number when the withdrawal was recorded by EigenExplorer

Example:

19912470

createdAt
string
required

The time stamp when the withdrawal was recorded by EigenExplorer

Example:

"2024-07-07T23:53:35.000Z"

updatedAtBlock
number
required

The block number when the withdrawal was last updated

Example:

19912470

updatedAt
string
required

The time stamp when the withdrawal was last updated

Example:

"2024-07-07T23:53:35.000Z"

isCompleted
boolean
required

Indicates if the withdrawal is completed

Example:

false