Granite Upgrade Activates in11d:16h:53m:16s
Primary Network

List validators

Lists details for validators. By default, returns details for all validators. The nodeIds parameter supports substring matching. Filterable by validation status, delegation capacity, time remaining, fee percentage, uptime performance, and subnet id.

GET
/v1/networks/{network}/validators
x-glacier-api-key<token>

Api keys provide higher access to rate limits. To obtain an api key, sign up for an account at https://build.avax.network/console/utilities/data-api-keys.

In: header

Path Parameters

networkstring

Either mainnet or testnet/fuji.

Value in"mainnet" | "fuji" | "testnet"

Query Parameters

pageToken?string

A page token, received from a previous list call. Provide this to retrieve the subsequent page.

pageSize?integer

The maximum number of items to return. The minimum page size is 1. The maximum pageSize is 100.

Default10
Range1 <= value <= 100
nodeIds?string

A comma separated list of node ids to filter by. Supports substring matching.

sortBy?string

Which property to sort by, in conjunction with sortOrder.

Note: Delegation fee is only available for mainnet validators. Set subnetId to 11111111111111111111111111111111LpoYY to use this option.

Value in"blockIndex" | "delegationCapacity" | "timeRemaining" | "delegationFee" | "uptimePerformance"
sortOrder?string

The order by which to sort results. Use "asc" for ascending order, "desc" for descending order. Sorted by timestamp or the sortBy query parameter, if provided.

Value in"asc" | "desc"
validationStatus?string

Validation status of the node.

Value in"completed" | "active" | "pending" | "removed"
minDelegationCapacity?string

The minimum delegation capacity, in nAVAX, used to filter the set of nodes being returned. Accepts values between 0 and 720,000,000,000,000,000

maxDelegationCapacity?string

The maximum delegation capacity, in nAVAX, used to filter the set of nodes being returned. Accepts values between 0 and 720,000,000,000,000,000.

minTimeRemaining?number

The minimum validation time remaining, in seconds, used to filter the set of nodes being returned.

Range0 <= value <= 2147483647
maxTimeRemaining?number

The maximum validation time remaining, in seconds, used to filter the set of nodes being returned.

Range0 <= value <= 2147483647
minFeePercentage?number

The minimum fee percentage, used to filter the set of nodes being returned. If this field is populated no subnet validations will be returned, as their fee percentage is null, since subnet delegations are not supported. Default is 2.0, as per the Avalanche spec.

Range2 <= value <= 100
maxFeePercentage?number

The maximum fee percentage, used to filter the set of nodes being returned. If this field is populated no subnet validations will be returned, as their fee percentage is null, since subnet delegations are not supported. Default is 100.0.

Range2 <= value <= 100
minUptimePerformance?number

The minimum node uptime performance percentage, which represents node health, used to filter the set of nodes being returned Default is 90.

Range0 <= value <= 100
maxUptimePerformance?number

The maximum node uptime performance percentage, which represents node health, used to filter the set of nodes being returned. Default is 100.

Range0 <= value <= 100
subnetId?unknown

The subnet ID to filter by. If not provided, then all subnets will be returned.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://data-api.avax.network/v1/networks/mainnet/validators?pageSize=10&nodeIds=NodeID-111111111111111111116DBWJs%2CNodeID-222222222222222222227DBWJs&sortOrder=asc&validationStatus=completed&minDelegationCapacity=0&maxDelegationCapacity=720000000000000000&minTimeRemaining=0&maxTimeRemaining=2147483647&minFeePercentage=2&maxFeePercentage=100&minUptimePerformance=90&maxUptimePerformance=100&subnetId=11111111111111111111111111111111LpoYY"
{
  "nextPageToken": "string",
  "validators": [
    {
      "txHash": "string",
      "nodeId": "string",
      "subnetId": "string",
      "amountStaked": "string",
      "delegationFee": "string",
      "startTimestamp": 0,
      "endTimestamp": 0,
      "blsCredentials": {
        "publicKey": "string",
        "proofOfPossession": "string"
      },
      "delegatorCount": 0,
      "amountDelegated": "string",
      "rewards": {
        "validationRewardAmount": "string",
        "delegationRewardAmount": "string",
        "rewardAddresses": [
          "string"
        ],
        "rewardTxHash": "string"
      },
      "validationStatus": "completed"
    }
  ]
}
{
  "message": "string",
  "statusCode": 400,
  "error": "Bad Request"
}
{
  "message": "string",
  "statusCode": 401,
  "error": "Unauthorized"
}
{
  "message": "string",
  "statusCode": 403,
  "error": "Forbidden"
}
{
  "message": "string",
  "statusCode": 404,
  "error": "Not Found"
}
{
  "message": "string",
  "statusCode": 429,
  "error": "Too Many Requests"
}
{
  "message": "string",
  "statusCode": 500,
  "error": "Internal Server Error"
}
{
  "message": "string",
  "statusCode": 502,
  "error": "Bad Gateway"
}
{
  "message": "string",
  "statusCode": 503,
  "error": "Service Unavailable"
}

Is this guide helpful?