openapi: 3.1.0
info:
title: Data AVAX Supply Looking Glass API
description: The Data API provides web3 application developers with multi-chain data related to Avalanche's primary network, Avalanche subnets, and Ethereum. With Data API, you can easily build products that leverage real-time and historical transaction and transfer history, native and token balances, and various types of token metadata. The API is in Beta and may be subject to change.If you have feedback or feature requests for the API, please submit them here. Bug reports can be submitted here, and any potential security issues can be reported here.
version: 1.0.0
contact: {}
servers:
- url: https://glacier-api.avax.network
security:
- apiKey: []
- {}
tags:
- name: Looking Glass
description: Looking Glass is a tool that allows users to look up information for future airdrops.
paths:
/v2/chains/{chainId}/contracts/{address}/nfts:listHolders:
get:
operationId: getNftHoldersByContractAddress
x-execution-weight: large
x-speakeasy-group: metrics.chains
x-speakeasy-name-override: listNftHolders
x-speakeasy-pagination:
type: cursor
inputs:
- name: pageToken
in: parameters
type: cursor
outputs:
nextCursor: $.nextPageToken
x-codeSamples:
- lang: javascript
label: JavaScript
source: "import { Avalanche } from \"@avalanche-sdk/chainkit\";\n\nconst avalanche = new Avalanche({\n chainId: \"43114\",\n});\n\nasync function run() {\n const result = await avalanche.metrics.chains.listNftHolders({\n pageSize: 10,\n address: \"0x7a420AEFF902AAa2c85a190D7B91Ce8BEFffFE14\",\n });\n\n for await (const page of result) {\n console.log(page);\n }\n}\n\nrun();"
summary: Get NFT holders by contract address
description: Get list of NFT holders and number of NFTs held by contract address.
parameters:
- name: pageToken
required: false
in: query
description: A page token, received from a previous list call. Provide this to retrieve the subsequent page.
schema:
type: string
- name: pageSize
required: false
in: query
description: The maximum number of items to return. The minimum page size is 1. The maximum pageSize is 5000.
schema:
type: integer
default: 1000
minimum: 1
maximum: 5000
example: '10'
- name: chainId
required: true
in: path
description: A supported evm chain id. Use the `/chains` endpoint to get a list of supported chain ids.
example: '43114'
schema:
type: string
- name: address
required: true
in: path
description: Contract address on the relevant chain.
example: '0x7a420AEFF902AAa2c85a190D7B91Ce8BEFffFE14'
schema:
type: string
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/NftHoldersResponse'
'400':
description: "Bad requests generally mean the client has passed invalid \n or malformed parameters. Error messages in the response could help in \n evaluating the error."
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
'401':
description: "When a client attempts to access resources that require \n authorization credentials but the client lacks proper authentication \n in the request, the server responds with 401."
content:
application/json:
schema:
$ref: '#/components/schemas/Unauthorized'
'403':
description: "When a client attempts to access resources with valid\n credentials but doesn't have the privilege to perform that action, \n the server responds with 403."
content:
application/json:
schema:
$ref: '#/components/schemas/Forbidden'
'404':
description: "The error is mostly returned when the client requests\n with either mistyped URL, or the passed resource is moved or deleted, \n or the resource doesn't exist."
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
'429':
description: "This error is returned when the client has sent too many,\n and has hit the rate limit."
content:
application/json:
schema:
$ref: '#/components/schemas/TooManyRequests'
'500':
description: "The error is a generic server side error that is \n returned for any uncaught and unexpected issues on the server side. \n This should be very rare, and you may reach out to us if the problem \n persists for a longer duration."
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
'502':
description: "This is an internal error indicating invalid response \n received by the client-facing proxy or gateway from the upstream server."
content:
application/json:
schema:
$ref: '#/components/schemas/BadGateway'
'503':
description: "The error is returned for certain routes on a particular\n Subnet. This indicates an internal problem with our Subnet node, and may \n not necessarily mean the Subnet is down or affected."
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceUnavailable'
tags:
- Looking Glass
/v2/chains/{chainId}/contracts/{address}/balances:
get:
operationId: getAddressesByBalanceOverTime
x-execution-weight: xl
x-speakeasy-group: metrics.chains
x-speakeasy-name-override: listTokenHoldersAboveThreshold
x-speakeasy-pagination:
type: cursor
inputs:
- name: pageToken
in: parameters
type: cursor
outputs:
nextCursor: $.nextPageToken
x-codeSamples:
- lang: javascript
label: JavaScript
source: "import { Avalanche } from \"@avalanche-sdk/chainkit\";\n\nconst avalanche = new Avalanche({\n chainId: \"43114\",\n});\n\nasync function run() {\n const result = await avalanche.metrics.chains.listTokenHoldersAboveThreshold({\n threshold: \"1000000\",\n startTimestamp: 1689541049,\n endTimestamp: 1689800249,\n pageSize: 10,\n address: \"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E\",\n });\n\n for await (const page of result) {\n console.log(page);\n }\n}\n\nrun();"
summary: Get addresses by balance over time
description: Get list of addresses and their latest balances that have held more than a certain threshold of a given token during the specified time frame.
parameters:
- name: threshold
required: true
in: query
description: The minimum balance for which addresses should be considered.
example: '1000000'
schema:
type: string
- name: startTimestamp
required: false
in: query
description: Query param for retrieving items after a specific timestamp.
example: 1689541049
schema:
minimum: 0
type: integer
- name: endTimestamp
required: false
in: query
description: Query param for retrieving items before a specific timestamp.
example: 1689800249
schema:
minimum: 0
type: integer
- name: pageToken
required: false
in: query
description: A page token, received from a previous list call. Provide this to retrieve the subsequent page.
schema:
type: string
- name: pageSize
required: false
in: query
description: The maximum number of items to return. The minimum page size is 1. The maximum pageSize is 5000.
schema:
type: integer
default: 1000
minimum: 1
maximum: 5000
example: '10'
- name: chainId
required: true
in: path
description: A supported evm chain id. Use the `/chains` endpoint to get a list of supported chain ids.
example: '43114'
schema:
type: string
- name: address
required: true
in: path
description: Contract address on the relevant chain.
example: '0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E'
schema:
type: string
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/LookingGlassResponse'
'400':
description: "Bad requests generally mean the client has passed invalid \n or malformed parameters. Error messages in the response could help in \n evaluating the error."
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
'401':
description: "When a client attempts to access resources that require \n authorization credentials but the client lacks proper authentication \n in the request, the server responds with 401."
content:
application/json:
schema:
$ref: '#/components/schemas/Unauthorized'
'403':
description: "When a client attempts to access resources with valid\n credentials but doesn't have the privilege to perform that action, \n the server responds with 403."
content:
application/json:
schema:
$ref: '#/components/schemas/Forbidden'
'404':
description: "The error is mostly returned when the client requests\n with either mistyped URL, or the passed resource is moved or deleted, \n or the resource doesn't exist."
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
'429':
description: "This error is returned when the client has sent too many,\n and has hit the rate limit."
content:
application/json:
schema:
$ref: '#/components/schemas/TooManyRequests'
'500':
description: "The error is a generic server side error that is \n returned for any uncaught and unexpected issues on the server side. \n This should be very rare, and you may reach out to us if the problem \n persists for a longer duration."
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
'502':
description: "This is an internal error indicating invalid response \n received by the client-facing proxy or gateway from the upstream server."
content:
application/json:
schema:
$ref: '#/components/schemas/BadGateway'
'503':
description: "The error is returned for certain routes on a particular\n Subnet. This indicates an internal problem with our Subnet node, and may \n not necessarily mean the Subnet is down or affected."
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceUnavailable'
tags:
- Looking Glass
/v2/chains/43114/btcb/bridged:getAddresses:
get:
operationId: getAddressesByBtcbBridged
x-execution-weight: large
x-speakeasy-group: metrics.chains
x-speakeasy-name-override: listBTCbBridgersAboveThreshold
x-speakeasy-pagination:
type: cursor
inputs:
- name: pageToken
in: parameters
type: cursor
outputs:
nextCursor: $.nextPageToken
x-codeSamples:
- lang: javascript
label: JavaScript
source: "import { Avalanche } from \"@avalanche-sdk/chainkit\";\n\nconst avalanche = new Avalanche();\n\nasync function run() {\n const result = await avalanche.metrics.chains.listBTCbBridgersAboveThreshold({\n threshold: \"1000000\",\n pageSize: 10,\n });\n\n for await (const page of result) {\n console.log(page);\n }\n}\n\nrun();"
summary: Get addresses by BTCb bridged balance
description: Get list of addresses and their net bridged amounts that have bridged more than a certain threshold.
parameters:
- name: threshold
required: true
in: query
description: The minimum balance for which addresses should be considered.
example: '1000000'
schema:
type: string
- name: pageToken
required: false
in: query
description: A page token, received from a previous list call. Provide this to retrieve the subsequent page.
schema:
type: string
- name: pageSize
required: false
in: query
description: The maximum number of items to return. The minimum page size is 1. The maximum pageSize is 5000.
schema:
type: integer
default: 1000
minimum: 1
maximum: 5000
example: '10'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/LookingGlassResponse'
'400':
description: "Bad requests generally mean the client has passed invalid \n or malformed parameters. Error messages in the response could help in \n evaluating the error."
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
'401':
description: "When a client attempts to access resources that require \n authorization credentials but the client lacks proper authentication \n in the request, the server responds with 401."
content:
application/json:
schema:
$ref: '#/components/schemas/Unauthorized'
'403':
description: "When a client attempts to access resources with valid\n credentials but doesn't have the privilege to perform that action, \n the server responds with 403."
content:
application/json:
schema:
$ref: '#/components/schemas/Forbidden'
'404':
description: "The error is mostly returned when the client requests\n with either mistyped URL, or the passed resource is moved or deleted, \n or the resource doesn't exist."
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
'429':
description: "This error is returned when the client has sent too many,\n and has hit the rate limit."
content:
application/json:
schema:
$ref: '#/components/schemas/TooManyRequests'
'500':
description: "The error is a generic server side error that is \n returned for any uncaught and unexpected issues on the server side. \n This should be very rare, and you may reach out to us if the problem \n persists for a longer duration."
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
'502':
description: "This is an internal error indicating invalid response \n received by the client-facing proxy or gateway from the upstream server."
content:
application/json:
schema:
$ref: '#/components/schemas/BadGateway'
'503':
description: "The error is returned for certain routes on a particular\n Subnet. This indicates an internal problem with our Subnet node, and may \n not necessarily mean the Subnet is down or affected."
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceUnavailable'
tags:
- Looking Glass
/v2/subnets/{subnetId}/validators:getAddresses:
get:
operationId: getValidatorsByDateRange
x-execution-weight: large
x-speakeasy-group: metrics.subnets
x-speakeasy-name-override: getValidators
x-speakeasy-pagination:
type: cursor
inputs:
- name: pageToken
in: parameters
type: cursor
outputs:
nextCursor: $.nextPageToken
x-codeSamples:
- lang: javascript
label: JavaScript
source: "import { Avalanche } from \"@avalanche-sdk/chainkit\";\n\nconst avalanche = new Avalanche();\n\nasync function run() {\n const result = await avalanche.metrics.subnets.getValidators({\n startTimestamp: 1689541049,\n endTimestamp: 1689800249,\n pageSize: 10,\n subnetId: \"11111111111111111111111111111111LpoYY\",\n network: \"mainnet\",\n });\n\n for await (const page of result) {\n console.log(page);\n }\n}\n\nrun();"
summary: Get addresses running validators during a given time frame
description: Get list of addresses and AddValidatorTx timestamps set to receive awards for validation periods during the specified time frame.
parameters:
- name: startTimestamp
required: false
in: query
description: Query param for retrieving items after a specific timestamp.
example: 1689541049
schema:
minimum: 0
type: integer
- name: endTimestamp
required: false
in: query
description: Query param for retrieving items before a specific timestamp.
example: 1689800249
schema:
minimum: 0
type: integer
- name: pageToken
required: false
in: query
description: A page token, received from a previous list call. Provide this to retrieve the subsequent page.
schema:
type: string
- name: pageSize
required: false
in: query
description: The maximum number of items to return. The minimum page size is 1. The maximum pageSize is 5000.
schema:
type: integer
default: 1000
minimum: 1
maximum: 5000
example: '10'
- name: subnetId
required: true
in: path
description: The subnet ID to filter by.
example: 11111111111111111111111111111111LpoYY
schema:
type: string
- name: network
required: false
in: query
description: Either mainnet or testnet/fuji.
example: mainnet
schema:
$ref: '#/components/schemas/Network'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/PChainLookingGlassResponse'
'400':
description: "Bad requests generally mean the client has passed invalid \n or malformed parameters. Error messages in the response could help in \n evaluating the error."
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
'401':
description: "When a client attempts to access resources that require \n authorization credentials but the client lacks proper authentication \n in the request, the server responds with 401."
content:
application/json:
schema:
$ref: '#/components/schemas/Unauthorized'
'403':
description: "When a client attempts to access resources with valid\n credentials but doesn't have the privilege to perform that action, \n the server responds with 403."
content:
application/json:
schema:
$ref: '#/components/schemas/Forbidden'
'404':
description: "The error is mostly returned when the client requests\n with either mistyped URL, or the passed resource is moved or deleted, \n or the resource doesn't exist."
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
'429':
description: "This error is returned when the client has sent too many,\n and has hit the rate limit."
content:
application/json:
schema:
$ref: '#/components/schemas/TooManyRequests'
'500':
description: "The error is a generic server side error that is \n returned for any uncaught and unexpected issues on the server side. \n This should be very rare, and you may reach out to us if the problem \n persists for a longer duration."
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
'502':
description: "This is an internal error indicating invalid response \n received by the client-facing proxy or gateway from the upstream server."
content:
application/json:
schema:
$ref: '#/components/schemas/BadGateway'
'503':
description: "The error is returned for certain routes on a particular\n Subnet. This indicates an internal problem with our Subnet node, and may \n not necessarily mean the Subnet is down or affected."
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceUnavailable'
tags:
- Looking Glass
/v1/lookingGlass/compositeQuery:
post:
operationId: compositeQueryV1
x-execution-weight: xxl
x-speakeasy-ignore: true
summary: Composite query
description: Composite query to get list of addresses from multiple subqueries.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CompositeQueryRequestDto'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/CompositeQueryResponse'
'400':
description: "Bad requests generally mean the client has passed invalid \n or malformed parameters. Error messages in the response could help in \n evaluating the error."
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
'401':
description: "When a client attempts to access resources that require \n authorization credentials but the client lacks proper authentication \n in the request, the server responds with 401."
content:
application/json:
schema:
$ref: '#/components/schemas/Unauthorized'
'403':
description: "When a client attempts to access resources with valid\n credentials but doesn't have the privilege to perform that action, \n the server responds with 403."
content:
application/json:
schema:
$ref: '#/components/schemas/Forbidden'
'404':
description: "The error is mostly returned when the client requests\n with either mistyped URL, or the passed resource is moved or deleted, \n or the resource doesn't exist."
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
'429':
description: "This error is returned when the client has sent too many,\n and has hit the rate limit."
content:
application/json:
schema:
$ref: '#/components/schemas/TooManyRequests'
'500':
description: "The error is a generic server side error that is \n returned for any uncaught and unexpected issues on the server side. \n This should be very rare, and you may reach out to us if the problem \n persists for a longer duration."
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
'502':
description: "This is an internal error indicating invalid response \n received by the client-facing proxy or gateway from the upstream server."
content:
application/json:
schema:
$ref: '#/components/schemas/BadGateway'
'503':
description: "The error is returned for certain routes on a particular\n Subnet. This indicates an internal problem with our Subnet node, and may \n not necessarily mean the Subnet is down or affected."
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceUnavailable'
tags:
- Looking Glass
/v2/lookingGlass/compositeQuery:
post:
operationId: compositeQueryV2
x-execution-weight: xxl
x-speakeasy-name-override: compositeQuery
x-speakeasy-pagination:
type: cursor
inputs:
- name: pageToken
in: requestBody
type: cursor
outputs:
nextCursor: $.nextPageToken
summary: Composite query
description: Composite query to get list of addresses from multiple subqueries.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CompositeQueryRequestDto'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/CompositeQueryResponse'
'400':
description: "Bad requests generally mean the client has passed invalid \n or malformed parameters. Error messages in the response could help in \n evaluating the error."
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
'401':
description: "When a client attempts to access resources that require \n authorization credentials but the client lacks proper authentication \n in the request, the server responds with 401."
content:
application/json:
schema:
$ref: '#/components/schemas/Unauthorized'
'403':
description: "When a client attempts to access resources with valid\n credentials but doesn't have the privilege to perform that action, \n the server responds with 403."
content:
application/json:
schema:
$ref: '#/components/schemas/Forbidden'
'404':
description: "The error is mostly returned when the client requests\n with either mistyped URL, or the passed resource is moved or deleted, \n or the resource doesn't exist."
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
'429':
description: "This error is returned when the client has sent too many,\n and has hit the rate limit."
content:
application/json:
schema:
$ref: '#/components/schemas/TooManyRequests'
'500':
description: "The error is a generic server side error that is \n returned for any uncaught and unexpected issues on the server side. \n This should be very rare, and you may reach out to us if the problem \n persists for a longer duration."
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
'502':
description: "This is an internal error indicating invalid response \n received by the client-facing proxy or gateway from the upstream server."
content:
application/json:
schema:
$ref: '#/components/schemas/BadGateway'
'503':
description: "The error is returned for certain routes on a particular\n Subnet. This indicates an internal problem with our Subnet node, and may \n not necessarily mean the Subnet is down or affected."
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceUnavailable'
tags:
- Looking Glass
components:
schemas:
LatestBalanceQueryDto:
type: object
properties:
id:
type: string
type:
type: string
enum:
- LatestBalance
params:
$ref: '#/components/schemas/LatestBalanceParams'
required:
- id
- type
- params
DateRangeErc20MinBalanceParam:
type: object
properties:
firstDate:
type: string
lastDate:
type: string
minBalance:
type: string
evmChainId:
type: string
contractAddress:
type: string
required:
- firstDate
- lastDate
- minBalance
- evmChainId
- contractAddress
BadRequest:
type: object
properties:
message:
description: The error message describing the reason for the exception
oneOf:
- type: string
- type: array
items:
type: string
statusCode:
type: number
description: The HTTP status code of the response
examples:
- 400
error:
type: string
description: The type of error
examples:
- Bad Request
required:
- message
- statusCode
- error
Operator:
type: string
enum:
- AND
- OR
LatestBalanceParams:
type: object
properties:
minBalance:
type: string
evmChainId:
type: string
tokenType:
$ref: '#/components/schemas/TokenType'
contractAddress:
type: string
required:
- minBalance
- evmChainId
- tokenType
TokenType:
type: string
enum:
- ERC20
- NATIVE
CompositeQueryResponse:
type: object
properties:
nextPageToken:
type: string
description: A token, which can be sent as `pageToken` to retrieve the next page. If this field is omitted or empty, there are no subsequent pages.
subQueryCounts:
type: object
additionalProperties:
type: number
examples:
- '1': 1
'2': 2
'3': 2
description: The number of results for each subquery by query id.
totalCount:
type: number
examples:
- 2
description: The total number of addresses returned by the composite query.
addresses:
type: array
items:
type: string
examples:
- '0x1234567890abcdef1234567890abcdef123456789'
required:
- subQueryCounts
- totalCount
- addresses
PChainLookingGlassResponse:
type: object
properties:
nextPageToken:
type: string
description: A token, which can be sent as `pageToken` to retrieve the next page. If this field is omitted or empty, there are no subsequent pages.
addresses:
description: List of addresses that match provided criteria.
type: array
items:
$ref: '#/components/schemas/PChainAddressDetails'
required:
- addresses
LookingGlassResponse:
type: object
properties:
nextPageToken:
type: string
description: A token, which can be sent as `pageToken` to retrieve the next page. If this field is omitted or empty, there are no subsequent pages.
addresses:
description: List of addresses that match provided criteria.
type: array
items:
$ref: '#/components/schemas/AddressDetails'
required:
- addresses
AllTimeStarsArenaBalanceQueryDto:
type: object
properties:
id:
type: string
type:
type: string
enum:
- AllTimeStarsArenaBalance
params:
$ref: '#/components/schemas/DateRangeStarsArenaMinBalanceParam'
required:
- id
- type
- params
BadGateway:
type: object
properties:
message:
description: The error message describing the reason for the exception
oneOf:
- type: string
- type: array
items:
type: string
statusCode:
type: number
description: The HTTP status code of the response
examples:
- 502
error:
type: string
description: The type of error
examples:
- Bad Gateway
required:
- message
- statusCode
- error
DateRangeNftHoldersParam:
type: object
properties:
firstDate:
type: string
lastDate:
type: string
evmChainId:
type: string
contractAddress:
type: string
required:
- firstDate
- lastDate
- evmChainId
- contractAddress
Unauthorized:
type: object
properties:
message:
description: The error message describing the reason for the exception
oneOf:
- type: string
- type: array
items:
type: string
statusCode:
type: number
description: The HTTP status code of the response
examples:
- 401
error:
type: string
description: The type of error
examples:
- Unauthorized
required:
- message
- statusCode
- error
AddressDetails:
type: object
properties:
address:
type: string
examples:
- '0x1234567890abcdef1234567890abcdef123456789'
description: An EVM address.
sortKey:
type: string
examples:
- 123
description: Route dependent value associated with an address at a given point in time.
required:
- address
- sortKey
LatestStarsArenaBalanceQueryDto:
type: object
properties:
id:
type: string
type:
type: string
enum:
- LatestBalanceStarsArena
params:
$ref: '#/components/schemas/LatestStarsArenaBalanceParams'
required:
- id
- type
- params
AllTimeNftHoldersQueryDto:
type: object
properties:
id:
type: string
type:
type: string
enum:
- AllTimeNftHolders
params:
oneOf:
- $ref: '#/components/schemas/TimestampRangeNftHoldersParam'
- $ref: '#/components/schemas/DateRangeNftHoldersParam'
required:
- id
- type
- params
DateRangeStarsArenaMinBalanceParam:
type: object
properties:
firstDate:
type: string
lastDate:
type: string
minBalance:
type: string
subjectAddress:
type: string
required:
- firstDate
- lastDate
- minBalance
- subjectAddress
AnyTimeNativeBalanceQueryDto:
type: object
properties:
id:
type: string
type:
type: string
enum:
- AnyTimeNativeBalance
params:
$ref: '#/components/schemas/DateRangeMinBalanceParam'
required:
- id
- type
- params
Forbidden:
type: object
properties:
message:
description: The error message describing the reason for the exception
oneOf:
- type: string
- type: array
items:
type: string
statusCode:
type: number
description: The HTTP status code of the response
examples:
- 403
error:
type: string
description: The type of error
examples:
- Forbidden
required:
- message
- statusCode
- error
AnyTimeErc20BalanceQueryDto:
type: object
properties:
id:
type: string
type:
type: string
enum:
- AnyTimeErc20Balance
params:
$ref: '#/components/schemas/DateRangeErc20MinBalanceParam'
required:
- id
- type
- params
AllTimeErc20BalanceQueryDto:
type: object
properties:
id:
type: string
type:
type: string
enum:
- AllTimeErc20Balance
params:
$ref: '#/components/schemas/DateRangeErc20MinBalanceParam'
required:
- id
- type
- params
TooManyRequests:
type: object
properties:
message:
description: The error message describing the reason for the exception
oneOf:
- type: string
- type: array
items:
type: string
statusCode:
type: number
description: The HTTP status code of the response
examples:
- 429
error:
type: string
description: The type of error
examples:
- Too Many Requests
required:
- message
- statusCode
- error
PChainAddressDetails:
type: object
properties:
addresses:
examples:
- - avax1abcdef1234567890abcdef1234567890abcdef
description: A list of P-Chain addresses.
type: array
items:
type: string
sortKey:
type: string
examples:
- 123
description: Route dependent value associated with an address at a given point in time.
required:
- addresses
- sortKey
NftHoldersResponse:
type: object
properties:
nextPageToken:
type: string
description: A token, which can be sent as `pageToken` to retrieve the next page. If this field is omitted or empty, there are no subsequent pages.
addresses:
description: List of addresses that match provided criteria.
type: array
items:
$ref: '#/components/schemas/AddressDetails'
nftCollectionName:
examples:
- NFT Project
description: NFT project name.
type: array
items:
type: string
nftSymbol:
examples:
- NFTPROJ
description: NFT symbol.
type: array
items:
type: string
totalHolders:
type: number
examples:
- 10
description: Total number of holders of a given NFT project.
totalTokens:
type: number
examples:
- 10
description: Total number of tokens of a given NFT project.
required:
- addresses
- totalHolders
- totalTokens
CompositeQueryRequestDto:
type: object
properties:
pageToken:
type: string
description: A page token, received from a previous list call. Provide this to retrieve the subsequent page.
pageSize:
type: integer
default: 1000
minimum: 1
maximum: 10000
description: The maximum number of items to return.
queries:
type: array
items:
oneOf:
- $ref: '#/components/schemas/AllTimeNativeBalanceQueryDto'
- $ref: '#/components/schemas/AnyTimeNativeBalanceQueryDto'
- $ref: '#/components/schemas/AllTimeErc20BalanceQueryDto'
- $ref: '#/components/schemas/AnyTimeErc20BalanceQueryDto'
- $ref: '#/components/schemas/AllTimeNftHoldersQueryDto'
- $ref: '#/components/schemas/AnyTimeNftHoldersQueryDto'
- $ref: '#/components/schemas/LatestBalanceQueryDto'
- $ref: '#/components/schemas/AllTimeStarsArenaBalanceQueryDto'
- $ref: '#/components/schemas/AnyTimeStarsArenaBalanceQueryDto'
- $ref: '#/components/schemas/LatestStarsArenaBalanceQueryDto'
discriminator:
propertyName: type
mapping:
AllTimeNativeBalance: '#/components/schemas/AllTimeNativeBalanceQueryDto'
AnyTimeNativeBalance: '#/components/schemas/AnyTimeNativeBalanceQueryDto'
AllTimeErc20Balance: '#/components/schemas/AllTimeErc20BalanceQueryDto'
AnyTimeErc20Balance: '#/components/schemas/AnyTimeErc20BalanceQueryDto'
AllTimeNftHolders: '#/components/schemas/AllTimeNftHoldersQueryDto'
AnyTimeNftHolders: '#/components/schemas/AnyTimeNftHoldersQueryDto'
LatestBalance: '#/components/schemas/LatestBalanceQueryDto'
AllTimeStarsArenaBalance: '#/components/schemas/AllTimeStarsArenaBalanceQueryDto'
AnyTimeStarsArenaBalance: '#/components/schemas/AnyTimeStarsArenaBalanceQueryDto'
LatestBalanceStarsArena: '#/components/schemas/LatestStarsArenaBalanceQueryDto'
operator:
$ref: '#/components/schemas/Operator'
required:
- queries
- operator
LatestStarsArenaBalanceParams:
type: object
properties:
minBalance:
type: string
subjectAddress:
type: string
required:
- minBalance
- subjectAddress
AllTimeNativeBalanceQueryDto:
type: object
properties:
id:
type: string
type:
type: string
enum:
- AllTimeNativeBalance
params:
$ref: '#/components/schemas/DateRangeMinBalanceParam'
required:
- id
- type
- params
InternalServerError:
type: object
properties:
message:
description: The error message describing the reason for the exception
oneOf:
- type: string
- type: array
items:
type: string
statusCode:
type: number
description: The HTTP status code of the response
examples:
- 500
error:
type: string
description: The type of error
examples:
- Internal Server Error
required:
- message
- statusCode
- error
AnyTimeStarsArenaBalanceQueryDto:
type: object
properties:
id:
type: string
type:
type: string
enum:
- AnyTimeStarsArenaBalance
params:
$ref: '#/components/schemas/DateRangeStarsArenaMinBalanceParam'
required:
- id
- type
- params
ServiceUnavailable:
type: object
properties:
message:
description: The error message describing the reason for the exception
oneOf:
- type: string
- type: array
items:
type: string
statusCode:
type: number
description: The HTTP status code of the response
examples:
- 503
error:
type: string
description: The type of error
examples:
- Service Unavailable
required:
- message
- statusCode
- error
AnyTimeNftHoldersQueryDto:
type: object
properties:
id:
type: string
type:
type: string
enum:
- AnyTimeNftHolders
params:
oneOf:
- $ref: '#/components/schemas/TimestampRangeNftHoldersParam'
- $ref: '#/components/schemas/DateRangeNftHoldersParam'
required:
- id
- type
- params
NotFound:
type: object
properties:
message:
description: The error message describing the reason for the exception
oneOf:
- type: string
- type: array
items:
type: string
statusCode:
type: number
description: The HTTP status code of the response
examples:
- 404
error:
type: string
description: The type of error
examples:
- Not Found
required:
- message
- statusCode
- error
DateRangeMinBalanceParam:
type: object
properties:
firstDate:
type: string
lastDate:
type: string
minBalance:
type: string
evmChainId:
type: string
required:
- firstDate
- lastDate
- minBalance
- evmChainId
Network:
type: string
enum:
- mainnet
- fuji
- testnet
TimestampRangeNftHoldersParam:
type: object
properties:
evmChainId:
type: string
contractAddress:
type: string
startTs:
type: number
endTs:
type: number
required:
- evmChainId
- contractAddress
- startTs
- endTs
securitySchemes:
apiKey:
type: apiKey
in: header
name: x-glacier-api-key
description: Api keys provide higher access to rate limits. To obtain an api key, sign up for an account at https://avacloud.io/.
x-speakeasy-retries:
strategy: backoff
backoff:
initialInterval: 500
maxInterval: 60000
maxElapsedTime: 120000
exponent: 1.5
statusCodes:
- 5XX
retryConnectionErrors: true
x-speakeasy-globals:
parameters:
- $ref: '#/components/parameters/GlobalParamChainId'
- $ref: '#/components/parameters/GlobalParamNetwork'
x-execution-weight-values:
free: 1
large: 50
medium: 20
none: 0
small: 10
xl: 100
xxl: 200
x-rpc-method-execution-weights:
eth_accounts: free
eth_blockNumber: small
eth_call: small
eth_coinbase: small
eth_chainId: free
eth_gasPrice: small
eth_getBalance: small
eth_getBlockByHash: small
eth_getBlockByNumber: small
eth_getBlockTransactionCountByNumber: medium
eth_getCode: medium
eth_getLogs: xxl
eth_getStorageAt: medium
eth_getTransactionByBlockNumberAndIndex: medium
eth_getTransactionByHash: small
eth_getTransactionCount: small
eth_getTransactionReceipt: small
eth_signTransaction: medium
eth_sendTransaction: medium
eth_sign: medium
eth_sendRawTransaction: small
eth_syncing: free
net_listening: free
net_peerCount: medium
net_version: free
web3_clientVersion: small
web3_sha3: small
eth_newPendingTransactionFilter: medium
eth_maxPriorityFeePerGas: small
eth_baseFee: small
rpc_modules: free
eth_getChainConfig: small
eth_feeConfig: small
eth_getActivePrecompilesAt: small
x-speakeasy-webhooks:
security:
type: signature
headerName: x-signature
signatureTextEncoding: base64
algorithm: hmac-sha256