openapi: 3.0.3 info: version: 0.1.89 title: Blockfrost.io ~ API Documentation Cardano » Accounts Cardano » Epochs 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 » Epochs paths: /epochs/latest: get: tags: - Cardano » Epochs summary: Latest epoch description: Return the information about the latest, therefore current, epoch. responses: '200': description: Return the data about the epoch content: application/json: schema: $ref: '#/components/schemas/epoch_content' '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' /epochs/latest/parameters: get: tags: - Cardano » Epochs summary: Latest epoch protocol parameters description: Return the protocol parameters for the latest epoch. responses: '200': description: Return the data about the epoch content: application/json: schema: $ref: '#/components/schemas/epoch_param_content' '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' /epochs/{number}: get: tags: - Cardano » Epochs summary: Specific epoch description: Return the content of the requested epoch. parameters: - in: path name: number required: true schema: type: integer description: Number of the epoch example: 225 responses: '200': description: Return the epoch data. content: application/json: schema: $ref: '#/components/schemas/epoch_content' '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' /epochs/{number}/next: get: tags: - Cardano » Epochs summary: Listing of next epochs description: Return the list of epochs following a specific epoch. parameters: - in: path name: number required: true schema: type: integer description: Number of the requested epoch. example: 225 - 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. responses: '200': description: Return the data about the epoch content: application/json: schema: $ref: '#/components/schemas/epoch_content_array' '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' /epochs/{number}/previous: get: tags: - Cardano » Epochs summary: Listing of previous epochs description: Return the list of epochs preceding a specific epoch. parameters: - in: path name: number required: true schema: type: integer description: Number of the epoch example: 225 - 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 responses: '200': description: Return the epoch data content: application/json: schema: $ref: '#/components/schemas/epoch_content_array' '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' /epochs/{number}/stakes: get: tags: - Cardano » Epochs summary: Stake distribution description: Return the active stake distribution for the specified epoch. parameters: - in: path name: number required: true schema: type: integer description: Number of the epoch example: 225 - 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. responses: '200': description: Return the data about the epoch content: application/json: schema: $ref: '#/components/schemas/epoch_stake_content' '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' /epochs/{number}/stakes/{pool_id}: get: tags: - Cardano » Epochs summary: Stake distribution by pool description: Return the active stake distribution for the epoch specified by stake pool. parameters: - in: path name: number required: true schema: type: integer description: Number of the epoch example: 225 - in: path required: true name: pool_id schema: type: string description: Stake pool ID to filter 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. responses: '200': description: Return the data about the epoch content: application/json: schema: $ref: '#/components/schemas/epoch_stake_pool_content' '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' /epochs/{number}/blocks: get: tags: - Cardano » Epochs summary: Block distribution description: Return the blocks minted for the epoch specified. parameters: - in: path name: number required: true schema: type: integer description: Number of the epoch example: 225 - 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 data about the epoch content: application/json: schema: $ref: '#/components/schemas/epoch_block_content' '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' /epochs/{number}/blocks/{pool_id}: get: tags: - Cardano » Epochs summary: Block distribution by pool description: Return the block minted for the epoch specified by stake pool. parameters: - in: path name: number required: true schema: type: integer description: Number of the epoch example: 225 - in: path required: true name: pool_id schema: type: string description: Stake pool ID to filter 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 data about the epoch content: application/json: schema: $ref: '#/components/schemas/epoch_block_content' '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' /epochs/{number}/parameters: get: tags: - Cardano » Epochs summary: Protocol parameters description: Return the protocol parameters for the epoch specified. parameters: - in: path name: number required: true schema: type: integer description: Number of the epoch example: 225 responses: '200': description: Return the data about the epoch content: application/json: schema: $ref: '#/components/schemas/epoch_param_content' '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: epoch_block_content: type: array items: type: string description: Hash of the block example: - d0fa315687e99ccdc96b14cc2ea74a767405d64427b648c470731a9b69e4606e - 38bc6efb92a830a0ed22a64f979d120d26483fd3c811f6622a8c62175f530878 - f3258fcd8b975c061b4fcdcfcbb438807134d6961ec278c200151274893b6b7d epoch_stake_pool_content: type: array items: properties: stake_address: type: string example: stake1u9l5q5jwgelgagzyt6nuaasefgmn8pd25c8e9qpeprq0tdcp0e3uk description: Stake address amount: type: string example: '4440295078' description: Amount of active delegated stake in Lovelaces required: - stake_address - amount epoch_param_content: type: object properties: epoch: type: integer example: 225 description: Epoch number min_fee_a: type: integer example: 44 description: The linear factor for the minimum fee calculation for given epoch min_fee_b: type: integer example: 155381 description: The constant factor for the minimum fee calculation max_block_size: type: integer example: 65536 description: Maximum block body size in Bytes max_tx_size: type: integer example: 16384 description: Maximum transaction size max_block_header_size: type: integer example: 1100 description: Maximum block header size key_deposit: type: string example: '2000000' description: The amount of a key registration deposit in Lovelaces pool_deposit: type: string example: '500000000' description: The amount of a pool registration deposit in Lovelaces e_max: type: integer example: 18 description: Epoch bound on pool retirement n_opt: type: integer example: 150 description: Desired number of pools a0: type: number example: 0.3 description: Pool pledge influence rho: type: number example: 0.003 description: Monetary expansion tau: type: number example: 0.2 description: Treasury expansion decentralisation_param: type: number example: 0.5 description: Percentage of blocks produced by federated nodes extra_entropy: type: string nullable: true example: null description: Seed for extra entropy protocol_major_ver: type: integer example: 2 description: Accepted protocol major version protocol_minor_ver: type: integer example: 0 description: Accepted protocol minor version min_utxo: type: string example: '1000000' description: Minimum UTXO value. Use `coins_per_utxo_size` for Alonzo and later eras deprecated: true min_pool_cost: type: string example: '340000000' description: Minimum stake cost forced on the pool nonce: type: string example: 1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81 description: Epoch number only used once cost_models: additionalProperties: true type: object nullable: true deprecated: true example: PlutusV1: addInteger-cpu-arguments-intercept: 197209 addInteger-cpu-arguments-slope: 0 PlutusV2: addInteger-cpu-arguments-intercept: 197209 addInteger-cpu-arguments-slope: 0 description: Cost models parameters for Plutus Core scripts. Deprecated, use `cost_models_raw` instead. cost_models_raw: additionalProperties: true type: object nullable: true example: PlutusV1: - 100788 - 420 - 1 - 1 - 1000 - 173 - 0 - 1 - 1000 - 59957 - 4 - 1 - 11183 - 32 - 201305 - 8356 - '...' PlutusV2: - 100788 - 420 - 1 - 1 - 1000 - 173 - 0 - 1 - 1000 - 59957 - 4 - 1 - 11183 - 32 - 201305 - 8356 - '...' PlutusV3: - 100788 - 420 - 1 - 1 - 1000 - 173 - 0 - 1 - 1000 - 59957 - 4 - 1 - 11183 - 32 - 201305 - 8356 - '...' description: Cost models parameters for Plutus Core scripts in raw list form price_mem: type: number nullable: true example: 0.0577 description: The per word cost of script memory usage price_step: type: number nullable: true example: 7.21e-05 description: The cost of script execution step usage max_tx_ex_mem: type: string nullable: true example: '10000000' description: The maximum number of execution memory allowed to be used in a single transaction max_tx_ex_steps: type: string nullable: true example: '10000000000' description: The maximum number of execution steps allowed to be used in a single transaction max_block_ex_mem: type: string nullable: true example: '50000000' description: The maximum number of execution memory allowed to be used in a single block max_block_ex_steps: type: string nullable: true example: '40000000000' description: The maximum number of execution steps allowed to be used in a single block max_val_size: type: string nullable: true example: '5000' description: The maximum Val size collateral_percent: type: integer nullable: true example: 150 description: The percentage of the transactions fee which must be provided as collateral when including non-native scripts max_collateral_inputs: type: integer nullable: true example: 3 description: The maximum number of collateral inputs allowed in a transaction coins_per_utxo_size: type: string nullable: true example: '34482' description: Cost per UTxO word for Alonzo. Cost per UTxO byte for Babbage and later. coins_per_utxo_word: type: string nullable: true example: '34482' deprecated: true description: Cost per UTxO word for Alonzo. Cost per UTxO byte for Babbage and later. pvt_motion_no_confidence: type: number nullable: true description: Pool Voting threshold for motion of no-confidence. pvt_committee_normal: nullable: true type: number description: Pool Voting threshold for new committee/threshold (normal state). pvt_committee_no_confidence: nullable: true type: number description: Pool Voting threshold for new committee/threshold (state of no-confidence). pvt_hard_fork_initiation: nullable: true type: number description: Pool Voting threshold for hard-fork initiation. dvt_motion_no_confidence: nullable: true type: number description: DRep Vote threshold for motion of no-confidence. dvt_committee_normal: nullable: true type: number description: DRep Vote threshold for new committee/threshold (normal state). dvt_committee_no_confidence: nullable: true type: number description: DRep Vote threshold for new committee/threshold (state of no-confidence). dvt_update_to_constitution: nullable: true type: number description: DRep Vote threshold for update to the Constitution. dvt_hard_fork_initiation: nullable: true type: number description: DRep Vote threshold for hard-fork initiation. dvt_p_p_network_group: nullable: true type: number description: DRep Vote threshold for protocol parameter changes, network group. dvt_p_p_economic_group: nullable: true type: number description: DRep Vote threshold for protocol parameter changes, economic group. dvt_p_p_technical_group: nullable: true type: number description: DRep Vote threshold for protocol parameter changes, technical group. dvt_p_p_gov_group: nullable: true type: number description: DRep Vote threshold for protocol parameter changes, governance group. dvt_treasury_withdrawal: nullable: true type: number description: DRep Vote threshold for treasury withdrawal. committee_min_size: type: string nullable: true description: Minimal constitutional committee size. committee_max_term_length: type: string nullable: true description: Constitutional committee term limits. gov_action_lifetime: type: string nullable: true description: Governance action expiration. gov_action_deposit: type: string nullable: true description: Governance action deposit. drep_deposit: type: string nullable: true description: DRep deposit amount. drep_activity: type: string nullable: true description: DRep activity period. pvtpp_security_group: type: number nullable: true deprecated: true description: Pool Voting threshold for security-relevant protocol parameters changes. Renamed to pvt_p_p_security_group. pvt_p_p_security_group: type: number nullable: true description: Pool Voting threshold for security-relevant protocol parameters changes. min_fee_ref_script_cost_per_byte: type: number nullable: true required: - epoch - min_fee_a - min_fee_b - max_block_size - max_tx_size - max_block_header_size - key_deposit - pool_deposit - e_max - n_opt - a0 - rho - tau - decentralisation_param - extra_entropy - protocol_major_ver - protocol_minor_ver - min_utxo - min_pool_cost - nonce - cost_models - price_mem - price_step - max_tx_ex_mem - max_tx_ex_steps - max_block_ex_mem - max_block_ex_steps - max_val_size - collateral_percent - max_collateral_inputs - coins_per_utxo_size - coins_per_utxo_word - pvt_motion_no_confidence - pvt_committee_normal - pvt_committee_no_confidence - pvt_hard_fork_initiation - dvt_motion_no_confidence - dvt_committee_normal - dvt_committee_no_confidence - dvt_update_to_constitution - dvt_hard_fork_initiation - dvt_p_p_network_group - dvt_p_p_economic_group - dvt_p_p_technical_group - dvt_p_p_gov_group - dvt_treasury_withdrawal - committee_min_size - committee_max_term_length - gov_action_lifetime - gov_action_deposit - drep_deposit - drep_activity - pvtpp_security_group - pvt_p_p_security_group - min_fee_ref_script_cost_per_byte epoch_content: type: object properties: epoch: type: integer example: 225 description: Epoch number start_time: type: integer example: 1603403091 description: Unix time of the start of the epoch end_time: type: integer example: 1603835086 description: Unix time of the end of the epoch first_block_time: type: integer example: 1603403092 description: Unix time of the first block of the epoch last_block_time: type: integer example: 1603835084 description: Unix time of the last block of the epoch block_count: type: integer example: 21298 description: Number of blocks within the epoch tx_count: type: integer example: 17856 description: Number of transactions within the epoch output: type: string example: '7849943934049314' description: Sum of all the transactions within the epoch in Lovelaces fees: type: string example: '4203312194' description: Sum of all the fees within the epoch in Lovelaces active_stake: type: string nullable: true example: '784953934049314' description: Sum of all the active stakes within the epoch in Lovelaces required: - epoch - start_time - end_time - first_block_time - last_block_time - block_count - tx_count - output - fees - active_stake epoch_stake_content: type: array items: type: object properties: stake_address: type: string example: stake1u9l5q5jwgelgagzyt6nuaasefgmn8pd25c8e9qpeprq0tdcp0e3uk description: Stake address pool_id: type: string example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy description: Bech32 prefix of the pool delegated to amount: type: string example: '4440295078' description: Amount of active delegated stake in Lovelaces required: - stake_address - pool_id - amount epoch_content_array: type: array items: $ref: '#/components/schemas/epoch_content' 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. '