openapi: 3.0.3 info: version: 0.1.87 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 \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n Network\n \n Endpoint\n
Cardano mainnet\n https://cardano-mainnet.blockfrost.io/api/v0\n
Cardano preprod\n https://cardano-preprod.blockfrost.io/api/v0\n
Cardano preview\n https://cardano-preview.blockfrost.io/api/v0\n
Midnight mainnet\n https://midnight-mainnet.blockfrost.io/api/v0\n
InterPlanetary File System\n https://ipfs.blockfrost.io/api/v0\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 \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Programming languageSDK
JavaScript\n blockfrost-js\n
Haskell\n blockfrost-haskell\n
Python\n blockfrost-python\n
Rust\n blockfrost-rust\n
Golang\n blockfrost-go\n
Ruby\n blockfrost-ruby\n
Java\n blockfrost-java\n
Scala\n blockfrost-scala\n
Swift\n blockfrost-swift\n
Kotlin\n blockfrost-kotlin\n
Elixir\n blockfrost-elixir\n
.NET\n blockfrost-dotnet\n
Arduino\n blockfrost-arduino\n
PHP\n blockfrost-php\n
Crystal\n blockfrost-crystal\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[![Explore the Midnight API →](https://img.shields.io/badge/Explore_the_Midnight_API_→-0033AD?style=for-the-badge)](./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: Blockfrost 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' x-microcks-operation: delay: 0 dispatcher: FALLBACK /pools/extended: get: tags: - Cardano » Pools summary: Blockfrost 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' x-microcks-operation: delay: 0 dispatcher: FALLBACK /pools/retired: get: tags: - Cardano » Pools summary: Blockfrost 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' x-microcks-operation: delay: 0 dispatcher: FALLBACK /pools/retiring: get: tags: - Cardano » Pools summary: Blockfrost 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' x-microcks-operation: delay: 0 dispatcher: FALLBACK /pools/{pool_id}: get: tags: - Cardano » Pools summary: Blockfrost 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' x-microcks-operation: delay: 0 dispatcher: FALLBACK /pools/{pool_id}/history: get: tags: - Cardano » Pools summary: Blockfrost 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' x-microcks-operation: delay: 0 dispatcher: FALLBACK /pools/{pool_id}/metadata: get: tags: - Cardano » Pools summary: Blockfrost 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' x-microcks-operation: delay: 0 dispatcher: FALLBACK /pools/{pool_id}/relays: get: tags: - Cardano » Pools summary: Blockfrost 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' x-microcks-operation: delay: 0 dispatcher: FALLBACK /pools/{pool_id}/delegators: get: tags: - Cardano » Pools summary: Blockfrost 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' x-microcks-operation: delay: 0 dispatcher: FALLBACK /pools/{pool_id}/blocks: get: tags: - Cardano » Pools summary: Blockfrost 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' x-microcks-operation: delay: 0 dispatcher: FALLBACK /pools/{pool_id}/updates: get: tags: - Cardano » Pools summary: Blockfrost 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' x-microcks-operation: delay: 0 dispatcher: FALLBACK /pools/{pool_id}/votes: get: tags: - Cardano » Pools summary: Blockfrost 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' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: responses: '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 '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 '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 '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 '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 '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 schemas: empty_object: type: object 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_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: 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 pool_list: type: array items: type: string description: Bech32 encoded pool ID example: - pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy - pool1hn7hlwrschqykupwwrtdfkvt2u4uaxvsgxyh6z63703p2knj288 - pool1ztjyjfsh432eqetadf82uwuxklh28xc85zcphpwq6mmezavzad2 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_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_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_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_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_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_blocks: type: array items: type: string description: Block hashes example: - d8982ca42cfe76b747cc681d35d671050a9e41e9cfe26573eb214e94fe6ff21d - 026436c539e2ce84c7f77ffe669f4e4bbbb3b9c53512e5857dcba8bb0b4e9a8c - bcc8487f419b8c668a18ea2120822a05df6dfe1de1f0fac3feba88cf760f303c - 86bf7b4a274e0f8ec9816171667c1b4a0cfc661dc21563f271acea9482b62df7 pool_metadata_2: 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 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_2: 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 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 pool_list_extended_2: 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 required: - pool_id - hex - active_stake - live_stake example: - pool_id: pool19u64770wqp6s95gkajc8udheske5e6ljmpq33awxk326zjaza0q hex: 2f355f79ee007502d116ecb07e36f985b34cebf2d84118f5c6b455a1 active_stake: '1541200000' live_stake: '1541400000' - pool_id: pool1dvla4zq98hpvacv20snndupjrqhuc79zl6gjap565nku6et5zdx hex: 6b3fda88053dc2cee18a7c2736f032182fcc78a2fe912e869aa4edcd active_stake: '22200000' live_stake: '48955550' - pool_id: pool1wvccajt4eugjtf3k0ja3exjqdj7t8egsujwhcw4tzj4rzsxzw5w hex: 73318ec975cf1125a6367cbb1c9a406cbcb3e510e49d7c3aab14aa31 active_stake: '9989541215' live_stake: '168445464878' 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. '