openapi: 3.0.3
info:
version: 0.1.89
title: Blockfrost.io ~ API Documentation Cardano » Accounts Cardano » Pools API
x-logo:
url: https://staging.blockfrost.io/images/logo.svg
altText: Blockfrost
contact:
name: Blockfrost Team
url: https://blockfrost.io
email: contact@blockfrost.io
license:
name: MIT
url: https://opensource.org/licenses/MIT
termsOfService: https://blockfrost.io/terms
description: "Blockfrost is an API as a service that allows users to interact with the Cardano blockchain, Midnight blockchain, and parts of their ecosystems.\n\n## Tokens\n\nAfter signing up on https://blockfrost.io, a `project_id` token is automatically generated for each project.\nHTTP header of your request MUST include this `project_id` in order to authenticate against Blockfrost servers.\n\n## Available networks\n\nAt the moment, you can use the following networks. Please, note that each network has its own `project_id`.\n\n
\n \n \n | \n Network\n | \n \n Endpoint\n | \n
\n \n | Cardano mainnet | \n \n https://cardano-mainnet.blockfrost.io/api/v0\n | \n
\n \n | Cardano preprod | \n \n https://cardano-preprod.blockfrost.io/api/v0\n | \n
\n \n | Cardano preview | \n \n https://cardano-preview.blockfrost.io/api/v0\n | \n
\n \n | Midnight mainnet | \n \n https://midnight-mainnet.blockfrost.io/api/v0\n | \n
\n \n | InterPlanetary File System | \n \n https://ipfs.blockfrost.io/api/v0\n | \n
\n \n
\n\n## Concepts\n\n* All endpoints return either a JSON object or an array.\n* Data is returned in *ascending* (oldest first, newest last) order, if not stated otherwise.\n * You might use the `?order=desc` query parameter to reverse this order.\n* By default, we return 100 results at a time. You have to use `?page=2` to list through the results.\n* All time and timestamp related fields (except `server_time`) are in seconds of UNIX time.\n* All amounts are returned in Lovelaces, where 1 ADA = 1 000 000 Lovelaces.\n* Addresses, accounts and pool IDs are in Bech32 format.\n* All values are case sensitive.\n* All hex encoded values are lower case.\n* Examples are not based on real data. Any resemblance to actual events is purely coincidental.\n* We allow to upload files up to 100MB of size to IPFS. This might increase in the future.\n* Only pinned IPFS files are counted towards the IPFS quota.\n* Non-pinned IPFS files are subject to regular garbage collection and will be removed unless pinned.\n* We allow maximum of 100 queued pins per IPFS user.\n\n## Errors\n\n### HTTP Status codes\n\nThe following are HTTP status code your application might receive when reaching Blockfrost endpoints and\nit should handle all of these cases.\n\n* HTTP `400` return code is used when the request is not valid.\n* HTTP `402` return code is used when the projects exceed their daily request limit.\n* HTTP `403` return code is used when the request is not authenticated.\n* HTTP `404` return code is used when the resource doesn't exist.\n* HTTP `418` return code is used when the user has been auto-banned for flooding too much after previously receiving error code `402` or `429`.\n* HTTP `425` return code is used in Cardano networks, when the user has submitted a transaction when the mempool is already full, not accepting new txs straight away.\n* HTTP `425` return code is used in IPFS network, when the user has submitted a pin when the pin queue is already full, not accepting new pins straight away.\n* HTTP `429` return code is used when the user has sent too many requests in a given amount of time and therefore has been rate-limited.\n* HTTP `500` return code is used when our endpoints are having a problem.\n\n### Error codes\n\nAn internal error code number is used for better indication of the error in question. It is passed using the following payload.\n\n```json\n{\n \"status_code\": 403,\n \"error\": \"Forbidden\",\n \"message\": \"Invalid project token.\"\n}\n```\n## Limits\n\nThere are two types of limits we are enforcing:\n\nThe first depends on your plan and is the number of request we allow per day. We defined the day from midnight to midnight of UTC time.\n\nThe second is rate limiting. We limit an end user, distinguished by IP address, to 10 requests per second. On top of that, we allow\neach user to send burst of 500 requests, which cools off at rate of 10 requests per second. In essence, a user is allowed to make another\nwhole burst after (currently) 500/10 = 50 seconds. E.g. if a user attempts to make a call 3 seconds after whole burst, 30 requests will be processed.\nWe believe this should be sufficient for most of the use cases. If it is not and you have a specific use case, please get in touch with us, and\nwe will make sure to take it into account as much as we can.\n\n## SDKs\n\nWe support a number of SDKs that will help you in developing your application on top of Blockfrost.\n\n\n\n\n## Midnight API\n\n\nThe Midnight Indexer API exposes a GraphQL API that enables clients to query and subscribe to blockchain data — blocks, transactions, contracts, and wallet-related events — indexed from the Midnight blockchain.\n\nAvailable networks: `mainnet`, `preprod`, `preview`\n\n| Service | URL | Protocol |\n|---------|-----|----------|\n| **Indexer HTTP API** | `https://midnight-{network}.blockfrost.io/api/v0` | HTTP POST (GraphQL) |\n| **Indexer Subscriptions API** | `wss://midnight-{network}.blockfrost.io/api/v0/ws` | WebSocket |\n| **Node RPC** | `https://rpc.midnight-{network}.blockfrost.io` | JSON-RPC |\n\n\nFor the full documentation — queries, mutations, subscriptions, authentication options, and examples — see the Midnight GraphQL API Reference:\n\n[](./midnight/)\n"
servers:
- url: https://cardano-mainnet.blockfrost.io/api/v0
description: Cardano Mainnet network
- url: https://cardano-preprod.blockfrost.io/api/v0
description: Cardano Preprod network
- url: https://cardano-preview.blockfrost.io/api/v0
description: Cardano Preview network
- url: https://localhost:3000
description: local
security:
- project_id: []
tags:
- name: Cardano » Pools
paths:
/pools:
get:
tags:
- Cardano » Pools
summary: List of stake pools
description: List of registered stake pools.
parameters:
- in: query
name: count
required: false
schema:
type: integer
minimum: 1
maximum: 100
default: 100
description: The number of pools per page.
- in: query
name: page
required: false
schema:
type: integer
minimum: 1
maximum: 21474836
default: 1
description: The page number for listing the results.
- in: query
name: order
required: false
schema:
type: string
enum:
- asc
- desc
default: asc
description: 'The ordering of items from the point of view of the blockchain,
not the page listing itself. By default, we return oldest first, newest last.
'
responses:
'200':
description: Return the list of pools.
content:
application/json:
schema:
$ref: '#/components/schemas/pool_list'
'400':
$ref: '#/components/responses/400'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'418':
$ref: '#/components/responses/418'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/pools/extended:
get:
tags:
- Cardano » Pools
summary: List of stake pools with additional information
description: List of registered stake pools with additional information.
parameters:
- in: query
name: count
required: false
schema:
type: integer
minimum: 1
maximum: 100
default: 100
description: The number of pools per page.
- in: query
name: page
required: false
schema:
type: integer
minimum: 1
maximum: 21474836
default: 1
description: The page number for listing the results.
- in: query
name: order
required: false
schema:
type: string
enum:
- asc
- desc
default: asc
description: 'The ordering of items from the point of view of the blockchain,
not the page listing itself. By default, we return oldest first, newest last.
'
responses:
'200':
description: Return the list of pools.
content:
application/json:
schema:
$ref: '#/components/schemas/pool_list_extended'
'400':
$ref: '#/components/responses/400'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'418':
$ref: '#/components/responses/418'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/pools/retired:
get:
tags:
- Cardano » Pools
summary: List of retired stake pools
description: List of already retired pools.
parameters:
- in: query
name: count
required: false
schema:
type: integer
minimum: 1
maximum: 100
default: 100
description: The number of pools per page.
- in: query
name: page
required: false
schema:
type: integer
minimum: 1
maximum: 21474836
default: 1
description: The page number for listing the results.
- in: query
name: order
required: false
schema:
type: string
enum:
- asc
- desc
default: asc
description: 'The ordering of items from the point of view of the blockchain,
not the page listing itself. By default, we return oldest first, newest last.
'
responses:
'200':
description: Return the pool information content
content:
application/json:
schema:
$ref: '#/components/schemas/pool_list_retire'
'400':
$ref: '#/components/responses/400'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'418':
$ref: '#/components/responses/418'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/pools/retiring:
get:
tags:
- Cardano » Pools
summary: List of retiring stake pools
description: List of stake pools retiring in the upcoming epochs
parameters:
- in: query
name: count
required: false
schema:
type: integer
minimum: 1
maximum: 100
default: 100
description: The number of results displayed on one page.
- in: query
name: page
required: false
schema:
type: integer
minimum: 1
maximum: 21474836
default: 1
description: The page number for listing the results.
- in: query
name: order
required: false
schema:
type: string
enum:
- asc
- desc
default: asc
description: 'The ordering of items from the point of view of the blockchain,
not the page listing itself. By default, we return oldest first, newest last.
'
responses:
'200':
description: Return the pool information content
content:
application/json:
schema:
$ref: '#/components/schemas/pool_list_retire'
'400':
$ref: '#/components/responses/400'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'418':
$ref: '#/components/responses/418'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/pools/{pool_id}:
get:
tags:
- Cardano » Pools
summary: Specific stake pool
description: Pool information.
parameters:
- in: path
name: pool_id
required: true
schema:
type: string
description: Bech32 or hexadecimal pool ID.
example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy
responses:
'200':
description: Return the pool information content
content:
application/json:
schema:
$ref: '#/components/schemas/pool'
'400':
$ref: '#/components/responses/400'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'418':
$ref: '#/components/responses/418'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/pools/{pool_id}/history:
get:
tags:
- Cardano » Pools
summary: Stake pool history
description: 'History of stake pool parameters over epochs.
'
parameters:
- in: path
name: pool_id
required: true
schema:
type: string
description: Bech32 or hexadecimal pool ID.
example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy
- in: query
name: count
required: false
schema:
type: integer
minimum: 1
maximum: 100
default: 100
description: The number of results displayed on one page.
- in: query
name: page
required: false
schema:
type: integer
minimum: 1
maximum: 21474836
default: 1
description: The page number for listing the results
- in: query
name: order
required: false
schema:
type: string
enum:
- asc
- desc
default: asc
description: 'The ordering of items from the point of view of the blockchain,
not the page listing itself. By default, we return oldest first, newest last.
'
responses:
'200':
description: Return the pool information content.
content:
application/json:
schema:
$ref: '#/components/schemas/pool_history'
'400':
$ref: '#/components/responses/400'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'418':
$ref: '#/components/responses/418'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/pools/{pool_id}/metadata:
get:
tags:
- Cardano » Pools
summary: Stake pool metadata
description: 'Stake pool registration metadata.
'
parameters:
- in: path
name: pool_id
required: true
schema:
type: string
description: Bech32 or hexadecimal pool ID.
example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy
responses:
'200':
description: Return the pool metadata content.
content:
application/json:
schema:
anyOf:
- $ref: '#/components/schemas/pool_metadata'
- $ref: '#/components/schemas/empty_object'
'400':
$ref: '#/components/responses/400'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'418':
$ref: '#/components/responses/418'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/pools/{pool_id}/relays:
get:
tags:
- Cardano » Pools
summary: Stake pool relays
description: Relays of a stake pool.
parameters:
- in: path
name: pool_id
required: true
schema:
type: string
description: Bech32 or hexadecimal pool ID.
example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy
responses:
'200':
description: Return the pool relays information content.
content:
application/json:
schema:
$ref: '#/components/schemas/pool_relays'
'400':
$ref: '#/components/responses/400'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'418':
$ref: '#/components/responses/418'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/pools/{pool_id}/delegators:
get:
tags:
- Cardano » Pools
summary: Stake pool delegators
description: List of current stake pools delegators.
parameters:
- in: path
name: pool_id
required: true
schema:
type: string
description: Bech32 or hexadecimal pool ID.
example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy
- in: query
name: count
required: false
schema:
type: integer
minimum: 1
maximum: 100
default: 100
description: The number of results displayed on one page.
- in: query
name: page
required: false
schema:
type: integer
minimum: 1
maximum: 21474836
default: 1
description: The page number for listing the results.
- in: query
name: order
required: false
schema:
type: string
enum:
- asc
- desc
default: asc
description: 'The ordering of items from the point of view of the blockchain,
not the page listing itself. By default, we return oldest first, newest last.
'
responses:
'200':
description: Return the pool delegations.
content:
application/json:
schema:
$ref: '#/components/schemas/pool_delegators'
'400':
$ref: '#/components/responses/400'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'418':
$ref: '#/components/responses/418'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/pools/{pool_id}/blocks:
get:
tags:
- Cardano » Pools
summary: Stake pool blocks
description: List of stake pools blocks.
parameters:
- in: path
name: pool_id
required: true
schema:
type: string
description: Bech32 or hexadecimal pool ID.
example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy
- in: query
name: count
required: false
schema:
type: integer
minimum: 1
maximum: 100
default: 100
description: The number of results displayed on one page.
- in: query
name: page
required: false
schema:
type: integer
minimum: 1
maximum: 21474836
default: 1
description: The page number for listing the results.
- in: query
name: order
required: false
schema:
type: string
enum:
- asc
- desc
default: asc
description: 'The ordering of items from the point of view of the blockchain,
not the page listing itself. By default, we return oldest first, newest last.
'
responses:
'200':
description: Return the pool block list
content:
application/json:
schema:
$ref: '#/components/schemas/pool_blocks'
'400':
$ref: '#/components/responses/400'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'418':
$ref: '#/components/responses/418'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/pools/{pool_id}/updates:
get:
tags:
- Cardano » Pools
summary: Stake pool updates
description: List of certificate updates to the stake pool.
parameters:
- in: path
name: pool_id
required: true
schema:
type: string
description: Bech32 or hexadecimal pool ID.
example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy
- in: query
name: count
required: false
schema:
type: integer
minimum: 1
maximum: 100
default: 100
description: The number of results displayed on one page.
- in: query
name: page
required: false
schema:
type: integer
minimum: 1
maximum: 21474836
default: 1
description: The page number for listing the results.
- in: query
name: order
required: false
schema:
type: string
enum:
- asc
- desc
default: asc
description: 'The ordering of items from the point of view of the blockchain,
not the page listing itself. By default, we return oldest first, newest last.
'
responses:
'200':
description: Return the pool updates history
content:
application/json:
schema:
$ref: '#/components/schemas/pool_updates'
'400':
$ref: '#/components/responses/400'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'418':
$ref: '#/components/responses/418'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/pools/{pool_id}/votes:
get:
tags:
- Cardano » Pools
summary: Stake pool votes
description: History of stake pools votes.
parameters:
- in: path
name: pool_id
required: true
schema:
type: string
description: Bech32 or hexadecimal pool ID.
example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy
- in: query
name: count
required: false
schema:
type: integer
minimum: 1
maximum: 100
default: 100
description: The number of results displayed on one page.
- in: query
name: page
required: false
schema:
type: integer
minimum: 1
maximum: 21474836
default: 1
description: The page number for listing the results.
- in: query
name: order
required: false
schema:
type: string
enum:
- asc
- desc
default: asc
description: 'The ordering of items from the point of view of the blockchain,
not the page listing itself. By default, we return oldest first, newest last.
'
responses:
'200':
description: Return the pool votes.
content:
application/json:
schema:
$ref: '#/components/schemas/pool_votes'
'400':
$ref: '#/components/responses/400'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'418':
$ref: '#/components/responses/418'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
components:
schemas:
pool_list_retire:
type: array
items:
type: object
properties:
pool_id:
type: string
example: pool1z5uqdk7dzdxaae5633fqfcu2eqzy3a3rgtuvy087fdld7yws0xt
description: Bech32 encoded pool ID
epoch:
type: integer
example: 242
description: Retirement epoch number
required:
- pool_id
- epoch
example:
- pool_id: pool19u64770wqp6s95gkajc8udheske5e6ljmpq33awxk326zjaza0q
epoch: 225
- pool_id: pool1dvla4zq98hpvacv20snndupjrqhuc79zl6gjap565nku6et5zdx
epoch: 215
- pool_id: pool1wvccajt4eugjtf3k0ja3exjqdj7t8egsujwhcw4tzj4rzsxzw5w
epoch: 231
pool_list:
type: array
items:
type: string
description: Bech32 encoded pool ID
example:
- pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy
- pool1hn7hlwrschqykupwwrtdfkvt2u4uaxvsgxyh6z63703p2knj288
- pool1ztjyjfsh432eqetadf82uwuxklh28xc85zcphpwq6mmezavzad2
pool_blocks:
type: array
items:
type: string
description: Block hashes
example:
- d8982ca42cfe76b747cc681d35d671050a9e41e9cfe26573eb214e94fe6ff21d
- 026436c539e2ce84c7f77ffe669f4e4bbbb3b9c53512e5857dcba8bb0b4e9a8c
- bcc8487f419b8c668a18ea2120822a05df6dfe1de1f0fac3feba88cf760f303c
- 86bf7b4a274e0f8ec9816171667c1b4a0cfc661dc21563f271acea9482b62df7
pool_metadata:
type: object
properties:
pool_id:
type: string
example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy
description: Bech32 pool ID
hex:
type: string
example: 0f292fcaa02b8b2f9b3c8f9fd8e0bb21abedb692a6d5058df3ef2735
description: Hexadecimal pool ID
url:
type: string
nullable: true
example: https://stakenuts.com/mainnet.json
description: URL to the stake pool metadata
hash:
type: string
nullable: true
example: 47c0c68cb57f4a5b4a87bad896fc274678e7aea98e200fa14a1cb40c0cab1d8c
description: Hash of the metadata file
error:
type: object
description: Present when metadata could not be fetched or validated.
properties:
code:
type: string
description: Stable machine-readable error code.
enum:
- HASH_MISMATCH
- CONNECTION_ERROR
- HTTP_RESPONSE_ERROR
- DECODE_ERROR
- SIZE_EXCEEDED
- UNKNOWN_ERROR
message:
type: string
description: Human-readable description of the error.
required:
- code
- message
ticker:
type: string
nullable: true
example: NUTS
description: Ticker of the stake pool
name:
type: string
nullable: true
example: Stake Nuts
description: Name of the stake pool
description:
type: string
nullable: true
example: The best pool ever
description: Description of the stake pool
homepage:
type: string
nullable: true
example: https://stakentus.com/
description: Home page of the stake pool
required:
- pool_id
- hex
- url
- hash
- ticker
- name
- description
- homepage
pool_list_extended:
type: array
items:
type: object
properties:
pool_id:
type: string
example: pool1z5uqdk7dzdxaae5633fqfcu2eqzy3a3rgtuvy087fdld7yws0xt
description: Bech32 encoded pool ID
hex:
type: string
example: 0f292fcaa02b8b2f9b3c8f9fd8e0bb21abedb692a6d5058df3ef2735
description: Hexadecimal pool ID.
active_stake:
type: string
example: '4200000000'
description: Active delegated amount
live_stake:
type: string
example: '6900000000'
description: Currently delegated amount
live_saturation:
type: number
example: 0.93
blocks_minted:
type: integer
example: 69
description: Total minted blocks
declared_pledge:
type: string
example: '5000000000'
description: Stake pool certificate pledge
margin_cost:
type: number
example: 0.05
description: Margin tax cost of the stake pool
fixed_cost:
type: string
example: '340000000'
description: Fixed tax cost of the stake pool
metadata:
type: object
nullable: true
properties:
url:
type: string
nullable: true
example: https://stakenuts.com/mainnet.json
description: URL to the stake pool metadata
hash:
type: string
nullable: true
example: 47c0c68cb57f4a5b4a87bad896fc274678e7aea98e200fa14a1cb40c0cab1d8c
description: Hash of the metadata file
error:
type: object
description: Present when metadata could not be fetched or validated.
properties:
code:
type: string
description: Stable machine-readable error code.
enum:
- HASH_MISMATCH
- CONNECTION_ERROR
- HTTP_RESPONSE_ERROR
- DECODE_ERROR
- SIZE_EXCEEDED
- UNKNOWN_ERROR
message:
type: string
description: Human-readable description of the error.
required:
- code
- message
ticker:
type: string
nullable: true
example: NUTS
description: Ticker of the stake pool
name:
type: string
nullable: true
example: Stake Nuts
description: Name of the stake pool
description:
type: string
nullable: true
example: The best pool ever
description: Description of the stake pool
homepage:
type: string
nullable: true
example: https://stakentus.com/
description: Home page of the stake pool
required:
- url
- hash
- ticker
- name
- description
- homepage
required:
- pool_id
- hex
- active_stake
- live_stake
- blocks_minted
- live_saturation
- declared_pledge
- margin_cost
- fixed_cost
- metadata
example:
- pool_id: pool19u64770wqp6s95gkajc8udheske5e6ljmpq33awxk326zjaza0q
hex: 2f355f79ee007502d116ecb07e36f985b34cebf2d84118f5c6b455a1
active_stake: '1541200000'
live_stake: '1541400000'
blocks_minted:
type: integer
example: 69
description: Total minted blocks
live_saturation:
type: number
example: 0.93
declared_pledge:
type: string
example: '5000000000'
description: Stake pool certificate pledge
margin_cost:
type: number
example: 0.05
description: Margin tax cost of the stake pool
fixed_cost:
type: string
example: '340000000'
description: Fixed tax cost of the stake pool
metadata:
type: object
properties:
url:
type: string
nullable: true
example: https://stakenuts.com/mainnet.json
description: URL to the stake pool metadata
hash:
type: string
nullable: true
example: 47c0c68cb57f4a5b4a87bad896fc274678e7aea98e200fa14a1cb40c0cab1d8c
description: Hash of the metadata file
ticker:
type: string
nullable: true
example: NUTS
description: Ticker of the stake pool
name:
type: string
nullable: true
example: Stake Nuts
description: Name of the stake pool
description:
type: string
nullable: true
example: The best pool ever
description: Description of the stake pool
homepage:
type: string
nullable: true
example: https://stakentus.com/
description: Home page of the stake pool
- pool_id: pool1dvla4zq98hpvacv20snndupjrqhuc79zl6gjap565nku6et5zdx
hex: 6b3fda88053dc2cee18a7c2736f032182fcc78a2fe912e869aa4edcd
active_stake: '22200000'
live_stake: '48955550'
blocks_minted:
type: integer
example: 69
description: Total minted blocks
live_saturation:
type: number
example: 0.93
declared_pledge:
type: string
example: '5000000000'
description: Stake pool certificate pledge
margin_cost:
type: number
example: 0.05
description: Margin tax cost of the stake pool
fixed_cost:
type: string
example: '340000000'
description: Fixed tax cost of the stake pool
metadata: null
- pool_id: pool1wvccajt4eugjtf3k0ja3exjqdj7t8egsujwhcw4tzj4rzsxzw5w
hex: 73318ec975cf1125a6367cbb1c9a406cbcb3e510e49d7c3aab14aa31
active_stake: '9989541215'
live_stake: '168445464878'
blocks_minted:
type: integer
example: 69
description: Total minted blocks
live_saturation:
type: number
example: 0.93
declared_pledge:
type: string
example: '5000000000'
description: Stake pool certificate pledge
margin_cost:
type: number
example: 0.05
description: Margin tax cost of the stake pool
fixed_cost:
type: string
example: '340000000'
description: Fixed tax cost of the stake pool
metadata: null
pool_delegators:
type: array
items:
type: object
properties:
address:
type: string
description: Bech32 encoded stake addresses
live_stake:
type: string
description: Currently delegated amount
required:
- address
- live_stake
example:
- address: stake1ux4vspfvwuus9uwyp5p3f0ky7a30jq5j80jxse0fr7pa56sgn8kha
live_stake: '1137959159981411'
- address: stake1uylayej7esmarzd4mk4aru37zh9yz0luj3g9fsvgpfaxulq564r5u
live_stake: '16958865648'
- address: stake1u8lr2pnrgf8f7vrs9lt79hc3sxm8s2w4rwvgpncks3axx6q93d4ck
live_stake: '18605647'
pool_votes:
type: array
items:
type: object
properties:
tx_hash:
type: string
description: Hash of the proposal transaction.
cert_index:
type: integer
description: Index of the certificate within the proposal transaction.
vote:
type: string
enum:
- 'yes'
- 'no'
- abstain
description: The Vote. Can be one of yes, no, abstain.
required:
- tx_hash
- cert_index
- vote
example:
- tx_hash: b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5
cert_index: 2
vote: 'yes'
pool_relays:
type: array
items:
type: object
properties:
ipv4:
type: string
nullable: true
example: 4.4.4.4
description: IPv4 address of the relay
ipv6:
type: string
nullable: true
example: https://stakenuts.com/mainnet.json
description: IPv6 address of the relay
dns:
type: string
nullable: true
example: relay1.stakenuts.com
description: DNS name of the relay
dns_srv:
type: string
nullable: true
example: _relays._tcp.relays.stakenuts.com
description: DNS SRV entry of the relay
port:
type: integer
example: 3001
description: Network port of the relay
required:
- ipv4
- ipv6
- dns
- dns_srv
- port
pool_updates:
type: array
items:
type: object
properties:
tx_hash:
type: string
description: Transaction ID
cert_index:
type: integer
description: Certificate within the transaction
action:
type: string
enum:
- registered
- deregistered
description: Action in the certificate
required:
- tx_hash
- cert_index
- action
example:
- tx_hash: 6804edf9712d2b619edb6ac86861fe93a730693183a262b165fcc1ba1bc99cad
cert_index: 0
action: registered
- tx_hash: 9c190bc1ac88b2ab0c05a82d7de8b71b67a9316377e865748a89d4426c0d3005
cert_index: 0
action: deregistered
- tx_hash: e14a75b0eb2625de7055f1f580d70426311b78e0d36dd695a6bdc96c7b3d80e0
cert_index: 1
action: registered
pool_history:
type: array
items:
type: object
properties:
epoch:
type: integer
example: 233
description: Epoch number
blocks:
type: integer
example: 22
description: Number of blocks created by pool
active_stake:
type: string
example: '20485965693569'
description: Active (Snapshot of live stake 2 epochs ago) stake in Lovelaces
active_size:
type: number
example: 1.2345
description: Pool size (percentage) of overall active stake at that epoch
delegators_count:
type: integer
example: 115
description: Number of delegators for epoch
rewards:
type: string
example: '206936253674159'
description: Total rewards received before distribution to delegators
fees:
type: string
example: '1290968354'
description: Pool operator rewards
required:
- epoch
- blocks
- active_stake
- active_size
- delegators_count
- rewards
- fees
pool:
type: object
properties:
pool_id:
type: string
example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy
description: Bech32 pool ID
hex:
type: string
example: 0f292fcaa02b8b2f9b3c8f9fd8e0bb21abedb692a6d5058df3ef2735
description: Hexadecimal pool ID.
vrf_key:
type: string
example: 0b5245f9934ec2151116fb8ec00f35fd00e0aa3b075c4ed12cce440f999d8233
description: VRF key hash
blocks_minted:
type: integer
example: 69
description: Total minted blocks
blocks_epoch:
type: integer
example: 4
description: Number of blocks minted in the current epoch
live_stake:
type: string
example: '6900000000'
live_size:
type: number
example: 0.42
live_saturation:
type: number
example: 0.93
live_delegators:
type: number
example: 127
active_stake:
type: string
example: '4200000000'
active_size:
type: number
example: 0.43
declared_pledge:
type: string
example: '5000000000'
description: Stake pool certificate pledge
live_pledge:
type: string
example: '5000000001'
description: Stake pool current pledge
margin_cost:
type: number
example: 0.05
description: Margin tax cost of the stake pool
fixed_cost:
type: string
example: '340000000'
description: Fixed tax cost of the stake pool
reward_account:
type: string
example: stake1uxkptsa4lkr55jleztw43t37vgdn88l6ghclfwuxld2eykgpgvg3f
description: Bech32 reward account of the stake pool
owners:
type: array
items:
type: string
description: Bech32 accounts of the pool owners
example:
- stake1u98nnlkvkk23vtvf9273uq7cph5ww6u2yq2389psuqet90sv4xv9v
registration:
type: array
items:
type: string
description: Hash of the transaction including registration
example:
- 9f83e5484f543e05b52e99988272a31da373f3aab4c064c76db96643a355d9dc
- 7ce3b8c433bf401a190d58c8c483d8e3564dfd29ae8633c8b1b3e6c814403e95
- 3e6e1200ce92977c3fe5996bd4d7d7e192bcb7e231bc762f9f240c76766535b9
retirement:
type: array
items:
type: string
description: Hash of the transaction including retirement
example: 252f622976d39e646815db75a77289cf16df4ad2b287dd8e3a889ce14c13d1a8
calidus_key:
type: object
nullable: true
description: Last valid Calidus key for the pool
properties:
id:
type: string
example: calidus15yt3nqapz799tvp2lt8adttt29k6xa2xnltahn655tu4sgcph42p7
description: A Bech32-encoded identifier derived from the calidus public key
pub_key:
type: string
example: 57758911253f6b31df2a87c10eb08a2c9b8450768cb8dd0d378d93f7c2e220f0
description: The raw hexadecimal-encoded calidus public key used for verification purposes
nonce:
type: integer
example: 149292000
description: A unique number used once to prevent replay attacks and ensure the uniqueness of the key registration
tx_hash:
type: string
example: f45ed21c6bc1832cf7f11f4bd6ee47ca9684b4f6f8ff8a398aa2df065eac0ba8
description: The transaction hash that submitted the Calidus key registration
block_height:
type: integer
example: 11548408
description: The block height at which this key registration was recorded
block_time:
type: integer
example: 1740858988
description: Block time of the key registration
epoch:
type: integer
example: 543
description: Epoch number of the key registration
required:
- id
- pub_key
- nonce
- tx_hash
- block_height
- block_time
- epoch
required:
- pool_id
- hex
- vrf_key
- blocks_minted
- blocks_epoch
- live_stake
- live_size
- live_saturation
- live_delegators
- active_stake
- active_size
- declared_pledge
- live_pledge
- margin_cost
- fixed_cost
- reward_account
- owners
- registration
- retirement
- calidus_key
empty_object:
type: object
responses:
'429':
description: Usage limit reached
content:
application/json:
schema:
type: object
properties:
status_code:
type: integer
example: 429
error:
type: string
example: Project Over Limit
message:
type: string
example: Usage is over limit.
required:
- error
- message
- status_code
'500':
description: Internal Server Error
content:
application/json:
schema:
type: object
properties:
status_code:
type: integer
example: 500
error:
type: string
example: Internal Server Error
message:
type: string
example: An unexpected response was received from the backend.
required:
- error
- message
- status_code
'403':
description: Authentication secret is missing or invalid
content:
application/json:
schema:
type: object
properties:
status_code:
type: integer
example: 403
error:
type: string
example: Forbidden
message:
type: string
example: Invalid project token.
required:
- error
- message
- status_code
'404':
description: Component not found
content:
application/json:
schema:
type: object
properties:
status_code:
type: integer
example: 404
error:
type: string
example: Not Found
message:
type: string
example: The requested component has not been found.
required:
- error
- message
- status_code
'400':
description: Bad request
content:
application/json:
schema:
type: object
properties:
status_code:
type: integer
example: 400
error:
type: string
example: Bad Request
message:
type: string
example: Backend did not understand your request.
required:
- error
- message
- status_code
'418':
description: IP has been auto-banned for extensive sending of requests after usage limit has been reached
content:
application/json:
schema:
type: object
properties:
status_code:
type: integer
example: 418
error:
type: string
example: Requested Banned
message:
type: string
example: IP has been auto-banned for flooding.
required:
- error
- message
- status_code
securitySchemes:
project_id:
type: apiKey
in: header
name: project_id
description: 'There are multiple token types available based on network you choose
when creating a Blockfrost a project, for a list of token types
see available networks.
'