From e89875db75810c93050355db093b4546a0d9b5e5 Mon Sep 17 00:00:00 2001
From: 1000101
- Hosted Endpoint only available for hosted variant.
-
- Hosted Endpoint only available for hosted variant.
-
- Hosted Endpoint only available for hosted variant.
-
Hosted Endpoint only available for hosted variant.
+ Hosted Endpoint only available for hosted variant.
+
+ Hosted Endpoint only available for hosted variant.
+
+ Hosted Endpoint only available for hosted variant.
+
- Hosted Endpoint only available for hosted variant.
-
-
- Hosted Endpoint only available for hosted variant. -
+ - Cardano » Assets + summary: Asset txs + description: List of a specific asset transactions parameters: - - in: header - name: Content-Type + - in: path + name: asset required: true + schema: + type: string + description: Concatenation of the policy_id and hex-encoded asset_name + example: b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e + - 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: - - application/json - requestBody: - description: JSON payload - required: true - content: - application/json: - schema: - type: object - properties: - cbor: - type: string - description: Transaction CBOR (encoded using base64 or base16). - additionalUtxoSet: - type: array - description: Additional UTXO as an array of tuples [TxIn, TxOut]. See https://ogmios.dev/mini-protocols/local-tx-submission/#additional-utxo-set. - items: - type: array - minItems: 2 - maxItems: 2 - items: - anyOf: - - type: object - description: TxIn - properties: - txId: - type: string - description: Transaction hash for the input - index: - type: number - description: Index of the output within the transaction - - type: object - description: TxOut - properties: - address: - type: string - description: Output address - value: - type: object - properties: - coins: - type: number - description: Lovelace amount - assets: - type: object - description: Assets amount - additionalProperties: - type: number - required: - - coins - datum_hash: - type: string - datum: - type: object - additionalProperties: true - script: - type: object - additionalProperties: true - required: - - address - - value - required: - - cbor - x-codeSamples: - - lang: Shell - label: cURL - source: | - # Assuming TxCbor is a CBOR serialized transaction encoded using base16 or base64 - # For a structure of additional UTXO set see https://ogmios.dev/mini-protocols/local-tx-submission/#additional-utxo-set - curl "https://cardano-mainnet.blockfrost.io/api/v0/utils/txs/evaluate/utxos" \ - -X POST \ - -H "Content-Type: application/json" \ - -H "project_id: $PROJECT_ID" \ - -d '{"cbor":"-
- Hosted Endpoint only available for hosted variant. -
- x-codeSamples: - - lang: Shell - label: cURL - source: | - curl "https://ipfs.blockfrost.io/api/v0/ipfs/add" \ - -X POST \ - -H "project_id: $PROJECT_ID" \ - -F "file=@./README.md" - requestBody: - content: - multipart/form-data: - schema: - type: object - properties: - file: - type: string - format: binary - responses: - '200': - description: Returns information about added IPFS object - content: - application/json: + - Cardano » Assets + summary: Asset transactions + description: List of a specific asset transactions + parameters: + - in: path + name: asset + required: true + schema: + type: string + description: Concatenation of the policy_id and hex-encoded asset_name + example: b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e + - 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 information about the history of a specific asset + content: + application/json: schema: - type: object - properties: - name: - type: string - example: README.md - description: Name of the file - ipfs_hash: - type: string - example: QmZbHqiCxKEVX7QfijzJTkZiSi3WEVTcvANgNAWzDYgZDr - description: IPFS hash of the file - size: - type: string - example: '125297' - description: IPFS node size in Bytes - required: - - name - - ipfs_hash - - size + $ref: '#/components/schemas/asset_transactions' '400': $ref: '#/components/responses/400' '403': @@ -4693,34 +4622,57 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /ipfs/gateway/{IPFS_path}: - servers: - - url: https://ipfs.blockfrost.io/api/v0 + /assets/{asset}/addresses: get: tags: - - IPFS » Gateway - summary: Relay to an IPFS gateway - description: | - Retrieve an object from the IPFS gateway (useful if you do not want to rely on a public gateway, such as `ipfs.blockfrost.dev`). - -- Hosted Endpoint only available for hosted variant. -
+ - Cardano » Assets + summary: Asset addresses + description: List of a addresses containing a specific asset parameters: - in: path + name: asset required: true - name: IPFS_path schema: type: string - description: Path to the IPFS object + description: Concatenation of the policy_id and hex-encoded asset_name + example: b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e + - 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: Returns the object content + description: Return the information about the history of a specific asset content: - application/octet-stream: + application/json: schema: - type: string - format: binary + $ref: '#/components/schemas/asset_addresses' '400': $ref: '#/components/responses/400' '403': @@ -4733,42 +4685,57 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /ipfs/pin/add/{IPFS_path}: - servers: - - url: https://ipfs.blockfrost.io/api/v0 - post: + /assets/policy/{policy_id}: + get: tags: - - IPFS » Pins - summary: Pin an object - description: Pinning is necessary to avoid regular garbage collection (deletion) of IPFS objects. Non-pinned objects are regularly being removed without prior notice. Pinned objects are counted in your user storage quota. + - Cardano » Assets + summary: Assets of a specific policy + description: List of asset minted under a specific policy parameters: - in: path + name: policy_id required: true - name: IPFS_path schema: type: string - description: Path to the IPFS object + description: Specific policy_id + example: 476039a0949cf0b22f6a800f56780184c44533887ca6e821007840c3 + - 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: Returns pinned object + description: Return the information about a specific asset content: application/json: schema: - type: object - properties: - ipfs_hash: - type: string - example: QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8 - description: IPFS hash of the pinned object - state: - type: string - enum: - - queued|pinned|unpinned|failed|gc - example: queued - description: State of the pin action - required: - - ipfs_hash - - state + $ref: '#/components/schemas/asset_policy' '400': $ref: '#/components/responses/400' '403': @@ -4777,25 +4744,16 @@ paths: $ref: '#/components/responses/404' '418': $ref: '#/components/responses/418' - '425': - $ref: '#/components/responses/425-2' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /ipfs/pin/list: - servers: - - url: https://ipfs.blockfrost.io/api/v0 + /scripts: get: tags: - - IPFS » Pins - summary: List pinned objects - description: | - List objects pinned to local storage - -- Hosted Endpoint only available for hosted variant. -
+ - Cardano » Scripts + summary: Scripts + description: List of scripts. parameters: - in: query name: count @@ -4829,46 +4787,11 @@ paths: not the page listing itself. By default, we return oldest first, newest last. responses: '200': - description: Returns pinned objects + description: Return list of scripts content: application/json: schema: - type: array - items: - type: object - properties: - time_created: - type: integer - description: Creation time of the IPFS object on our backends - example: 1615551024 - time_pinned: - type: integer - description: Pin time of the IPFS object on our backends - example: 1615551024 - ipfs_hash: - type: string - description: IPFS hash of the pinned object - example: QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx - size: - type: string - description: Size of the object in Bytes - example: '1615551024' - state: - type: string - enum: - - queued|pinned|unpinned|failed|gc - description: | - State of the pinned object, which is `queued` when we are retriving object. If this - is successful the state is changed to `pinned` or `failed` if not. The state `gc` means the - pinned item has been garbage collected due to account being over storage quota or after it has - been moved to `unpinned` state by removing the object pin. - example: pinned - required: - - time_created - - time_pinned - - ipfs_hash - - size - - state + $ref: '#/components/schemas/scripts' '400': $ref: '#/components/responses/400' '403': @@ -4881,67 +4804,27 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /ipfs/pin/list/{IPFS_path}: - servers: - - url: https://ipfs.blockfrost.io/api/v0 + /scripts/{script_hash}: get: tags: - - IPFS » Pins - summary: Get details about pinned object - description: | - Get information about locally pinned IPFS object - -- Hosted Endpoint only available for hosted variant. -
- parameters: + - Cardano » Scripts + summary: Specific script + description: Information about a specific script + parameters: - in: path + name: script_hash required: true - name: IPFS_path schema: type: string - description: The path to the IPFS object + description: Hash of the script + example: e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e responses: '200': - description: Returns the pins pinned + description: Return the information about a specific script content: application/json: schema: - type: object - properties: - time_created: - type: integer - description: Time of the creation of the IPFS object on our backends - example: 1615551024 - time_pinned: - type: integer - description: Time of the pin of the IPFS object on our backends - example: 1615551024 - ipfs_hash: - type: string - description: IPFS hash of the pinned object - example: QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx - size: - type: string - description: Size of the object in Bytes - example: '1615551024' - state: - type: string - enum: - - queued|pinned|unpinned|failed|gc - description: | - State of the pinned object. We define 5 states: `queued`, `pinned`, `unpinned`, `failed`, `gc`. - When the object is pending retrieval (i.e. after `/ipfs/pin/add/{IPFS_path}`), the state is `queued`. - If the object is already successfully retrieved, state is changed to `pinned` or `failed` otherwise. - When object is unpinned (i.e. after `/ipfs/pin/remove/{IPFS_path}`) it is marked for garbage collection. - State `gc` means that a previously `unpinned` item has been garbage collected due to account being over storage quota. - example: pinned - required: - - time_created - - time_pinned - - ipfs_hash - - size - - state + $ref: '#/components/schemas/script' '400': $ref: '#/components/responses/400' '403': @@ -4954,47 +4837,27 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /ipfs/pin/remove/{IPFS_path}: - servers: - - url: https://ipfs.blockfrost.io/api/v0 - post: + /scripts/{script_hash}/json: + get: tags: - - IPFS » Pins - summary: Remove a IPFS pin - description: | - Remove pinned objects from local storage - -- Hosted Endpoint only available for hosted variant. -
+ - Cardano » Scripts + summary: Script JSON + description: JSON representation of a `timelock` script parameters: - in: path + name: script_hash required: true - name: IPFS_path schema: type: string - description: The path to the IPFS object + description: Hash of the script + example: e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e responses: '200': - description: Returns the pins removed + description: Return the JSON representation of a `timelock` script content: application/json: schema: - type: object - properties: - ipfs_hash: - type: string - example: QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8 - description: IPFS hash of the pinned object - state: - type: string - enum: - - queued|pinned|unpinned|failed|gc - example: unpinned - description: State of the pin action - required: - - ipfs_hash - - state + $ref: '#/components/schemas/script_json' '400': $ref: '#/components/responses/400' '403': @@ -5007,19 +4870,27 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /metrics: + /scripts/{script_hash}/cbor: get: tags: - - Metrics - summary: Blockfrost usage metrics - description: History of your Blockfrost usage metrics in the past 30 days. + - Cardano » Scripts + summary: Script CBOR + description: CBOR representation of a `plutus` script + parameters: + - in: path + name: script_hash + required: true + schema: + type: string + description: Hash of the script + example: e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e responses: '200': - description: Return the last 30 days of metrics + description: Return the CBOR representation of a `plutus` script content: application/json: schema: - $ref: '#/components/schemas/metrics' + $ref: '#/components/schemas/script_cbor' '400': $ref: '#/components/responses/400' '403': @@ -5032,20 +4903,57 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /metrics/endpoints: + /scripts/{script_hash}/redeemers: get: tags: - - Metrics - summary: Blockfrost endpoint usage metrics - description: | - History of your Blockfrost usage metrics per endpoint in the past 30 days. + - Cardano » Scripts + summary: Redeemers of a specific script + description: List of redeemers of a specific script + parameters: + - in: path + name: script_hash + required: true + schema: + type: string + description: Hash of the script + example: e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e + - 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 last 30 days of metrics + description: Return the information about redeemers of a specific script content: application/json: schema: - $ref: '#/components/schemas/metrics_endpoints' + $ref: '#/components/schemas/script_redeemers' '400': $ref: '#/components/responses/400' '403': @@ -5058,19 +4966,27 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /network: + /scripts/datum/{datum_hash}: get: tags: - - Cardano » Network - summary: Network information - description: Return detailed network information. + - Cardano » Scripts + summary: Datum value + description: Query JSON value of a datum by its hash + parameters: + - in: path + name: datum_hash + required: true + schema: + type: string + description: Hash of the datum + example: db583ad85881a96c73fbb26ab9e24d1120bb38f45385664bb9c797a2ea8d9a2d responses: '200': - description: Return detailed network information. + description: Return the datum value content: application/json: schema: - $ref: '#/components/schemas/network' + $ref: '#/components/schemas/script_datum' '400': $ref: '#/components/responses/400' '403': @@ -5083,21 +4999,27 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /network/eras: + /scripts/datum/{datum_hash}/cbor: get: tags: - - Cardano » Network - summary: Query summary of blockchain eras - description: | - Returns start and end of each era along with - parameters that can vary between hard forks. + - Cardano » Scripts + summary: Datum CBOR value + description: Query CBOR serialised datum by its hash + parameters: + - in: path + name: datum_hash + required: true + schema: + type: string + description: Hash of the datum + example: db583ad85881a96c73fbb26ab9e24d1120bb38f45385664bb9c797a2ea8d9a2d responses: '200': - description: Returns era summaries content. + description: Return the CBOR serialised datum value content: application/json: schema: - $ref: '#/components/schemas/network-eras' + $ref: '#/components/schemas/script_datum_cbor' '400': $ref: '#/components/responses/400' '403': @@ -5106,32 +5028,45 @@ paths: $ref: '#/components/responses/404' '418': $ref: '#/components/responses/418' - '425': - $ref: '#/components/responses/425' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /nutlink/{address}: + /utils/addresses/xpub/{xpub}/{role}/{index}: get: tags: - - Nut.link - summary: Specific nut.link address - description: List metadata about specific address + - Cardano » Utilities + summary: Derive an address + description: Derive Shelley address from an xpub parameters: - in: path + name: xpub required: true - name: address schema: type: string - description: Address of a metadata oracle + description: Hex xpub + example: d507c8f866691bd96e131334c355188b1a1d0b2fa0ab11545075aab332d77d9eb19657ad13ee581b56b0f8d744d66ca356b93d42fe176b3de007d53e9c4c4e7a + - in: path + name: role + required: true + schema: + type: integer + description: Account role + example: 0 + - in: path + name: index + required: true + schema: + type: integer + description: Address index + example: 2 responses: '200': - description: Return the metadata about metadata oracle + description: Return derivated Shelley address content: application/json: schema: - $ref: '#/components/schemas/nutlink_address' + $ref: '#/components/schemas/utils_addresses_xpub' '400': $ref: '#/components/responses/400' '403': @@ -5144,56 +5079,62 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /nutlink/{address}/tickers: - get: + /utils/txs/evaluate: + post: tags: - - Nut.link - summary: List of tickers of an oracle - description: List of records of a specific oracle + - Cardano » Utilities + summary: Submit a transaction for execution units evaluation + description: | + Submit an already serialized transaction to evaluate how much execution units it requires. + ++ Hosted Endpoint only available for hosted variant. +
parameters: - - in: path + - in: header + name: Content-Type required: true - name: address - schema: - type: string - description: Address of a metadata oracle - - 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. + - application/cbor + x-codeSamples: + - lang: Shell + label: cURL + source: | + # Assuming `tx.data` is a CBOR serialized transaction on the file-system. + # (encoded using base16 or base64) + curl "https://cardano-mainnet.blockfrost.io/api/v0/utils/txs/evaluate" \ + -X POST \ + -H "Content-Type: application/cbor" \ + -H "project_id: $PROJECT_ID" \ + --data @./tx.data + requestBody: + description: | + The transaction to submit, serialized in CBOR. + required: true + content: + application/cbor: + schema: + type: string + description: | + The transaction to submit, serialized in CBOR. + example: | + 83a400818258208911f640d452c3be4ff3d89db63b41ce048c056951286e2e28bbf8a51588ab44000181825839009493315cd92eb5d8c4304e67b7e16ae36d61d34502694657811a2c8e32c728d3861e164cab28cb8f006448139c8f1740ffb8e7aa9e5232dc1a10b2531f021a00029519075820cb798b0bce50604eaf2e0dc89367896b18f0a6ef6b32b57e3c9f83f8ee71e608a1008182582073fea80d424276ad0978d4fe5310e8bc2d485f5f6bb3bf87612989f112ad5a7d5840c40425229749a9434763cf01b492057fd56d7091a6372eaa777a1c9b1ca508c914e6a4ee9c0d40fc10952ed668e9ad65378a28b149de6bd4204bd9f095b0a902a11907b0a1667469636b657281a266736f757263656b736f757263655f6e616d656576616c7565736675676961742076656e69616d206d696e7573 responses: '200': - description: Return the tickers provided by the metadata oracle + description: | ++
+ Hosted Endpoint only available for hosted variant. +
parameters: - - in: path - required: true - name: address - schema: - type: string - description: Address of a metadata oracle - - in: path + - in: header + name: Content-Type required: true - name: ticker - schema: - type: string - description: Ticker for the pool record - - 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. + - application/json + requestBody: + description: JSON payload + required: true + content: + application/json: + schema: + type: object + properties: + cbor: + type: string + description: Transaction CBOR (encoded using base64 or base16). + additionalUtxoSet: + type: array + description: Additional UTXO as an array of tuples [TxIn, TxOut]. See https://ogmios.dev/mini-protocols/local-tx-submission/#additional-utxo-set. + items: + type: array + minItems: 2 + maxItems: 2 + items: + anyOf: + - type: object + description: TxIn + properties: + txId: + type: string + description: Transaction hash for the input + index: + type: number + description: Index of the output within the transaction + - type: object + description: TxOut + properties: + address: + type: string + description: Output address + value: + type: object + properties: + coins: + type: number + description: Lovelace amount + assets: + type: object + description: Assets amount + additionalProperties: + type: number + required: + - coins + datum_hash: + type: string + datum: + type: object + additionalProperties: true + script: + type: object + additionalProperties: true + required: + - address + - value + required: + - cbor + x-codeSamples: + - lang: Shell + label: cURL + source: | + # Assuming TxCbor is a CBOR serialized transaction encoded using base16 or base64 + # For a structure of additional UTXO set see https://ogmios.dev/mini-protocols/local-tx-submission/#additional-utxo-set + curl "https://cardano-mainnet.blockfrost.io/api/v0/utils/txs/evaluate/utxos" \ + -X POST \ + -H "Content-Type: application/json" \ + -H "project_id: $PROJECT_ID" \ + -d '{"cbor":"+
+ Hosted Endpoint only available for hosted variant. +
+ x-codeSamples: + - lang: Shell + label: cURL + source: | + curl "https://ipfs.blockfrost.io/api/v0/ipfs/add" \ + -X POST \ + -H "project_id: $PROJECT_ID" \ + -F "file=@./README.md" + requestBody: + content: + multipart/form-data: + schema: + type: object + properties: + file: + type: string + format: binary + responses: + '200': + description: Returns information about added IPFS object + content: + application/json: + schema: + type: object + properties: + name: + type: string + example: README.md + description: Name of the file + ipfs_hash: + type: string + example: QmZbHqiCxKEVX7QfijzJTkZiSi3WEVTcvANgNAWzDYgZDr + description: IPFS hash of the file + size: + type: string + example: '125297' + description: IPFS node size in Bytes + required: + - name + - ipfs_hash + - size '400': $ref: '#/components/responses/400' '403': @@ -5336,214 +5336,1640 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' -components: - schemas: - onchain_metadata_cip25: - $ref: '#/components/schemas/asset_onchain_metadata_cip25' - onchain_metadata_cip68_ft_333: - $ref: '#/components/schemas/asset_onchain_metadata_cip68_ft_333' - onchain_metadata_cip68_nft_222: - $ref: '#/components/schemas/asset_onchain_metadata_cip68_nft_222' - onchain_metadata_cip68_rft_444: - $ref: '#/components/schemas/asset_onchain_metadata_cip68_rft_444' - block_content: + /ipfs/gateway/{IPFS_path}: + servers: + - url: https://ipfs.blockfrost.io/api/v0 + get: + tags: + - IPFS » Gateway + summary: Relay to an IPFS gateway + description: | + Retrieve an object from the IPFS gateway (useful if you do not want to rely on a public gateway, such as `ipfs.blockfrost.dev`). + ++ Hosted Endpoint only available for hosted variant. +
+ parameters: + - in: path + required: true + name: IPFS_path + schema: + type: string + description: Path to the IPFS object + responses: + '200': + description: Returns the object content + content: + application/octet-stream: + schema: + type: string + format: binary + '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' + /ipfs/pin/add/{IPFS_path}: + servers: + - url: https://ipfs.blockfrost.io/api/v0 + post: + tags: + - IPFS » Pins + summary: Pin an object + description: Pinning is necessary to avoid regular garbage collection (deletion) of IPFS objects. Non-pinned objects are regularly being removed without prior notice. Pinned objects are counted in your user storage quota. + parameters: + - in: path + required: true + name: IPFS_path + schema: + type: string + description: Path to the IPFS object + responses: + '200': + description: Returns pinned object + content: + application/json: + schema: + type: object + properties: + ipfs_hash: + type: string + example: QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8 + description: IPFS hash of the pinned object + state: + type: string + enum: + - queued|pinned|unpinned|failed|gc + example: queued + description: State of the pin action + required: + - ipfs_hash + - state + '400': + $ref: '#/components/responses/400' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '418': + $ref: '#/components/responses/418' + '425': + $ref: '#/components/responses/425-2' + '429': + $ref: '#/components/responses/429' + '500': + $ref: '#/components/responses/500' + /ipfs/pin/list: + servers: + - url: https://ipfs.blockfrost.io/api/v0 + get: + tags: + - IPFS » Pins + summary: List pinned objects + description: | + List objects pinned to local storage + ++ Hosted Endpoint only available for hosted variant. +
+ 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: Returns pinned objects + content: + application/json: + schema: + type: array + items: + type: object + properties: + time_created: + type: integer + description: Creation time of the IPFS object on our backends + example: 1615551024 + time_pinned: + type: integer + description: Pin time of the IPFS object on our backends + example: 1615551024 + ipfs_hash: + type: string + description: IPFS hash of the pinned object + example: QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx + size: + type: string + description: Size of the object in Bytes + example: '1615551024' + state: + type: string + enum: + - queued|pinned|unpinned|failed|gc + description: | + State of the pinned object, which is `queued` when we are retriving object. If this + is successful the state is changed to `pinned` or `failed` if not. The state `gc` means the + pinned item has been garbage collected due to account being over storage quota or after it has + been moved to `unpinned` state by removing the object pin. + example: pinned + required: + - time_created + - time_pinned + - ipfs_hash + - size + - state + '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' + /ipfs/pin/list/{IPFS_path}: + servers: + - url: https://ipfs.blockfrost.io/api/v0 + get: + tags: + - IPFS » Pins + summary: Get details about pinned object + description: | + Get information about locally pinned IPFS object + ++ Hosted Endpoint only available for hosted variant. +
+ parameters: + - in: path + required: true + name: IPFS_path + schema: + type: string + description: The path to the IPFS object + responses: + '200': + description: Returns the pins pinned + content: + application/json: + schema: + type: object + properties: + time_created: + type: integer + description: Time of the creation of the IPFS object on our backends + example: 1615551024 + time_pinned: + type: integer + description: Time of the pin of the IPFS object on our backends + example: 1615551024 + ipfs_hash: + type: string + description: IPFS hash of the pinned object + example: QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx + size: + type: string + description: Size of the object in Bytes + example: '1615551024' + state: + type: string + enum: + - queued|pinned|unpinned|failed|gc + description: | + State of the pinned object. We define 5 states: `queued`, `pinned`, `unpinned`, `failed`, `gc`. + When the object is pending retrieval (i.e. after `/ipfs/pin/add/{IPFS_path}`), the state is `queued`. + If the object is already successfully retrieved, state is changed to `pinned` or `failed` otherwise. + When object is unpinned (i.e. after `/ipfs/pin/remove/{IPFS_path}`) it is marked for garbage collection. + State `gc` means that a previously `unpinned` item has been garbage collected due to account being over storage quota. + example: pinned + required: + - time_created + - time_pinned + - ipfs_hash + - size + - state + '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' + /ipfs/pin/remove/{IPFS_path}: + servers: + - url: https://ipfs.blockfrost.io/api/v0 + post: + tags: + - IPFS » Pins + summary: Remove a IPFS pin + description: | + Remove pinned objects from local storage + ++ Hosted Endpoint only available for hosted variant. +
+ parameters: + - in: path + required: true + name: IPFS_path + schema: + type: string + description: The path to the IPFS object + responses: + '200': + description: Returns the pins removed + content: + application/json: + schema: + type: object + properties: + ipfs_hash: + type: string + example: QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8 + description: IPFS hash of the pinned object + state: + type: string + enum: + - queued|pinned|unpinned|failed|gc + example: unpinned + description: State of the pin action + required: + - ipfs_hash + - state + '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' + /metrics: + get: + tags: + - Metrics + summary: Blockfrost usage metrics + description: History of your Blockfrost usage metrics in the past 30 days. + responses: + '200': + description: Return the last 30 days of metrics + content: + application/json: + schema: + $ref: '#/components/schemas/metrics' + '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' + /metrics/endpoints: + get: + tags: + - Metrics + summary: Blockfrost endpoint usage metrics + description: | + History of your Blockfrost usage metrics per endpoint in the past 30 days. + responses: + '200': + description: Return the last 30 days of metrics + content: + application/json: + schema: + $ref: '#/components/schemas/metrics_endpoints' + '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' + /network: + get: + tags: + - Cardano » Network + summary: Network information + description: Return detailed network information. + responses: + '200': + description: Return detailed network information. + content: + application/json: + schema: + $ref: '#/components/schemas/network' + '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' + /network/eras: + get: + tags: + - Cardano » Network + summary: Query summary of blockchain eras + description: | + Returns start and end of each era along with + parameters that can vary between hard forks. + responses: + '200': + description: Returns era summaries content. + content: + application/json: + schema: + $ref: '#/components/schemas/network-eras' + '400': + $ref: '#/components/responses/400' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '418': + $ref: '#/components/responses/418' + '425': + $ref: '#/components/responses/425' + '429': + $ref: '#/components/responses/429' + '500': + $ref: '#/components/responses/500' + /nutlink/{address}: + get: + tags: + - Nut.link + summary: Specific nut.link address + description: List metadata about specific address + parameters: + - in: path + required: true + name: address + schema: + type: string + description: Address of a metadata oracle + responses: + '200': + description: Return the metadata about metadata oracle + content: + application/json: + schema: + $ref: '#/components/schemas/nutlink_address' + '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' + /nutlink/{address}/tickers: + get: + tags: + - Nut.link + summary: List of tickers of an oracle + description: List of records of a specific oracle + parameters: + - in: path + required: true + name: address + schema: + type: string + description: Address of a metadata oracle + - 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 tickers provided by the metadata oracle + content: + application/json: + schema: + $ref: '#/components/schemas/nutlink_address_tickers' + '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' + /nutlink/{address}/tickers/{ticker}: + get: + tags: + - Nut.link + summary: Specific ticker for an address + description: List of records of a specific ticker + parameters: + - in: path + required: true + name: address + schema: + type: string + description: Address of a metadata oracle + - in: path + required: true + name: ticker + schema: + type: string + description: Ticker for the pool record + - 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 tickers provided by the metadata oracle + content: + application/json: + schema: + $ref: '#/components/schemas/nutlink_address_ticker' + '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' + /nutlink/tickers/{ticker}: + get: + tags: + - Nut.link + summary: Specific ticker + description: List of records of a specific ticker + parameters: + - in: path + required: true + name: ticker + schema: + type: string + description: Ticker for the pool record + - 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 tickers provided by the metadata oracle + content: + application/json: + schema: + $ref: '#/components/schemas/nutlink_tickers_ticker' + '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: + onchain_metadata_cip25: + $ref: '#/components/schemas/asset_onchain_metadata_cip25' + onchain_metadata_cip68_ft_333: + $ref: '#/components/schemas/asset_onchain_metadata_cip68_ft_333' + onchain_metadata_cip68_nft_222: + $ref: '#/components/schemas/asset_onchain_metadata_cip68_nft_222' + onchain_metadata_cip68_rft_444: + $ref: '#/components/schemas/asset_onchain_metadata_cip68_rft_444' + block_content: + type: object + properties: + time: + type: integer + example: 1641338934 + description: Block creation time in UNIX time + height: + type: integer + nullable: true + example: 15243593 + description: Block number + hash: + type: string + example: 4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a + description: Hash of the block + slot: + type: integer + nullable: true + example: 412162133 + description: Slot number + epoch: + type: integer + nullable: true + example: 425 + description: Epoch number + epoch_slot: + type: integer + nullable: true + example: 12 + description: Slot within the epoch + slot_leader: + type: string + example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy + description: Bech32 ID of the slot leader or specific block description in case there is no slot leader + size: + type: integer + example: 3 + description: Block size in Bytes + tx_count: + type: integer + example: 1 + description: Number of transactions in the block + output: + type: string + nullable: true + example: '128314491794' + description: Total output within the block in Lovelaces + fees: + type: string + nullable: true + example: '592661' + description: Total fees within the block in Lovelaces + block_vrf: + type: string + nullable: true + example: vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty + description: VRF key of the block + minLength: 65 + maxLength: 65 + op_cert: + type: string + nullable: true + example: da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c + description: The hash of the operational certificate of the block producer + op_cert_counter: + type: string + nullable: true + example: '18' + description: The value of the counter used to produce the operational certificate + previous_block: + type: string + nullable: true + example: 43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05 + description: Hash of the previous block + next_block: + type: string + nullable: true + example: 8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa + description: Hash of the next block + confirmations: + type: integer + example: 4698 + description: Number of block confirmations + required: + - time + - height + - hash + - slot + - epoch + - epoch_slot + - slot_leader + - size + - tx_count + - output + - fees + - block_vrf + - op_cert + - op_cert_counter + - previous_block + - next_block + - confirmations + block_content_txs: + type: array + items: + type: string + description: Hash of the transaction + example: + - 8788591983aa73981fc92d6cddbbe643959f5a784e84b8bee0db15823f575a5b + - 4eef6bb7755d8afbeac526b799f3e32a624691d166657e9d862aaeb66682c036 + - 52e748c4dec58b687b90b0b40d383b9fe1f24c1a833b7395cdf07dd67859f46f + - e8073fd5318ff43eca18a852527166aa8008bee9ee9e891f585612b7e4ba700b + block_content_array: + type: array + items: + $ref: '#/components/schemas/block_content' + block_content_addresses: + type: array + items: + type: object + properties: + address: + type: string + description: Address that was affected in the specified block + transactions: + type: array + description: List of transactions containing the address either in their inputs or outputs. Sorted by transaction index within a block, ascending. + items: + type: object + properties: + tx_hash: + type: string + required: + - tx_hash + required: + - address + - transactions + example: + - address: addr1q9ld26v2lv8wvrxxmvg90pn8n8n5k6tdst06q2s856rwmvnueldzuuqmnsye359fqrk8hwvenjnqultn7djtrlft7jnq7dy7wv + transactions: + - tx_hash: 1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0 + - address: addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + transactions: + - tx_hash: 1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157d0 + genesis_content: + type: object + properties: + active_slots_coefficient: + type: number + example: 0.05 + description: The proportion of slots in which blocks should be issued + update_quorum: + type: integer + example: 5 + description: Determines the quorum needed for votes on the protocol parameter updates + max_lovelace_supply: + type: string + example: '45000000000000000' + description: The total number of lovelace in the system + network_magic: + type: integer + example: 764824073 + description: Network identifier + epoch_length: + type: integer + example: 432000 + description: Number of slots in an epoch + system_start: + type: integer + example: 1506203091 + description: Time of slot 0 in UNIX time + slots_per_kes_period: + type: integer + example: 129600 + description: Number of slots in an KES period + slot_length: + type: integer + example: 1 + description: Duration of one slot in seconds + max_kes_evolutions: + type: integer + example: 62 + description: The maximum number of time a KES key can be evolved before a pool operator must create a new operational certificate + security_param: + type: integer + example: 2160 + description: Security parameter k + required: + - active_slots_coefficient + - update_quorum + - max_lovelace_supply + - network_magic + - epoch_length + - system_start + - slots_per_kes_period + - slot_length + - max_kes_evolutions + - security_param + dreps: + type: array + items: + type: object + properties: + drep_id: + type: string + description: The Bech32 encoded DRep address + hex: + type: string + description: The raw bytes of the DRep + required: + - drep_id + - hex + example: + - drep_id: drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn + hex: db1bc3c3f99ce68977ceaf27ab4dd917123ef9e73f85c304236eab23 + - drep_id: drep1cxayn4fgy27yaucvhamsvqj3v6835mh3tjjx6x8hdnr4 + hex: c1ba49d52822bc4ef30cbf77060251668f1a6ef15ca46d18f76cc758 + drep: + type: object + properties: + drep_id: + type: string + description: Bech32 encoded DRep address + hex: + type: string + description: The raw bytes of the DRep + amount: + type: string + description: The total amount of voting power this DRep is delegated. + active: + type: boolean + description: Registration state of the DRep + active_epoch: + type: integer + nullable: true + description: Epoch of the most recent action - registration or deregistration + has_script: + type: boolean + description: Flag which shows if this DRep credentials are a script hash + required: + - drep_id + - hex + - amount + - active + - active_epoch + - has_script + example: + drep_id: drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc + hex: a61261172624e8333ceff098648d90f8e404e2e36d5b5f5985cbd35d + amount: '2000000' + active: true + active_epoch: 420 + has_script: true + drep_delegators: + type: array + items: + type: object + properties: + address: + type: string + description: Bech32 encoded stake addresses + amount: + type: string + description: Currently delegated amount + required: + - address + - amount + example: + - address: stake1ux4vspfvwuus9uwyp5p3f0ky7a30jq5j80jxse0fr7pa56sgn8kha + amount: '1137959159981411' + - address: stake1uylayej7esmarzd4mk4aru37zh9yz0luj3g9fsvgpfaxulq564r5u + amount: '16958865648' + - address: stake1u8lr2pnrgf8f7vrs9lt79hc3sxm8s2w4rwvgpncks3axx6q93d4ck + amount: '18605647' + drep_metadata: + type: object + properties: + drep_id: + type: string + description: Bech32 encoded addresses + hex: + type: string + description: The raw bytes of the DRep + url: + type: string + nullable: true + example: https://stakenuts.com/drep.json + description: URL to the drep metadata + hash: + type: string + nullable: true + example: 69c0c68cb57f4a5b4a87bad896fc274678e7aea98e200fa14a1cb40c0cab1d8c" + description: Hash of the metadata file + json_metadata: + anyOf: + - type: string + - type: object + additionalProperties: true + - type: array + items: {} + - type: integer + - type: number + - type: boolean + - type: 'null' + description: Content of the JSON metadata (validated CIP-119) + bytes: + type: string + description: Content of the metadata (raw) + required: + - drep_id + - hex + - url + - hash + - json_metadata + - bytes + example: + drep_id: drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc + hex: a61261172624e8333ceff098648d90f8e404e2e36d5b5f5985cbd35d + url: https://aaa.xyz/drep.json + hash: a14a5ad4f36bddc00f92ddb39fd9ac633c0fd43f8bfa57758f9163d10ef916de + json_metadata: + '@context': + CIP100: https://github.com/cardano-foundation/CIPs/blob/master/CIP-0100/README.md# + CIP119: https://github.com/cardano-foundation/CIPs/blob/master/CIP-0119/README.md# + hashAlgorithm: CIP100:hashAlgorithm + body: + '@id': CIP119:body + '@context': + references: + '@id': CIP119:references + '@container': '@set' + '@context': + GovernanceMetadata: CIP100:GovernanceMetadataReference + Other: CIP100:OtherReference + label: CIP100:reference-label + uri: CIP100:reference-uri + paymentAddress: CIP119:paymentAddress + givenName: CIP119:givenName + image: + '@id': CIP119:image + '@context': + ImageObject: https://schema.org/ImageObject + objectives: CIP119:objectives + motivations: CIP119:motivations + qualifications: CIP119:qualifications + hahsAlgorithm: blake2b-256 + body: + paymentAddress: addr1q86dnpkva4mm859c8ur7tjxn57zgsu6vg8pdetkdve3fsacnq7twy06u2ev5759vutpjgzfryx0ud8hzedhzerava35qwh3x34 + givenName: Ryan Williams + image: + '@type': ImageObject + contentUrl: https://avatars.githubusercontent.com/u/44342099?v=4 + sha256: 2a21e4f7b20c8c72f573707b068fb8fc6d8c64d5035c4e18ecae287947fe2b2e + objectives: Buy myself an island. + motivations: I really would like to own an island. + qualifications: I have my 100m swimming badge, so I would be qualified to be able to swim around island. + references: + - '@type': Other + label: A cool island for Ryan + uri: https://www.google.com/maps/place/World's+only+5th+order+recursive+island/@62.6511465,-97.7946829,15.75z/data=!4m14!1m7!3m6!1s0x5216a167810cee39:0x11431abdfe4c7421!2sWorld's+only+5th+order+recursive+island!8m2!3d62.651114!4d-97.7872244!16s%2Fg%2F11spwk2b6n!3m5!1s0x5216a167810cee39:0x11431abdfe4c7421!8m2!3d62.651114!4d-97.7872244!16s%2Fg%2F11spwk2b6n?authuser=0&entry=ttu + - '@type': Link + label: Ryan's Twitter + uri: https://twitter.com/Ryun1_ + bytes: \x7b0a20202240636f6e74657874223a207b0a2020202022406c616e6775616765223a2022656e2d7573222c0a2020202022434950313030223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130302f524541444d452e6 + drep_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: f4097fbdb87ab7c7ab44b30d4e2b81713a058488975d1ab8b05c381dd946a393 + cert_index: 0 + action: registered + - tx_hash: dd3243af975be4b5bedce4e5f5b483b2386d5ad207d05e0289c1df0eb261447e + cert_index: 0 + action: deregistered + drep_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' + - tx_hash: b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5 + cert_index: 3 + vote: abstain + proposals: + 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. + governance_type: + type: string + enum: + - hard_fork_initiation + - new_committee + - new_constitution + - info_action + - no_confidence + - parameter_change + - treasury_withdrawals + description: Type of proposal. + required: + - tx_hash + - cert_index + - governance_type + example: + - tx_hash: 2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531 + cert_index: 1 + governance_type: treasury_withdrawals + - tx_hash: 71317e951b20aa46e9fbf45a46a6e950d5723a481225519655bf6c60 + cert_index: 4 + governance_type: no_confidence + proposal: type: object properties: - time: - type: integer - example: 1641338934 - description: Block creation time in UNIX time - height: + tx_hash: + type: string + description: Hash of the proposal transaction. + cert_index: type: integer + description: Index of the certificate within the proposal transaction. + governance_type: + type: string + enum: + - hard_fork_initiation + - new_committee + - new_constitution + - info_action + - no_confidence + - parameter_change + - treasury_withdrawals + description: Type of proposal. + governance_description: + additionalProperties: true + type: object nullable: true - example: 15243593 - description: Block number - hash: + description: An object describing the content of this GovActionProposal in a readable way. + deposit: type: string - example: 4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a - description: Hash of the block - slot: + description: The deposit amount paid for this proposal. + return_address: + type: string + description: Bech32 stake address of the reward address to receive the deposit when it is repaid. + ratified_epoch: type: integer nullable: true - example: 412162133 - description: Slot number - epoch: + enacted_epoch: type: integer nullable: true - example: 425 - description: Epoch number - epoch_slot: + dropped_epoch: type: integer nullable: true - example: 12 - description: Slot within the epoch - slot_leader: + expired_epoch: + type: integer + nullable: true + expiration: + type: integer + description: Shows the epoch at which this governance action will expire. + anchor_url: type: string - example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy - description: Bech32 ID of the slot leader or specific block description in case there is no slot leader - size: + nullable: true + description: The URL of the offchain anchor data. + anchor_hash: + type: string + nullable: true + description: The hash of the offchain anchor data. + required: + - tx_hash + - cert_index + - governance_type + - deposit + - return_address + - governance_description + - ratified_epoch + - enacted_epoch + - dropped_epoch + - expired_epoch + - expiration + - anchor_url + - anchor_hash + example: + tx_hash: 2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531 + cert_index: 1 + governance_type: treasury_withdrawals + deposit: 12000 + return_address: stake_test1urd3hs7rlxwwdzthe6hj026dmyt3y0heuulctscyydh2kgck6nkmz + governance_description: TreasuryWithdrawals (fromList [(RewardAcnt {getRwdNetwork = Testnet, getRwdCred = KeyHashObj (KeyHash "71317e951b20aa46e9fbf45a46a6e950d5723a481225519655bf6c60")},Coin 20000000)]) + ratified_epoch: null + enacted_epoch: 123 + dropped_epoch: null + expired_epoch: null + expiration: 120 + anchor_url: https://gist.github.com/123 + anchor_hash: 50b340624d49823720505e3f0095be0d6cd8f26501e094a6ab9068dd + proposal_parameters: + type: object + properties: + epoch: type: integer - example: 3 - description: Block size in Bytes - tx_count: + example: 225 + description: Epoch number + min_fee_a: type: integer - example: 1 - description: Number of transactions in the block - output: + 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: '128314491794' - description: Total output within the block in Lovelaces - fees: + 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 + 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 - example: '592661' - description: Total fees within the block in Lovelaces - block_vrf: + 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 + 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: 0.0000721 + description: The cost of script execution step usage + max_tx_ex_mem: type: string nullable: true - example: vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty - description: VRF key of the block - minLength: 65 - maxLength: 65 - op_cert: + 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. + cost_model_id: + type: integer + format: int64 + description: The CostModel table index for the proposal. + pvt_motion_no_confidence: + type: number + description: Pool Voting threshold for motion of no-confidence. New in 13.2-Conway. + pvt_committee_normal: + type: number + description: Pool Voting threshold for new committee/threshold (normal state). New in 13.2-Conway. + pvt_committee_no_confidence: + type: number + description: Pool Voting threshold for new committee/threshold (state of no-confidence). New in 13.2-Conway. + pvt_hard_fork_initiation: + type: number + description: Pool Voting threshold for hard-fork initiation. New in 13.2-Conway. + dvt_motion_no_confidence: + type: number + description: DRep Vote threshold for motion of no-confidence. New in 13.2-Conway. + dvt_committee_normal: + type: number + description: DRep Vote threshold for new committee/threshold (normal state). New in 13.2-Conway. + dvt_committee_no_confidence: + type: number + description: DRep Vote threshold for new committee/threshold (state of no-confidence). New in 13.2-Conway. + dvt_update_to_constitution: + type: number + description: DRep Vote threshold for update to the Constitution. New in 13.2-Conway. + dvt_hard_fork_initiation: + type: number + description: DRep Vote threshold for hard-fork initiation. New in 13.2-Conway. + dvt_p_p_network_group: + type: number + description: DRep Vote threshold for protocol parameter changes, network group. New in 13.2-Conway. + dvt_p_p_economic_group: + type: number + description: DRep Vote threshold for protocol parameter changes, economic group. New in 13.2-Conway. + dvt_p_p_technical_group: + type: number + description: DRep Vote threshold for protocol parameter changes, technical group. New in 13.2-Conway. + dvt_p_p_gov_group: + type: number + description: DRep Vote threshold for protocol parameter changes, governance group. New in 13.2-Conway. + dvt_treasury_withdrawal: + type: number + description: DRep Vote threshold for treasury withdrawal. New in 13.2-Conway. + committee_min_size: + type: string + format: word64type + description: Minimal constitutional committee size. New in 13.2-Conway. + committee_max_term_length: type: string - nullable: true - example: da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c - description: The hash of the operational certificate of the block producer - op_cert_counter: + format: word64type + description: Constitutional committee term limits. New in 13.2-Conway. + gov_action_lifetime: type: string - nullable: true - example: '18' - description: The value of the counter used to produce the operational certificate - previous_block: + format: word64type + description: Governance action expiration. New in 13.2-Conway. + gov_action_deposit: type: string - nullable: true - example: 43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05 - description: Hash of the previous block - next_block: + format: word64type + description: Governance action deposit. New in 13.2-Conway. + drep_deposit: type: string + format: word64type + description: DRep deposit amount. New in 13.2-Conway. + drep_activity: + type: string + format: word64type + description: DRep activity period. New in 13.2-Conway. + pvtpp_security_group: + type: number + nullable: true + min_fee_ref_script_cost_per_byte: + type: number nullable: true - example: 8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa - description: Hash of the next block - confirmations: - type: integer - example: 4698 - description: Number of block confirmations required: - - time - - height - - hash - - slot - - epoch - - epoch_slot - - slot_leader - - size - - tx_count - - output - - fees - - block_vrf - - op_cert - - op_cert_counter - - previous_block - - next_block - - confirmations - block_content_txs: + - 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 + - cost_model_id + - 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 + - min_fee_ref_script_cost_per_byte + proposal_withdrawals: type: array items: - type: string - description: Hash of the transaction + type: object + properties: + stake_address: + type: string + example: stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7 + description: Bech32 stake address + amount: + type: string + description: Withdrawal amount in Lovelaces + required: + - stake_address + - amount example: - - 8788591983aa73981fc92d6cddbbe643959f5a784e84b8bee0db15823f575a5b - - 4eef6bb7755d8afbeac526b799f3e32a624691d166657e9d862aaeb66682c036 - - 52e748c4dec58b687b90b0b40d383b9fe1f24c1a833b7395cdf07dd67859f46f - - e8073fd5318ff43eca18a852527166aa8008bee9ee9e891f585612b7e4ba700b - block_content_array: - type: array - items: - $ref: '#/components/schemas/block_content' - block_content_addresses: + - stake_address: stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7 + amount: '454541212442' + - stake_address: stake1xx2g2c9dx2nhhehyrezyxpkstoppcqmu9hk63qgfkccw5rqttygt2 + amount: '97846969' + proposal_votes: type: array items: type: object properties: - address: + tx_hash: type: string - description: Address that was affected in the specified block - transactions: - type: array - description: List of transactions containing the address either in their inputs or outputs. Sorted by transaction index within a block, ascending. - items: - type: object - properties: - tx_hash: - type: string - required: - - tx_hash + description: Hash of the voting transaction. + cert_index: + type: integer + description: Index of the certificate within the voting transaction. + voter_role: + type: string + enum: + - constitutional_committee + - drep + - spo + description: The role of the voter. Can be one of constitutional_committee, drep, spo. + voter: + type: string + description: The actual voter. + vote: + type: string + enum: + - 'yes' + - 'no' + - abstain + description: The Vote. Can be one of yes, no, abstain. required: - - address - - transactions + - tx_hash + - cert_index + - voter_role + - voter + - vote example: - - address: addr1q9ld26v2lv8wvrxxmvg90pn8n8n5k6tdst06q2s856rwmvnueldzuuqmnsye359fqrk8hwvenjnqultn7djtrlft7jnq7dy7wv - transactions: - - tx_hash: 1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0 - - address: addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz - transactions: - - tx_hash: 1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157d0 - genesis_content: + - tx_hash: b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5 + cert_index: 2 + voter_role: drep + voter: drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn + vote: 'yes' + - tx_hash: b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5 + cert_index: 3 + voter_role: constitutional_committee + voter: 53a42debdc7ffd90085ab7fd9800b63e6d1c9ac481ba6eb7b6a844e4 + vote: abstain + proposal_metadata: type: object properties: - active_slots_coefficient: - type: number - example: 0.05 - description: The proportion of slots in which blocks should be issued - update_quorum: - type: integer - example: 5 - description: Determines the quorum needed for votes on the protocol parameter updates - max_lovelace_supply: + tx_hash: type: string - example: '45000000000000000' - description: The total number of lovelace in the system - network_magic: - type: integer - example: 764824073 - description: Network identifier - epoch_length: - type: integer - example: 432000 - description: Number of slots in an epoch - system_start: - type: integer - example: 1506203091 - description: Time of slot 0 in UNIX time - slots_per_kes_period: - type: integer - example: 129600 - description: Number of slots in an KES period - slot_length: - type: integer - example: 1 - description: Duration of one slot in seconds - max_kes_evolutions: - type: integer - example: 62 - description: The maximum number of time a KES key can be evolved before a pool operator must create a new operational certificate - security_param: + description: Off-chain metadata of a proposal with a specific transaction hash + cert_index: type: integer - example: 2160 - description: Security parameter k + description: Off-chain metadata of a proposal with a specific transaction cert_index + url: + type: string + nullable: true + example: https://abc.xyz/gov.json + description: URL to the proposal metadata + hash: + type: string + nullable: true + example: 69c0c68cb57f4a5b4a87bad896fc274678e7aea98e200fa14a1cb40c0cab1d8c" + description: Hash of the metadata file + json_metadata: + anyOf: + - type: string + - type: object + additionalProperties: true + - type: array + items: {} + - type: integer + - type: number + - type: boolean + - type: 'null' + description: Content of the JSON metadata (validated CIP-108) required: - - active_slots_coefficient - - update_quorum - - max_lovelace_supply - - network_magic - - epoch_length - - system_start - - slots_per_kes_period - - slot_length - - max_kes_evolutions - - security_param + - tx_hash + - cert_index + - url + - hash + - json_metadata + - bytes + example: + tx_hash: 257d75c8ddb0434e9b63e29ebb6241add2b835a307aa33aedba2effe09ed4ec8 + cert_index: 2 + url: https://raw.githubusercontent.com/carloslodelar/proposals/main/pv10.json + hash: ffa226f3863aca006172d559cf46bb8b883a47233962ae2fc94c158d7de6fa81 + json_metadata: + body: + title: Hardfork to Protocol version 10 + abstract: Let's have sanchoNet in full governance as soon as possible + rationale: Let's keep testing stuff + motivation: PV9 is not as fun as PV10 + references: + - uri: '' + '@type': Other + label: Hardfork to PV10 + authors: + - name: Carlos + witness: + publicKey: 7ea09a34aebb13c9841c71397b1cabfec5ddf950405293dee496cac2f437480a + signature: a476985b4cc0d457f247797611799a6f6a80fc8cb7ec9dcb5a8223888d0618e30de165f3d869c4a0d9107d8a5b612ad7c5e42441907f5b91796f0d7187d64a01 + witnessAlgorithm: ed25519 + '@context': + body: + '@id': CIP108:body + '@context': + title: CIP108:title + abstract: CIP108:abstract + rationale: CIP108:rationale + motivation: CIP108:motivation + references: + '@id': CIP108:references + '@context': + uri: CIP100:reference-uri + Other: CIP100:OtherReference + label: CIP100:reference-label + referenceHash: + '@id': CIP108:referenceHash + '@context': + hashDigest: CIP108:hashDigest + hashAlgorithm: CIP100:hashAlgorithm + GovernanceMetadata: CIP100:GovernanceMetadataReference + '@container': '@set' + CIP100: https://github.com/cardano-foundation/CIPs/blob/master/CIP-0100/README.md# + CIP108: https://github.com/cardano-foundation/CIPs/blob/master/CIP-0108/README.md# + authors: + '@id': CIP100:authors + '@context': + name: http://xmlns.com/foaf/0.1/name + witness: + '@id': CIP100:witness + '@context': + publicKey: CIP100:publicKey + signature: CIP100:signature + witnessAlgorithm: CIP100:witnessAlgorithm + '@container': '@set' + '@language': en-us + hashAlgorithm: CIP100:hashAlgorithm + hashAlgorithm: blake2b-256 + bytes: \x7b0a20202240636f6e74657874223a207b0a2020202022406c616e6775616765223a2022656e2d7573222c0a2020202022434950313030223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130302f524541444d452e6d6423222c0a2020202022434950313038223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130382f524541444d452e6d6423222c0a202020202268617368416c676f726974686d223a20224349503130303a68617368416c676f726974686d222c0a2020202022626f6479223a207b0a20202020202022406964223a20224349503130383a626f6479222c0a2020202020202240636f6e74657874223a207b0a2020202020202020227265666572656e636573223a207b0a2020202020202020202022406964223a20224349503130383a7265666572656e636573222c0a202020202020202020202240636f6e7461696e6572223a202240736574222c0a202020202020202020202240636f6e74657874223a207b0a20202020202020202020202022476f7665726e616e63654d65746164617461223a20224349503130303a476f7665726e616e63654d657461646174615265666572656e6365222c0a202020202020202020202020224f74686572223a20224349503130303a4f746865725265666572656e6365222c0a202020202020202020202020226c6162656c223a20224349503130303a7265666572656e63652d6c6162656c222c0a20202020202020202020202022757269223a20224349503130303a7265666572656e63652d757269222c0a202020202020202020202020227265666572656e636548617368223a207b0a202020202020202020202020202022406964223a20224349503130383a7265666572656e636548617368222c0a20202020202020202020202020202240636f6e74657874223a207b0a202020202020202020202020202020202268617368446967657374223a20224349503130383a68617368446967657374222c0a202020202020202020202020202020202268617368416c676f726974686d223a20224349503130303a68617368416c676f726974686d220a20202020202020202020202020207d0a2020202020202020202020207d0a202020202020202020207d0a20202020202020207d2c0a2020202020202020227469746c65223a20224349503130383a7469746c65222c0a2020202020202020226162737472616374223a20224349503130383a6162737472616374222c0a2020202020202020226d6f7469766174696f6e223a20224349503130383a6d6f7469766174696f6e222c0a202020202020202022726174696f6e616c65223a20224349503130383a726174696f6e616c65220a2020202020207d0a202020207d2c0a2020202022617574686f7273223a207b0a20202020202022406964223a20224349503130303a617574686f7273222c0a2020202020202240636f6e7461696e6572223a202240736574222c0a2020202020202240636f6e74657874223a207b0a2020202020202020226e616d65223a2022687474703a2f2f786d6c6e732e636f6d2f666f61662f302e312f6e616d65222c0a2020202020202020227769746e657373223a207b0a2020202020202020202022406964223a20224349503130303a7769746e657373222c0a202020202020202020202240636f6e74657874223a207b0a202020202020202020202020227769746e657373416c676f726974686d223a20224349503130303a7769746e657373416c676f726974686d222c0a202020202020202020202020227075626c69634b6579223a20224349503130303a7075626c69634b6579222c0a202020202020202020202020227369676e6174757265223a20224349503130303a7369676e6174757265220a202020202020202020207d0a20202020202020207d0a2020202020207d0a202020207d0a20207d2c0a20202268617368416c676f726974686d223a2022626c616b6532622d323536222c0a202022626f6479223a207b0a20202020227469746c65223a202248617264666f726b20746f2050726f746f636f6c2076657273696f6e203130222c0a20202020226162737472616374223a20224c6574277320686176652073616e63686f4e657420696e2066756c6c20676f7665726e616e636520617320736f6f6e20617320706f737369626c65222c0a20202020226d6f7469766174696f6e223a2022505639206973206e6f742061732066756e2061732050563130222c0a2020202022726174696f6e616c65223a20224c65742773206b6565702074657374696e67207374756666222c0a20202020227265666572656e636573223a205b0a2020202020207b0a2020202020202020224074797065223a20224f74686572222c0a2020202020202020226c6162656c223a202248617264666f726b20746f2050563130222c0a202020202020202022757269223a2022220a2020202020207d0a202020205d0a20207d2c0a202022617574686f7273223a205b0a202020207b0a202020202020226e616d65223a20224361726c6f73222c0a202020202020227769746e657373223a207b0a2020202020202020227769746e657373416c676f726974686d223a202265643235353139222c0a2020202020202020227075626c69634b6579223a202237656130396133346165626231336339383431633731333937623163616266656335646466393530343035323933646565343936636163326634333734383061222c0a2020202020202020227369676e6174757265223a20226134373639383562346363306434353766323437373937363131373939613666366138306663386362376563396463623561383232333838386430363138653330646531363566336438363963346130643931303764386135623631326164376335653432343431393037663562393137393666306437313837643634613031220a2020202020207d0a202020207d0a20205d0a7d epoch_content: type: object properties: @@ -5750,8 +7176,94 @@ components: type: string nullable: true example: '34482' - description: Cost per UTxO word for Alonzo. Cost per UTxO byte for Babbage and later. 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 + min_fee_ref_script_cost_per_byte: + type: number + nullable: true required: - epoch - min_fee_a @@ -5785,6 +7297,28 @@ components: - 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 + - min_fee_ref_script_cost_per_byte epoch_content_array: type: array items: @@ -6529,7 +8063,12 @@ components: type: string nullable: true example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy - description: Bech32 pool ID that owns the account + description: Bech32 pool ID to which this account is delegated + drep_id: + type: string + nullable: true + example: drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc + description: Bech32 drep ID to which this account is delegated required: - stake_address - active @@ -6541,6 +8080,7 @@ components: - treasury_sum - withdrawable_amount - pool_id + - drep_id account_reward_content: type: array items: @@ -7833,6 +9373,32 @@ components: - 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' assets: type: array items: diff --git a/json-schema.json b/json-schema.json index 8a1039ce..8a72ee5f 100644 --- a/json-schema.json +++ b/json-schema.json @@ -1 +1 @@ -{"/":{"response":{"200":{"type":"object","properties":{"url":{"type":"string","example":"https://blockfrost.io/"},"version":{"type":"string","example":"0.1.0"}},"required":["url","version"]},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/health":{"response":{"200":{"type":"object","properties":{"is_healthy":{"type":"boolean","example":true}},"required":["is_healthy"]},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/health/clock":{"response":{"200":{"type":"object","properties":{"server_time":{"type":"integer","format":"int64","example":1603400958947}},"required":["server_time"]},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/blocks/latest":{"response":{"200":{"type":"object","properties":{"time":{"type":"integer","example":1641338934,"description":"Block creation time in UNIX time"},"height":{"type":"integer","nullable":true,"example":15243593,"description":"Block number"},"hash":{"type":"string","example":"4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a","description":"Hash of the block"},"slot":{"type":"integer","nullable":true,"example":412162133,"description":"Slot number"},"epoch":{"type":"integer","nullable":true,"example":425,"description":"Epoch number"},"epoch_slot":{"type":"integer","nullable":true,"example":12,"description":"Slot within the epoch"},"slot_leader":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy","description":"Bech32 ID of the slot leader or specific block description in case there is no slot leader"},"size":{"type":"integer","example":3,"description":"Block size in Bytes"},"tx_count":{"type":"integer","example":1,"description":"Number of transactions in the block"},"output":{"type":"string","nullable":true,"example":"128314491794","description":"Total output within the block in Lovelaces"},"fees":{"type":"string","nullable":true,"example":"592661","description":"Total fees within the block in Lovelaces"},"block_vrf":{"type":"string","nullable":true,"example":"vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty","description":"VRF key of the block","minLength":65,"maxLength":65},"op_cert":{"type":"string","nullable":true,"example":"da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c","description":"The hash of the operational certificate of the block producer"},"op_cert_counter":{"type":"string","nullable":true,"example":"18","description":"The value of the counter used to produce the operational certificate"},"previous_block":{"type":"string","nullable":true,"example":"43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05","description":"Hash of the previous block"},"next_block":{"type":"string","nullable":true,"example":"8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa","description":"Hash of the next block"},"confirmations":{"type":"integer","example":4698,"description":"Number of block confirmations"}},"required":["time","height","hash","slot","epoch","epoch_slot","slot_leader","size","tx_count","output","fees","block_vrf","op_cert","op_cert_counter","previous_block","next_block","confirmations"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/blocks/latest/txs":{"response":{"200":{"type":"array","items":{"type":"string","description":"Hash of the transaction"},"example":["8788591983aa73981fc92d6cddbbe643959f5a784e84b8bee0db15823f575a5b","4eef6bb7755d8afbeac526b799f3e32a624691d166657e9d862aaeb66682c036","52e748c4dec58b687b90b0b40d383b9fe1f24c1a833b7395cdf07dd67859f46f","e8073fd5318ff43eca18a852527166aa8008bee9ee9e891f585612b7e4ba700b"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/blocks/{hash_or_number}":{"response":{"200":{"type":"object","properties":{"time":{"type":"integer","example":1641338934,"description":"Block creation time in UNIX time"},"height":{"type":"integer","nullable":true,"example":15243593,"description":"Block number"},"hash":{"type":"string","example":"4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a","description":"Hash of the block"},"slot":{"type":"integer","nullable":true,"example":412162133,"description":"Slot number"},"epoch":{"type":"integer","nullable":true,"example":425,"description":"Epoch number"},"epoch_slot":{"type":"integer","nullable":true,"example":12,"description":"Slot within the epoch"},"slot_leader":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy","description":"Bech32 ID of the slot leader or specific block description in case there is no slot leader"},"size":{"type":"integer","example":3,"description":"Block size in Bytes"},"tx_count":{"type":"integer","example":1,"description":"Number of transactions in the block"},"output":{"type":"string","nullable":true,"example":"128314491794","description":"Total output within the block in Lovelaces"},"fees":{"type":"string","nullable":true,"example":"592661","description":"Total fees within the block in Lovelaces"},"block_vrf":{"type":"string","nullable":true,"example":"vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty","description":"VRF key of the block","minLength":65,"maxLength":65},"op_cert":{"type":"string","nullable":true,"example":"da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c","description":"The hash of the operational certificate of the block producer"},"op_cert_counter":{"type":"string","nullable":true,"example":"18","description":"The value of the counter used to produce the operational certificate"},"previous_block":{"type":"string","nullable":true,"example":"43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05","description":"Hash of the previous block"},"next_block":{"type":"string","nullable":true,"example":"8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa","description":"Hash of the next block"},"confirmations":{"type":"integer","example":4698,"description":"Number of block confirmations"}},"required":["time","height","hash","slot","epoch","epoch_slot","slot_leader","size","tx_count","output","fees","block_vrf","op_cert","op_cert_counter","previous_block","next_block","confirmations"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash_or_number":{"type":"string"}}}},"/blocks/{hash_or_number}/next":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"time":{"type":"integer","example":1641338934,"description":"Block creation time in UNIX time"},"height":{"type":"integer","nullable":true,"example":15243593,"description":"Block number"},"hash":{"type":"string","example":"4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a","description":"Hash of the block"},"slot":{"type":"integer","nullable":true,"example":412162133,"description":"Slot number"},"epoch":{"type":"integer","nullable":true,"example":425,"description":"Epoch number"},"epoch_slot":{"type":"integer","nullable":true,"example":12,"description":"Slot within the epoch"},"slot_leader":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy","description":"Bech32 ID of the slot leader or specific block description in case there is no slot leader"},"size":{"type":"integer","example":3,"description":"Block size in Bytes"},"tx_count":{"type":"integer","example":1,"description":"Number of transactions in the block"},"output":{"type":"string","nullable":true,"example":"128314491794","description":"Total output within the block in Lovelaces"},"fees":{"type":"string","nullable":true,"example":"592661","description":"Total fees within the block in Lovelaces"},"block_vrf":{"type":"string","nullable":true,"example":"vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty","description":"VRF key of the block","minLength":65,"maxLength":65},"op_cert":{"type":"string","nullable":true,"example":"da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c","description":"The hash of the operational certificate of the block producer"},"op_cert_counter":{"type":"string","nullable":true,"example":"18","description":"The value of the counter used to produce the operational certificate"},"previous_block":{"type":"string","nullable":true,"example":"43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05","description":"Hash of the previous block"},"next_block":{"type":"string","nullable":true,"example":"8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa","description":"Hash of the next block"},"confirmations":{"type":"integer","example":4698,"description":"Number of block confirmations"}},"required":["time","height","hash","slot","epoch","epoch_slot","slot_leader","size","tx_count","output","fees","block_vrf","op_cert","op_cert_counter","previous_block","next_block","confirmations"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1}}},"params":{"type":"object","properties":{"hash_or_number":{"type":"string"}}}},"/blocks/{hash_or_number}/previous":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"time":{"type":"integer","example":1641338934,"description":"Block creation time in UNIX time"},"height":{"type":"integer","nullable":true,"example":15243593,"description":"Block number"},"hash":{"type":"string","example":"4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a","description":"Hash of the block"},"slot":{"type":"integer","nullable":true,"example":412162133,"description":"Slot number"},"epoch":{"type":"integer","nullable":true,"example":425,"description":"Epoch number"},"epoch_slot":{"type":"integer","nullable":true,"example":12,"description":"Slot within the epoch"},"slot_leader":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy","description":"Bech32 ID of the slot leader or specific block description in case there is no slot leader"},"size":{"type":"integer","example":3,"description":"Block size in Bytes"},"tx_count":{"type":"integer","example":1,"description":"Number of transactions in the block"},"output":{"type":"string","nullable":true,"example":"128314491794","description":"Total output within the block in Lovelaces"},"fees":{"type":"string","nullable":true,"example":"592661","description":"Total fees within the block in Lovelaces"},"block_vrf":{"type":"string","nullable":true,"example":"vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty","description":"VRF key of the block","minLength":65,"maxLength":65},"op_cert":{"type":"string","nullable":true,"example":"da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c","description":"The hash of the operational certificate of the block producer"},"op_cert_counter":{"type":"string","nullable":true,"example":"18","description":"The value of the counter used to produce the operational certificate"},"previous_block":{"type":"string","nullable":true,"example":"43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05","description":"Hash of the previous block"},"next_block":{"type":"string","nullable":true,"example":"8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa","description":"Hash of the next block"},"confirmations":{"type":"integer","example":4698,"description":"Number of block confirmations"}},"required":["time","height","hash","slot","epoch","epoch_slot","slot_leader","size","tx_count","output","fees","block_vrf","op_cert","op_cert_counter","previous_block","next_block","confirmations"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1}}},"params":{"type":"object","properties":{"hash_or_number":{"type":"string"}}}},"/blocks/slot/{slot_number}":{"response":{"200":{"type":"object","properties":{"time":{"type":"integer","example":1641338934,"description":"Block creation time in UNIX time"},"height":{"type":"integer","nullable":true,"example":15243593,"description":"Block number"},"hash":{"type":"string","example":"4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a","description":"Hash of the block"},"slot":{"type":"integer","nullable":true,"example":412162133,"description":"Slot number"},"epoch":{"type":"integer","nullable":true,"example":425,"description":"Epoch number"},"epoch_slot":{"type":"integer","nullable":true,"example":12,"description":"Slot within the epoch"},"slot_leader":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy","description":"Bech32 ID of the slot leader or specific block description in case there is no slot leader"},"size":{"type":"integer","example":3,"description":"Block size in Bytes"},"tx_count":{"type":"integer","example":1,"description":"Number of transactions in the block"},"output":{"type":"string","nullable":true,"example":"128314491794","description":"Total output within the block in Lovelaces"},"fees":{"type":"string","nullable":true,"example":"592661","description":"Total fees within the block in Lovelaces"},"block_vrf":{"type":"string","nullable":true,"example":"vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty","description":"VRF key of the block","minLength":65,"maxLength":65},"op_cert":{"type":"string","nullable":true,"example":"da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c","description":"The hash of the operational certificate of the block producer"},"op_cert_counter":{"type":"string","nullable":true,"example":"18","description":"The value of the counter used to produce the operational certificate"},"previous_block":{"type":"string","nullable":true,"example":"43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05","description":"Hash of the previous block"},"next_block":{"type":"string","nullable":true,"example":"8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa","description":"Hash of the next block"},"confirmations":{"type":"integer","example":4698,"description":"Number of block confirmations"}},"required":["time","height","hash","slot","epoch","epoch_slot","slot_leader","size","tx_count","output","fees","block_vrf","op_cert","op_cert_counter","previous_block","next_block","confirmations"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"slot_number":{"type":"integer"}}}},"/blocks/epoch/{epoch_number}/slot/{slot_number}":{"response":{"200":{"type":"object","properties":{"time":{"type":"integer","example":1641338934,"description":"Block creation time in UNIX time"},"height":{"type":"integer","nullable":true,"example":15243593,"description":"Block number"},"hash":{"type":"string","example":"4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a","description":"Hash of the block"},"slot":{"type":"integer","nullable":true,"example":412162133,"description":"Slot number"},"epoch":{"type":"integer","nullable":true,"example":425,"description":"Epoch number"},"epoch_slot":{"type":"integer","nullable":true,"example":12,"description":"Slot within the epoch"},"slot_leader":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy","description":"Bech32 ID of the slot leader or specific block description in case there is no slot leader"},"size":{"type":"integer","example":3,"description":"Block size in Bytes"},"tx_count":{"type":"integer","example":1,"description":"Number of transactions in the block"},"output":{"type":"string","nullable":true,"example":"128314491794","description":"Total output within the block in Lovelaces"},"fees":{"type":"string","nullable":true,"example":"592661","description":"Total fees within the block in Lovelaces"},"block_vrf":{"type":"string","nullable":true,"example":"vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty","description":"VRF key of the block","minLength":65,"maxLength":65},"op_cert":{"type":"string","nullable":true,"example":"da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c","description":"The hash of the operational certificate of the block producer"},"op_cert_counter":{"type":"string","nullable":true,"example":"18","description":"The value of the counter used to produce the operational certificate"},"previous_block":{"type":"string","nullable":true,"example":"43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05","description":"Hash of the previous block"},"next_block":{"type":"string","nullable":true,"example":"8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa","description":"Hash of the next block"},"confirmations":{"type":"integer","example":4698,"description":"Number of block confirmations"}},"required":["time","height","hash","slot","epoch","epoch_slot","slot_leader","size","tx_count","output","fees","block_vrf","op_cert","op_cert_counter","previous_block","next_block","confirmations"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"epoch_number":{"type":"integer"},"slot_number":{"type":"integer"}}}},"/blocks/{hash_or_number}/txs":{"response":{"200":{"type":"array","items":{"type":"string","description":"Hash of the transaction"},"example":["8788591983aa73981fc92d6cddbbe643959f5a784e84b8bee0db15823f575a5b","4eef6bb7755d8afbeac526b799f3e32a624691d166657e9d862aaeb66682c036","52e748c4dec58b687b90b0b40d383b9fe1f24c1a833b7395cdf07dd67859f46f","e8073fd5318ff43eca18a852527166aa8008bee9ee9e891f585612b7e4ba700b"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"hash_or_number":{"type":"string"}}}},"/blocks/{hash_or_number}/addresses":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","description":"Address that was affected in the specified block"},"transactions":{"type":"array","description":"List of transactions containing the address either in their inputs or outputs. Sorted by transaction index within a block, ascending.","items":{"type":"object","properties":{"tx_hash":{"type":"string"}},"required":["tx_hash"]}}},"required":["address","transactions"]},"example":[{"address":"addr1q9ld26v2lv8wvrxxmvg90pn8n8n5k6tdst06q2s856rwmvnueldzuuqmnsye359fqrk8hwvenjnqultn7djtrlft7jnq7dy7wv","transactions":[{"tx_hash":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0"}]},{"address":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz","transactions":[{"tx_hash":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157d0"}]}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1}}},"params":{"type":"object","properties":{"hash_or_number":{"type":"string"}}}},"/genesis":{"response":{"200":{"type":"object","properties":{"active_slots_coefficient":{"type":"number","example":0.05,"description":"The proportion of slots in which blocks should be issued"},"update_quorum":{"type":"integer","example":5,"description":"Determines the quorum needed for votes on the protocol parameter updates"},"max_lovelace_supply":{"type":"string","example":"45000000000000000","description":"The total number of lovelace in the system"},"network_magic":{"type":"integer","example":764824073,"description":"Network identifier"},"epoch_length":{"type":"integer","example":432000,"description":"Number of slots in an epoch"},"system_start":{"type":"integer","example":1506203091,"description":"Time of slot 0 in UNIX time"},"slots_per_kes_period":{"type":"integer","example":129600,"description":"Number of slots in an KES period"},"slot_length":{"type":"integer","example":1,"description":"Duration of one slot in seconds"},"max_kes_evolutions":{"type":"integer","example":62,"description":"The maximum number of time a KES key can be evolved before a pool operator must create a new operational certificate"},"security_param":{"type":"integer","example":2160,"description":"Security parameter k"}},"required":["active_slots_coefficient","update_quorum","max_lovelace_supply","network_magic","epoch_length","system_start","slots_per_kes_period","slot_length","max_kes_evolutions","security_param"]},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/epochs/latest":{"response":{"200":{"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"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/epochs/latest/parameters":{"response":{"200":{"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,"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"},"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":0.0000721,"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","description":"Cost per UTxO word for Alonzo. Cost per UTxO byte for Babbage and later.","deprecated":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"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/epochs/{number}":{"response":{"200":{"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"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"number":{"type":"integer"}}}},"/epochs/{number}/next":{"response":{"200":{"type":"array","items":{"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"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1}}},"params":{"type":"object","properties":{"number":{"type":"integer"}}}},"/epochs/{number}/previous":{"response":{"200":{"type":"array","items":{"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"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1}}},"params":{"type":"object","properties":{"number":{"type":"integer"}}}},"/epochs/{number}/stakes":{"response":{"200":{"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"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1}}},"params":{"type":"object","properties":{"number":{"type":"integer"}}}},"/epochs/{number}/stakes/{pool_id}":{"response":{"200":{"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"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1}}},"params":{"type":"object","properties":{"number":{"type":"integer"},"pool_id":{"type":"string"}}}},"/epochs/{number}/blocks":{"response":{"200":{"type":"array","items":{"type":"string","description":"Hash of the block"},"example":["d0fa315687e99ccdc96b14cc2ea74a767405d64427b648c470731a9b69e4606e","38bc6efb92a830a0ed22a64f979d120d26483fd3c811f6622a8c62175f530878","f3258fcd8b975c061b4fcdcfcbb438807134d6961ec278c200151274893b6b7d"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"number":{"type":"integer"}}}},"/epochs/{number}/blocks/{pool_id}":{"response":{"200":{"type":"array","items":{"type":"string","description":"Hash of the block"},"example":["d0fa315687e99ccdc96b14cc2ea74a767405d64427b648c470731a9b69e4606e","38bc6efb92a830a0ed22a64f979d120d26483fd3c811f6622a8c62175f530878","f3258fcd8b975c061b4fcdcfcbb438807134d6961ec278c200151274893b6b7d"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"number":{"type":"integer"},"pool_id":{"type":"string"}}}},"/epochs/{number}/parameters":{"response":{"200":{"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,"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"},"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":0.0000721,"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","description":"Cost per UTxO word for Alonzo. Cost per UTxO byte for Babbage and later.","deprecated":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"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"number":{"type":"integer"}}}},"/txs/{hash}":{"response":{"200":{"type":"object","properties":{"hash":{"type":"string","example":"1e043f100dce12d107f679685acd2fc0610e10f72a92d412794c9773d11d8477","description":"Transaction hash"},"block":{"type":"string","example":"356b7d7dbb696ccd12775c016941057a9dc70898d87a63fc752271bb46856940","description":"Block hash"},"block_height":{"type":"integer","example":123456,"description":"Block number"},"block_time":{"type":"integer","example":1635505891,"description":"Block creation time in UNIX time"},"slot":{"type":"integer","example":42000000,"description":"Slot number"},"index":{"type":"integer","example":1,"description":"Transaction index within the block"},"output_amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"fees":{"type":"string","example":"182485","description":"Fees of the transaction in Lovelaces"},"deposit":{"type":"string","example":"0","description":"Deposit within the transaction in Lovelaces"},"size":{"type":"integer","example":433,"description":"Size of the transaction in Bytes"},"invalid_before":{"type":"string","nullable":true,"example":null,"description":"Left (included) endpoint of the timelock validity intervals"},"invalid_hereafter":{"type":"string","nullable":true,"example":"13885913","description":"Right (excluded) endpoint of the timelock validity intervals"},"utxo_count":{"type":"integer","example":4,"description":"Count of UTXOs within the transaction"},"withdrawal_count":{"type":"integer","example":0,"description":"Count of the withdrawals within the transaction"},"mir_cert_count":{"type":"integer","example":0,"description":"Count of the MIR certificates within the transaction"},"delegation_count":{"type":"integer","example":0,"description":"Count of the delegations within the transaction"},"stake_cert_count":{"type":"integer","example":0,"description":"Count of the stake keys (de)registration within the transaction"},"pool_update_count":{"type":"integer","example":0,"description":"Count of the stake pool registration and update certificates within the transaction"},"pool_retire_count":{"type":"integer","example":0,"description":"Count of the stake pool retirement certificates within the transaction"},"asset_mint_or_burn_count":{"type":"integer","example":0,"description":"Count of asset mints and burns within the transaction"},"redeemer_count":{"type":"integer","example":0,"description":"Count of redeemers within the transaction"},"valid_contract":{"type":"boolean","example":true,"description":"True if contract script passed validation"}},"required":["hash","block","block_height","block_time","slot","index","output_amount","fees","deposit","size","invalid_before","invalid_hereafter","utxo_count","withdrawal_count","mir_cert_count","delegation_count","stake_cert_count","pool_update_count","pool_retire_count","asset_mint_or_burn_count","redeemer_count","valid_contract"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/utxos":{"response":{"200":{"type":"object","properties":{"hash":{"type":"string","example":"1e043f100dce12d107f679685acd2fc0610e10f72a92d412794c9773d11d8477","description":"Transaction hash"},"inputs":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","example":"addr1q9ld26v2lv8wvrxxmvg90pn8n8n5k6tdst06q2s856rwmvnueldzuuqmnsye359fqrk8hwvenjnqultn7djtrlft7jnq7dy7wv","description":"Input address"},"amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"tx_hash":{"type":"string","example":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0","description":"Hash of the UTXO transaction"},"output_index":{"type":"integer","example":0,"description":"UTXO index in the transaction"},"data_hash":{"type":"string","nullable":true,"description":"The hash of the transaction output datum","example":"9e478573ab81ea7a8e31891ce0648b81229f408d596a3483e6f4f9b92d3cf710"},"inline_datum":{"type":"string","nullable":true,"description":"CBOR encoded inline datum","example":"19a6aa"},"reference_script_hash":{"type":"string","nullable":true,"description":"The hash of the reference script of the input","example":"13a3efd825703a352a8f71f4e2758d08c28c564e8dfcce9f77776ad1"},"collateral":{"type":"boolean","example":false,"description":"Whether the input is a collateral consumed on script validation failure"},"reference":{"type":"boolean","example":false,"description":"Whether the input is a reference transaction input"}},"required":["address","amount","tx_hash","output_index","data_hash","inline_datum","reference_script_hash","collateral"]}},"outputs":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","example":"addr1q9ld26v2lv8wvrxxmvg90pn8n8n5k6tdst06q2s856rwmvnueldzuuqmnsye359fqrk8hwvenjnqultn7djtrlft7jnq7dy7wv","description":"Output address"},"amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"output_index":{"type":"integer","example":0,"description":"UTXO index in the transaction"},"data_hash":{"type":"string","nullable":true,"description":"The hash of the transaction output datum","example":"9e478573ab81ea7a8e31891ce0648b81229f408d596a3483e6f4f9b92d3cf710"},"inline_datum":{"type":"string","nullable":true,"description":"CBOR encoded inline datum","example":"19a6aa"},"collateral":{"type":"boolean","example":false,"description":"Whether the output is a collateral output"},"reference_script_hash":{"type":"string","nullable":true,"description":"The hash of the reference script of the output","example":"13a3efd825703a352a8f71f4e2758d08c28c564e8dfcce9f77776ad1"}},"required":["address","amount","output_index","data_hash","inline_datum","collateral","reference_script_hash"]}}},"required":["hash","inputs","outputs"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/stakes":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"cert_index":{"type":"integer","example":0,"description":"Index of the certificate within the transaction"},"address":{"type":"string","example":"stake1u9t3a0tcwune5xrnfjg4q7cpvjlgx9lcv0cuqf5mhfjwrvcwrulda","description":"Delegation stake address"},"registration":{"type":"boolean","example":true,"description":"Registration boolean, false if deregistration"}},"required":["cert_index","address","registration"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/delegations":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","example":0,"description":"Index of the certificate within the transaction","deprecated":true},"cert_index":{"type":"integer","example":0,"description":"Index of the certificate within the transaction"},"address":{"type":"string","example":"stake1u9r76ypf5fskppa0cmttas05cgcswrttn6jrq4yd7jpdnvc7gt0yc","description":"Bech32 delegation stake address"},"pool_id":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","description":"Bech32 ID of delegated stake pool"},"active_epoch":{"type":"integer","example":210,"description":"Epoch in which the delegation becomes active"}},"required":["index","cert_index","address","pool_id","active_epoch"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/withdrawals":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","example":"stake1u9r76ypf5fskppa0cmttas05cgcswrttn6jrq4yd7jpdnvc7gt0yc","description":"Bech32 withdrawal address"},"amount":{"type":"string","example":"431833601","description":"Withdrawal amount in Lovelaces"}},"required":["address","amount"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/mirs":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"pot":{"type":"string","enum":["reserve","treasury"],"example":"reserve","description":"Source of MIR funds"},"cert_index":{"type":"integer","example":0,"description":"Index of the certificate within the transaction"},"address":{"type":"string","example":"stake1u9r76ypf5fskppa0cmttas05cgcswrttn6jrq4yd7jpdnvc7gt0yc","description":"Bech32 stake address"},"amount":{"type":"string","example":"431833601","description":"MIR amount in Lovelaces"}},"required":["pot","cert_index","address","amount"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/pool_updates":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"cert_index":{"type":"integer","example":0,"description":"Index of the certificate within the transaction"},"pool_id":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","description":"Bech32 encoded pool ID"},"vrf_key":{"type":"string","example":"0b5245f9934ec2151116fb8ec00f35fd00e0aa3b075c4ed12cce440f999d8233","description":"VRF key hash"},"pledge":{"type":"string","example":"5000000000","description":"Stake pool certificate pledge in Lovelaces"},"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 in Lovelaces"},"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"]},"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"},"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"]},"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"]}},"active_epoch":{"type":"integer","example":210,"description":"Epoch in which the update becomes active"}},"required":["cert_index","pool_id","vrf_key","pledge","margin_cost","fixed_cost","reward_account","owners","metadata","relays","active_epoch"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/pool_retires":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"cert_index":{"type":"integer","example":0,"description":"Index of the certificate within the transaction"},"pool_id":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","description":"Bech32 stake pool ID"},"retiring_epoch":{"type":"integer","example":216,"description":"Epoch in which the pool becomes retired"}},"required":["cert_index","pool_id","retiring_epoch"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/metadata":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"json_metadata":{}},"required":["label","json_metadata"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/metadata/cbor":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string","description":"Metadata label"},"cbor_metadata":{"deprecated":true,"type":"string","nullable":true,"description":"Content of the CBOR metadata"},"metadata":{"type":"string","nullable":true,"description":"Content of the CBOR metadata in hex"}},"required":["label","cbor_metadata","metadata"]},"example":[{"label":"1968","cbor_metadata":"\\xa100a16b436f6d62696e6174696f6e8601010101010c","metadata":"a100a16b436f6d62696e6174696f6e8601010101010c"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/redeemers":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_index":{"type":"integer","example":0,"description":"Index of the redeemer within the transaction"},"purpose":{"type":"string","enum":["spend","mint","cert","reward"],"example":"spend","description":"Validation purpose"},"script_hash":{"type":"string","example":"ec26b89af41bef0f7585353831cb5da42b5b37185e0c8a526143b824","description":"Script hash"},"redeemer_data_hash":{"type":"string","example":"923918e403bf43c34b4ef6b48eb2ee04babed17320d8d1b9ff9ad086e86f44ec","description":"Redeemer data hash"},"datum_hash":{"type":"string","example":"923918e403bf43c34b4ef6b48eb2ee04babed17320d8d1b9ff9ad086e86f44ec","deprecated":true,"description":"Datum hash"},"unit_mem":{"type":"string","example":"1700","description":"The budget in Memory to run a script"},"unit_steps":{"type":"string","example":"476468","description":"The budget in CPU steps to run a script"},"fee":{"type":"string","example":"172033","description":"The fee consumed to run the script"}},"required":["tx_index","purpose","unit_mem","unit_steps","script_hash","redeemer_data_hash","datum_hash","fee"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/required_signers":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"witness_hash":{"type":"string","example":"d52e11f3e48436dd42dbec6d88c239732e503b8b7a32af58e5f87625","description":"Hash of the witness"}},"required":["witness_hash"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/cbor":{"response":{"200":{"type":"object","properties":{"cbor":{"type":"string","description":"CBOR serialized transaction"}},"required":["cbor"],"example":{"cbor":"84a40081825820203e5b61e0949ffc8fe594727cf7ed73c7396cc2bd212af9a680c9423b5880eb00018282583900f0c60254ecb0addd4c7e40c28fd05b65014ab4c8ecece06c7dcee5a0724bf93336a8225e7ef152b41aea955173be91af19250edea1ddafab1a000f42408258390014beadb876d0a2a593fe2f1b539389e00731290910170e9a1be78e847d2ccdc7af469706878018739bcfde9ae23f009c4ae38aee0a4b4f3a1b0000000253fa0f93021a0002922d031a0303c827a100818258207d3ae39f9a1c916ac7c13f10c7d67c70b870c286a1af71485455c5022a3f391d5840e2f481acd1601a3f39fa976317bba685ddd774621a92611edaaa3df9f48a3b13d8b25ecb2f28b031c1602512418efed3033e463a0dcd22a856c808033cc9e00ff5f6"}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/tx/submit":{"response":{"200":{"type":"string","format":"hex","minLength":64,"maxLength":64,"example":"d1662b24fa9fe985fc2dce47455df399cb2e31e1e1819339e885801cc3578908"},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"425":{"type":"object","properties":{"status_code":{"type":"integer","example":425},"error":{"type":"string","example":"Mempool Full"},"message":{"type":"string","example":"Mempool is full, please try resubmitting again later."}},"required":["error","message","status_code"]},"429":{"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":{"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"]}}},"/accounts/{stake_address}":{"response":{"200":{"type":"object","properties":{"stake_address":{"type":"string","example":"stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7","description":"Bech32 stake address"},"active":{"type":"boolean","example":true,"description":"Registration state of an account"},"active_epoch":{"type":"integer","nullable":true,"example":412,"description":"Epoch of the most recent action - registration or deregistration"},"controlled_amount":{"type":"string","example":"619154618165","description":"Balance of the account in Lovelaces"},"rewards_sum":{"type":"string","example":"319154618165","description":"Sum of all rewards for the account in the Lovelaces"},"withdrawals_sum":{"type":"string","example":"12125369253","description":"Sum of all the withdrawals for the account in Lovelaces"},"reserves_sum":{"type":"string","example":"319154618165","description":"Sum of all funds from reserves for the account in the Lovelaces"},"treasury_sum":{"type":"string","example":"12000000","description":"Sum of all funds from treasury for the account in the Lovelaces"},"withdrawable_amount":{"type":"string","example":"319154618165","description":"Sum of available rewards that haven't been withdrawn yet for the account in the Lovelaces"},"pool_id":{"type":"string","nullable":true,"example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","description":"Bech32 pool ID that owns the account"}},"required":["stake_address","active","active_epoch","controlled_amount","rewards_sum","withdrawals_sum","reserves_sum","treasury_sum","withdrawable_amount","pool_id"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/rewards":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"epoch":{"type":"integer","description":"Epoch of the associated reward"},"amount":{"type":"string","description":"Rewards for given epoch in Lovelaces"},"pool_id":{"type":"string","description":"Bech32 pool ID being delegated to"},"type":{"type":"string","enum":["leader","member","pool_deposit_refund"],"description":"Type of the reward"}},"required":["epoch","amount","pool_id","type"]},"example":[{"epoch":215,"amount":"12695385","pool_id":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","type":"member"},{"epoch":216,"amount":"3586329","pool_id":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","type":"member"},{"epoch":217,"amount":"1","pool_id":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","type":"member"},{"epoch":217,"amount":"1337","pool_id":"pool1cytwr0n7eas6du2h2xshl8ypa1yqr18f0erlhhjcuczysiunjcs","type":"leader"},{"epoch":218,"amount":"1395265","pool_id":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","type":"member"},{"epoch":218,"amount":"500000000","pool_id":"pool1cytwr0n7eas6du2h2xshl8ypa1yqr18f0erlhhjcuczysiunjcs","type":"pool_deposit_refund"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/history":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"active_epoch":{"type":"integer","example":210,"description":"Epoch in which the stake was active"},"amount":{"type":"string","description":"Stake amount in Lovelaces"},"pool_id":{"type":"string","description":"Bech32 ID of pool being delegated to"}},"required":["active_epoch","amount","pool_id"]},"example":[{"active_epoch":210,"amount":"12695385","pool_id":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy"},{"active_epoch":211,"amount":"22695385","pool_id":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/delegations":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"active_epoch":{"type":"integer","example":210,"description":"Epoch in which the delegation becomes active"},"tx_hash":{"type":"string","description":"Hash of the transaction containing the delegation"},"amount":{"type":"string","description":"Rewards for given epoch in Lovelaces"},"pool_id":{"type":"string","description":"Bech32 ID of pool being delegated to"}},"required":["active_epoch","tx_hash","amount","pool_id"]},"example":[{"active_epoch":210,"tx_hash":"2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531","amount":"12695385","pool_id":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy"},{"active_epoch":242,"tx_hash":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dde628516157f0","amount":"12691385","pool_id":"pool1kchver88u3kygsak8wgll7htr8uxn5v35lfrsyy842nkscrzyvj"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/registrations":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the transaction containing the (de)registration certificate"},"action":{"type":"string","enum":["registered","deregistered"],"description":"Action in the certificate"}},"required":["tx_hash","action"]},"example":[{"tx_hash":"2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531","action":"registered"},{"tx_hash":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dde628516157f0","action":"deregistered"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/withdrawals":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the transaction containing the withdrawal"},"amount":{"type":"string","description":"Withdrawal amount in Lovelaces"}},"required":["tx_hash","amount"]},"example":[{"tx_hash":"48a9625c841eea0dd2bb6cf551eabe6523b7290c9ce34be74eedef2dd8f7ecc5","amount":"454541212442"},{"tx_hash":"4230b0cbccf6f449f0847d8ad1d634a7a49df60d8c142bb8cc2dbc8ca03d9e34","amount":"97846969"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/mirs":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the transaction containing the MIR"},"amount":{"type":"string","description":"MIR amount in Lovelaces"}},"required":["tx_hash","amount"]},"example":[{"tx_hash":"69705bba1d687a816ff5a04ec0c358a1f1ef075ab7f9c6cc2763e792581cec6d","amount":"2193707473"},{"tx_hash":"baaa77b63d4d7d2bb3ab02c9b85978c2092c336dede7f59e31ad65452d510c13","amount":"14520198574"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/addresses":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","description":"Address associated with the stake key"}},"required":["address"]},"example":[{"address":"addr1qx2kd28nq8ac5prwg32hhvudlwggpgfp8utlyqxu6wqgz62f79qsdmm5dsknt9ecr5w468r9ey0fxwkdrwh08ly3tu9sy0f4qd"},{"address":"addr1qys3czp8s9thc6u2fqed9yq3h24nyw28uk0m6mkgn9dkckjf79qsdmm5dsknt9ecr5w468r9ey0fxwkdrwh08ly3tu9suth4w4"},{"address":"addr1q8j55h253zcvl326sk5qdt2n8z7eghzspe0ekxgncr796s2f79qsdmm5dsknt9ecr5w468r9ey0fxwkdrwh08ly3tu9sjmd35m"},{"address":"addr1q8f7gxrprank3drhx8k5grlux7ene0nlwun8y9thu8mc3yjf79qsdmm5dsknt9ecr5w468r9ey0fxwkdrwh08ly3tu9sls6vnt"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/addresses/assets":{"response":{"200":{"type":"array","items":{"type":"object","description":"The sum of all assets of all addresses associated with a given account","properties":{"unit":{"type":"string","format":"Concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"d5e6bf0500378d4f0da4e8dde6becec7621cd8cbf5cbb9b87013d4cc537061636542756433343132","quantity":"1"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"125"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/addresses/total":{"response":{"200":{"type":"object","properties":{"stake_address":{"type":"string","description":"Bech32 encoded stake address","example":"stake1u9l5q5jwgelgagzyt6nuaasefgmn8pd25c8e9qpeprq0tdcp0e3uk"},"received_sum":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset for all addresses associated with the account","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"sent_sum":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset for all addresses associated with the account","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"tx_count":{"type":"integer","example":12,"description":"Count of all transactions for all addresses associated with the account"}},"required":["stake_address","received_sum","sent_sum","tx_count"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/mempool":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the transaction"}},"required":["tx_hash"]},"example":[{"tx_hash":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/mempool/{hash}":{"response":{"200":{"type":"object","properties":{"tx":{"type":"object","properties":{"hash":{"type":"string","example":"1e043f100dce12d107f679685acd2fc0610e10f72a92d412794c9773d11d8477","description":"Transaction hash"},"output_amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"fees":{"type":"string","example":"182485","description":"Fees of the transaction in Lovelaces"},"deposit":{"type":"string","example":"0","description":"Deposit within the transaction in Lovelaces"},"size":{"type":"integer","example":433,"description":"Size of the transaction in Bytes"},"invalid_before":{"type":"string","nullable":true,"example":null,"description":"Left (included) endpoint of the timelock validity intervals"},"invalid_hereafter":{"type":"string","nullable":true,"example":"13885913","description":"Right (excluded) endpoint of the timelock validity intervals"},"utxo_count":{"type":"integer","example":4,"description":"Count of UTXOs within the transaction"},"withdrawal_count":{"type":"integer","example":0,"description":"Count of the withdrawals within the transaction"},"mir_cert_count":{"type":"integer","example":0,"description":"Count of the MIR certificates within the transaction"},"delegation_count":{"type":"integer","example":0,"description":"Count of the delegations within the transaction"},"stake_cert_count":{"type":"integer","example":0,"description":"Count of the stake keys (de)registration within the transaction"},"pool_update_count":{"type":"integer","example":0,"description":"Count of the stake pool registration and update certificates within the transaction"},"pool_retire_count":{"type":"integer","example":0,"description":"Count of the stake pool retirement certificates within the transaction"},"asset_mint_or_burn_count":{"type":"integer","example":0,"description":"Count of asset mints and burns within the transaction"},"redeemer_count":{"type":"integer","example":0,"description":"Count of redeemers within the transaction"},"valid_contract":{"type":"boolean","example":true,"description":"True if contract script passed validation"}},"required":["hash","output_amount","fees","deposit","size","invalid_before","invalid_hereafter","utxo_count","withdrawal_count","mir_cert_count","delegation_count","stake_cert_count","pool_update_count","pool_retire_count","asset_mint_or_burn_count","redeemer_count","valid_contract"]},"inputs":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","example":"addr1q9ld26v2lv8wvrxxmvg90pn8n8n5k6tdst06q2s856rwmvnueldzuuqmnsye359fqrk8hwvenjnqultn7djtrlft7jnq7dy7wv","description":"Input address"},"tx_hash":{"type":"string","example":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0","description":"Hash of the UTXO transaction"},"output_index":{"type":"integer","example":0,"description":"UTXO index in the transaction"},"collateral":{"type":"boolean","example":false,"description":"Whether the input is a collateral consumed on script validation failure"},"reference":{"type":"boolean","example":false,"description":"Whether the input is a reference transaction input"}},"required":["tx_hash","output_index","collateral"]}},"outputs":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","example":"addr1q9ld26v2lv8wvrxxmvg90pn8n8n5k6tdst06q2s856rwmvnueldzuuqmnsye359fqrk8hwvenjnqultn7djtrlft7jnq7dy7wv","description":"Output address"},"amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"output_index":{"type":"integer","example":0,"description":"UTXO index in the transaction"},"data_hash":{"type":"string","nullable":true,"description":"The hash of the transaction output datum","example":"9e478573ab81ea7a8e31891ce0648b81229f408d596a3483e6f4f9b92d3cf710"},"inline_datum":{"type":"string","nullable":true,"description":"CBOR encoded inline datum","example":"19a6aa"},"collateral":{"type":"boolean","example":false,"description":"Whether the output is a collateral output"},"reference_script_hash":{"type":"string","nullable":true,"description":"The hash of the reference script of the output","example":"13a3efd825703a352a8f71f4e2758d08c28c564e8dfcce9f77776ad1"}},"required":["address","amount","output_index","data_hash","inline_datum","collateral","reference_script_hash"]}},"redeemers":{"type":"array","items":{"type":"object","properties":{"tx_index":{"type":"integer","example":0,"description":"Index of the redeemer within the transaction"},"purpose":{"type":"string","enum":["spend","mint","cert","reward"],"example":"spend","description":"Validation purpose"},"unit_mem":{"type":"string","example":"1700","description":"The budget in Memory to run a script"},"unit_steps":{"type":"string","example":"476468","description":"The budget in CPU steps to run a script"}},"required":["tx_index","purpose","unit_mem","unit_steps"]}}},"required":["tx","inputs","outputs"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/mempool/addresses/{address}":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the transaction"}},"required":["tx_hash"]},"example":[{"tx_hash":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"address":{"type":"string"}}}},"/metadata/txs/labels":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string","description":"Metadata label"},"cip10":{"type":"string","nullable":true,"description":"CIP10 defined description"},"count":{"type":"string","description":"The count of metadata entries with a specific label"}},"required":["label","cip10","count"]},"example":[{"label":"1990","cip10":null,"count":"1"},{"label":"1967","cip10":"nut.link metadata oracles registry","count":"3"},{"label":"1968","cip10":"nut.link metadata oracles data points","count":"16321"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/metadata/txs/labels/{label}":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Transaction hash that contains the specific metadata"},"json_metadata":{"anyOf":[{"type":"string"},{"type":"object","additionalProperties":true},{"type":"array","items":{}},{"type":"integer"},{"type":"number"},{"type":"boolean"},{"type":"null"}],"description":"Content of the JSON metadata"}},"required":["tx_hash","json_metadata"]},"example":[{"tx_hash":"257d75c8ddb0434e9b63e29ebb6241add2b835a307aa33aedba2effe09ed4ec8","json_metadata":{"ADAUSD":[{"value":"0.10409800535729975","source":"ergoOracles"}]}},{"tx_hash":"e865f2cc01ca7381cf98dcdc4de07a5e8674b8ea16e6a18e3ed60c186fde2b9c","json_metadata":{"ADAUSD":[{"value":"0.15409850555139935","source":"ergoOracles"}]}},{"tx_hash":"4237501da3cfdd53ade91e8911e764bd0699d88fd43b12f44a1f459b89bc91be","json_metadata":null}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"label":{"type":"string"}}}},"/metadata/txs/labels/{label}/cbor":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Transaction hash that contains the specific metadata"},"cbor_metadata":{"deprecated":true,"type":"string","nullable":true,"description":"Content of the CBOR metadata"},"metadata":{"type":"string","nullable":true,"description":"Content of the CBOR metadata in hex"}},"required":["tx_hash","cbor_metadata","metadata"]},"example":[{"tx_hash":"257d75c8ddb0434e9b63e29ebb6241add2b835a307aa33aedba2effe09ed4ec8","cbor_metadata":null,"metadata":null},{"tx_hash":"e865f2cc01ca7381cf98dcdc4de07a5e8674b8ea16e6a18e3ed60c186fde2b9c","cbor_metadata":null,"metadata":null},{"tx_hash":"4237501da3cfdd53ade91e8911e764bd0699d88fd43b12f44a1f459b89bc91be","cbor_metadata":"\\xa100a16b436f6d62696e6174696f6e8601010101010c","metadata":"a100a16b436f6d62696e6174696f6e8601010101010c"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"label":{"type":"string"}}}},"/addresses/{address}":{"response":{"200":{"type":"object","properties":{"address":{"type":"string","description":"Bech32 encoded addresses","example":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz"},"amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"stake_address":{"type":"string","nullable":true,"example":"stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7","description":"Stake address that controls the key"},"type":{"type":"string","enum":["byron","shelley"],"example":"shelley","description":"Address era"},"script":{"type":"boolean","example":false,"description":"True if this is a script address"}},"required":["address","amount","stake_address","type","script"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"address":{"type":"string"}}}},"/addresses/{address}/extended":{"response":{"200":{"type":"object","properties":{"address":{"type":"string","description":"Bech32 encoded addresses","example":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz"},"amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"},"decimals":{"type":"integer","nullable":true,"description":"Number of decimal places of the asset unit. Primary data source is CIP68 reference NFT with a fallback to off-chain metadata."},"has_nft_onchain_metadata":{"type":"boolean","description":"True if the latest minting transaction includes metadata (best-effort)"}},"required":["unit","quantity","decimals","has_nft_onchain_metadata"]},"example":[{"unit":"lovelace","quantity":"42000000","decimals":6,"has_nft_onchain_metadata":false},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12","decimals":null,"has_nft_onchain_metadata":true}]},"stake_address":{"type":"string","nullable":true,"example":"stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7","description":"Stake address that controls the key"},"type":{"type":"string","enum":["byron","shelley"],"example":"shelley","description":"Address era"},"script":{"type":"boolean","example":false,"description":"True if this is a script address"}},"required":["address","amount","stake_address","type","script"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"address":{"type":"string"}}}},"/addresses/{address}/total":{"response":{"200":{"type":"object","properties":{"address":{"type":"string","description":"Bech32 encoded address","example":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz"},"received_sum":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"sent_sum":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"tx_count":{"type":"integer","example":12,"description":"Count of all transactions on the address"}},"required":["address","received_sum","sent_sum","tx_count"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"address":{"type":"string"}}}},"/addresses/{address}/utxos":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","description":"Bech32 encoded addresses - useful when querying by payment_cred","example":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz"},"tx_hash":{"type":"string","description":"Transaction hash of the UTXO"},"tx_index":{"type":"integer","deprecated":true,"description":"UTXO index in the transaction"},"output_index":{"type":"integer","description":"UTXO index in the transaction"},"amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]}},"block":{"type":"string","description":"Block hash of the UTXO"},"data_hash":{"type":"string","nullable":true,"description":"The hash of the transaction output datum"},"inline_datum":{"type":"string","nullable":true,"description":"CBOR encoded inline datum","example":"19a6aa"},"reference_script_hash":{"type":"string","nullable":true,"description":"The hash of the reference script of the output","example":"13a3efd825703a352a8f71f4e2758d08c28c564e8dfcce9f77776ad1"}},"required":["address","tx_hash","tx_index","output_index","amount","block","data_hash","inline_datum","reference_script_hash"]},"example":[{"address":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz","tx_hash":"39a7a284c2a0948189dc45dec670211cd4d72f7b66c5726c08d9b3df11e44d58","output_index":0,"amount":[{"unit":"lovelace","quantity":"42000000"}],"block":"7eb8e27d18686c7db9a18f8bbcfe34e3fed6e047afaa2d969904d15e934847e6","data_hash":"9e478573ab81ea7a8e31891ce0648b81229f408d596a3483e6f4f9b92d3cf710","inline_datum":null,"reference_script_hash":null},{"address":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz","tx_hash":"4c4e67bafa15e742c13c592b65c8f74c769cd7d9af04c848099672d1ba391b49","output_index":0,"amount":[{"unit":"lovelace","quantity":"729235000"}],"block":"953f1b80eb7c11a7ffcd67cbd4fde66e824a451aca5a4065725e5174b81685b7","data_hash":null,"inline_datum":null,"reference_script_hash":null},{"address":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz","tx_hash":"768c63e27a1c816a83dc7b07e78af673b2400de8849ea7e7b734ae1333d100d2","output_index":1,"amount":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}],"block":"5c571f83fe6c784d3fbc223792627ccf0eea96773100f9aedecf8b1eda4544d7","data_hash":null,"inline_datum":null,"reference_script_hash":null}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"address":{"type":"string"}}}},"/addresses/{address}/utxos/{asset}":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","description":"Bech32 encoded addresses - useful when querying by payment_cred","example":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz"},"tx_hash":{"type":"string","description":"Transaction hash of the UTXO"},"tx_index":{"type":"integer","deprecated":true,"description":"UTXO index in the transaction"},"output_index":{"type":"integer","description":"UTXO index in the transaction"},"amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]}},"block":{"type":"string","description":"Block hash of the UTXO"},"data_hash":{"type":"string","nullable":true,"description":"The hash of the transaction output datum"},"inline_datum":{"type":"string","nullable":true,"description":"CBOR encoded inline datum","example":"19a6aa"},"reference_script_hash":{"type":"string","nullable":true,"description":"The hash of the reference script of the output","example":"13a3efd825703a352a8f71f4e2758d08c28c564e8dfcce9f77776ad1"}},"required":["address","tx_hash","tx_index","output_index","amount","block","data_hash","inline_datum","reference_script_hash"]},"example":[{"address":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz","tx_hash":"39a7a284c2a0948189dc45dec670211cd4d72f7b66c5726c08d9b3df11e44d58","output_index":0,"amount":[{"unit":"lovelace","quantity":"42000000"}],"block":"7eb8e27d18686c7db9a18f8bbcfe34e3fed6e047afaa2d969904d15e934847e6","data_hash":"9e478573ab81ea7a8e31891ce0648b81229f408d596a3483e6f4f9b92d3cf710","inline_datum":null,"reference_script_hash":null},{"address":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz","tx_hash":"4c4e67bafa15e742c13c592b65c8f74c769cd7d9af04c848099672d1ba391b49","output_index":0,"amount":[{"unit":"lovelace","quantity":"729235000"}],"block":"953f1b80eb7c11a7ffcd67cbd4fde66e824a451aca5a4065725e5174b81685b7","data_hash":null,"inline_datum":null,"reference_script_hash":null},{"address":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz","tx_hash":"768c63e27a1c816a83dc7b07e78af673b2400de8849ea7e7b734ae1333d100d2","output_index":1,"amount":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}],"block":"5c571f83fe6c784d3fbc223792627ccf0eea96773100f9aedecf8b1eda4544d7","data_hash":null,"inline_datum":null,"reference_script_hash":null}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"address":{"type":"string"},"asset":{"type":"string"}}}},"/addresses/{address}/txs":{"response":{"200":{"type":"array","items":{"type":"string","description":"Hash of the transaction"},"example":["2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531","1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dde628516157f0"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"address":{"type":"string"}}}},"/addresses/{address}/transactions":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the transaction"},"tx_index":{"type":"integer","description":"Transaction index within the block"},"block_height":{"type":"integer","description":"Block height"},"block_time":{"type":"integer","description":"Block creation time in UNIX time"}},"required":["tx_hash","tx_index","block_height","block_time"]},"example":[{"tx_hash":"8788591983aa73981fc92d6cddbbe643959f5a784e84b8bee0db15823f575a5b","tx_index":6,"block_height":69,"block_time":1635505891},{"tx_hash":"52e748c4dec58b687b90b0b40d383b9fe1f24c1a833b7395cdf07dd67859f46f","tx_index":9,"block_height":4547,"block_time":1635505987},{"tx_hash":"e8073fd5318ff43eca18a852527166aa8008bee9ee9e891f585612b7e4ba700b","tx_index":0,"block_height":564654,"block_time":1834505492}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"},"from":{"type":"string"},"to":{"type":"string"}}},"params":{"type":"object","properties":{"address":{"type":"string"}}}},"/pools":{"response":{"200":{"type":"array","items":{"type":"string","description":"Bech32 encoded pool ID"},"example":["pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","pool1hn7hlwrschqykupwwrtdfkvt2u4uaxvsgxyh6z63703p2knj288","pool1ztjyjfsh432eqetadf82uwuxklh28xc85zcphpwq6mmezavzad2"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/pools/extended":{"response":{"200":{"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"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/pools/retired":{"response":{"200":{"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}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/pools/retiring":{"response":{"200":{"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}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/pools/{pool_id}":{"response":{"200":{"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"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"pool_id":{"type":"string"}}}},"/pools/{pool_id}/history":{"response":{"200":{"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"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"pool_id":{"type":"string"}}}},"/pools/{pool_id}/metadata":{"response":{"200":{"anyOf":[{"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"]},{"type":"object"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"pool_id":{"type":"string"}}}},"/pools/{pool_id}/relays":{"response":{"200":{"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"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"pool_id":{"type":"string"}}}},"/pools/{pool_id}/delegators":{"response":{"200":{"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"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"pool_id":{"type":"string"}}}},"/pools/{pool_id}/blocks":{"response":{"200":{"type":"array","items":{"type":"string","description":"Block hashes"},"example":["d8982ca42cfe76b747cc681d35d671050a9e41e9cfe26573eb214e94fe6ff21d","026436c539e2ce84c7f77ffe669f4e4bbbb3b9c53512e5857dcba8bb0b4e9a8c","bcc8487f419b8c668a18ea2120822a05df6dfe1de1f0fac3feba88cf760f303c","86bf7b4a274e0f8ec9816171667c1b4a0cfc661dc21563f271acea9482b62df7"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"pool_id":{"type":"string"}}}},"/pools/{pool_id}/updates":{"response":{"200":{"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"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"pool_id":{"type":"string"}}}},"/assets":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"asset":{"type":"string","format":"Concatenation of the policy_id and hex-encoded asset_name","description":"Asset identifier"},"quantity":{"type":"string","description":"Current asset quantity"}},"required":["asset","quantity"]},"example":[{"asset":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"1"},{"asset":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e75d","quantity":"100000"},{"asset":"6804edf9712d2b619edb6ac86861fe93a730693183a262b165fcc1ba1bc99cad","quantity":"18605647"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/assets/{asset}":{"response":{"200":{"type":"object","properties":{"asset":{"type":"string","example":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","description":"Hex-encoded asset full name"},"policy_id":{"type":"string","example":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a7","description":"Policy ID of the asset"},"asset_name":{"type":"string","nullable":true,"example":"6e7574636f696e","description":"Hex-encoded asset name of the asset"},"fingerprint":{"type":"string","example":"asset1pkpwyknlvul7az0xx8czhl60pyel45rpje4z8w","description":"CIP14 based user-facing fingerprint"},"quantity":{"type":"string","example":"12000","description":"Current asset quantity"},"initial_mint_tx_hash":{"type":"string","example":"6804edf9712d2b619edb6ac86861fe93a730693183a262b165fcc1ba1bc99cad","description":"ID of the initial minting transaction"},"mint_or_burn_count":{"type":"integer","example":1,"description":"Count of mint and burn transactions"},"onchain_metadata":{"type":"object","nullable":true,"additionalProperties":true,"description":"On-chain metadata which SHOULD adhere to the valid standards,\nbased on which we perform the look up and display the asset\n(best effort)\n"},"onchain_metadata_standard":{"type":"string","nullable":true,"enum":["CIP25v1","CIP25v2","CIP68v1","CIP68v2"],"description":"If on-chain metadata passes validation, we display the standard\nunder which it is valid\n"},"onchain_metadata_extra":{"type":"string","nullable":true,"description":"Arbitrary plutus data (CIP68).\n"},"metadata":{"type":"object","nullable":true,"description":"Off-chain metadata fetched from GitHub based on network.\nMainnet: https://github.com/cardano-foundation/cardano-token-registry/\nTestnet: https://github.com/input-output-hk/metadata-registry-testnet/\n","properties":{"name":{"type":"string","example":"nutcoin","description":"Asset name"},"description":{"type":"string","example":"The Nut Coin","description":"Asset description"},"ticker":{"type":"string","nullable":true,"example":"nutc"},"url":{"type":"string","nullable":true,"example":"https://www.stakenuts.com/","description":"Asset website"},"logo":{"type":"string","nullable":true,"example":"iVBORw0KGgoAAAANSUhEUgAAADAAAAAoCAYAAAC4h3lxAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QA/wD/AP+gvaeTAAAAB3RJTUUH5QITCDUPjqwFHwAAB9xJREFUWMPVWXtsU9cZ/8499/r6dZ3E9rUdO7ZDEgglFWO8KaOsJW0pCLRKrN1AqqYVkqoqrYo0ja7bpElru1WairStFKY9WzaE1E1tx+jokKqwtqFNyhKahEJJyJNgJ37E9r1+3HvO/sFR4vhx7SBtfH/F3/l93/f7ne/4PBxEKYU72dj/ZfH772v1TU+HtqbTaX8wOO01GPQpRVH7JEm+vGHDuq6z7/8jUSoHKtaBKkEUFUXdajDy1hUrmrs6zn/wWS7m7pZVjMUirKGUTnzc+e9xLcTrPPVfZzDz06Sc2lyQGEIyAPzT7Xa+dvE/3e+XLaCxoflHsVj8MAAYs74aa/WHoenwvpkZKeFy2Z5NJlOPUkqXZccFwSSrKjlyffjLH+TL6XTUGTGL/6hklD3ldIrj2M5MRmkLBMcvaRLQ1Nj88sxM/HCBfMP+eu/OYGDqe6l0WmpoqJ/88upgrU7HrQNA/cFg6MlkKiLlBtVUO40cx54BgHvLIT/HJLvdeqh/4NKxogKWN7fsCoUi7xTLxLJ4vLq6ak//wKVOrdXtttrTDMPsqJA8AAAwDErdu3VL3alTf5ma9eWCpoKhn5dKpCiqJxicPucQPVu0FHaInn35yHMcKwPAa4SQ3QCwFgDWUko3qSr5vqqSgTypuEg4Mo/zvA74/Y0rZSnZU8akSHV17k2fXfy0txjI5224kEym1s/1EUI7LBbztweHrkzkizn49LP6U6feepFSeggAQK/n04SQZ8bGrxdeQjZrbRvGzLH5hcibRqOhPplMfS1fIY5jz4xPDBdcGggho2h3z9sOLRazdG3wqp9SMgUlzGZ17SSEPsRx7J8CwfGu3PF57WhqqjfN/VxVJUxKUrIdITAXKpDJKFscosdfaFy0u+/K9aXTmXe0kAcAmA5Nng5Hbj6Tj/wCAYFAcN7uEY3GXGazMSHLqVVFapgBoMPna9yqhRAAgCTJMa3YUjZPgNFkSlWYx5eUkx+0tKx83V3rF+cVYJjruWCe133DIXqMmrNrFSDabRcWkywYmG5XFOW6aHcfb9324CoAgMmbo9MIoXkneCajiAihV/c/8eSiBSw4BxyiZxQA6m7H7FBKT2CMn2MY5jFFUX6ZO+5w2j8aHZ7YH40FByrJD5DnHGAY5uTtIA8AgBDaR4F2Yxb3WizCgmtA4ObUPSazodduqz3Suu0hf0U1cjvgdNSJ1dWWveFwdDUAtAiC2Uopdcdi8c9Zlh3GmDGl05mtAKAvo47EcdwThJCjqqpWFxALlNITomg73tff21GRAJez7iVK4WGGYfoJIQduBsbm7UrLm1ueCoUiv65kpiilw1ZbzcFoZOYoIcRTAn6eYZgXJm+Oni+Vd3YJbdyweSch9HlK6SpVVfcyDDq7Yf3m2XPBIXraKyV/a4b9UkLawbLsZgB4rwR8CyGkw13r+5fX27BckwBAEJ47oKpk8+DgUIdod7fV1vqOAMDrlZLPmqKoB+rrvXIgOP6w0WjYy3Ls5RL4bUk52bVm9fqnCk7M3CXU2ND8+MxM7BcIIftiyRYyntcdHh0bmr0wfmXl6p2SJB2KRmP3l4j7zejYUFtRAQAAgslm1Bv4nyGEDpYiIwjmjw0G/RjP866JiclNqqqWfKLq9fyZkdHBBXcnl9O71GDgD8bj0ncRQqZ8sRgzL9yYHH2pqICsOUTPLgA4CXNeZFmzWIS/YhYfjUZmvqPjuceSckrz25pS2h2cmlhbaBwhzr6kfsnL8Xhif55YYFl23Y3Jkdl7EVMoUSA4/q6qqNsBIPd11e52u45FwtG3CSH7yiEPAGC1Vt9dXGBmanDoygFLlbAjtzZCCMyC6VeaOpA1l9N7l1kwtauKaozHE28YTQaQpeR7+TqjxXheR0fHhhgt2CX1S3clEtKC16HL5djYe+niBU0CcmYA2W21/Qih5ZqDcoxlMZ24MaJJAABA87IVJ8Lh6N65Pr1B/+LIyLUfAhRZQvnM6ah7ZDHkAQB0vK6/HHxNTc2ruT5Zkldn/y5LACFk+2LIAwAwCGl6yGSt88KHXbmrBCHkqEgAz+vWLFZALJb4qNwYhFDhCSknkSwnQ4sVgDFeWg7+gQe2r1tAmkGTFQlACHWVg89nhJA9ot3dphV/eeCLp/Pw6K5IQP0S39uLFXCLwDG7zf1cKZxD9LSlUunHc/12u/2t2Vzl/rzu8zb8PZlM7bwdQgDgPK/nX2nddt+53//ht3LW2dS0fF0iLj2vquojuQFmwXRucPBKa8UCmpe1iOFwpAsAfLdJBFBKwVIlXJ2JxqKCxbwyHkvoCkAlv9/71U+7Oq+UJWDZ0hViJBL1cRynbNq0sSeeiPl6ei4NqIqq6TSmlB7X6bjuTEY5pgWfzwxGPZhMpt39/b3vzvWXFGCzulZjjM/DrauDwcAr8bjcgzGjZUuVBMH8k2uDX7wCAFDr8n2LEPI7SqmhTP6SzVbz6MDlz0/nDpT8EmOM22HOvUeWU2wp8iyLgRL6hk7Hrc2SBwC4MTlykmXZRozxn00mbVcphNA5jJmV+chr6oDd5l6jN/A/TqfSuwEAGITGMIsvGo3GTwTB3Dc2NjGSxdZYq4VIOOoNBANnKE0XPXE3brjHOTQ08k2MmVZOxzVJCbkFIQSCYEphzPaFQuGzTpfjb319PZ8UFXin/5OvrHPg/9HueAH/BSUqOuNZm4fyAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIxLTAyLTE5VDA4OjUyOjI1KzAwOjAwCmFGlgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMS0wMi0xOVQwODo1MjoyMyswMDowMBjsyxAAAAAASUVORK5CYII=","description":"Base64 encoded logo of the asset"},"decimals":{"type":"integer","nullable":true,"maximum":255,"example":6,"description":"Number of decimal places of the asset unit"}},"required":["name","description","ticker","url","logo","decimals"]}},"required":["asset","policy_id","asset_name","fingerprint","quantity","initial_mint_tx_hash","mint_or_burn_count","metadata","onchain_metadata"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"asset":{"type":"string"}}}},"/assets/{asset}/history":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the transaction containing the asset action"},"action":{"type":"string","enum":["minted","burned"],"description":"Action executed upon the asset policy"},"amount":{"type":"string","description":"Asset amount of the specific action"}},"required":["tx_hash","action","amount"]},"example":[{"tx_hash":"2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531","amount":"10","action":"minted"},{"tx_hash":"9c190bc1ac88b2ab0c05a82d7de8b71b67a9316377e865748a89d4426c0d3005","amount":"5","action":"burned"},{"tx_hash":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dde628516157f0","amount":"5","action":"burned"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"asset":{"type":"string"}}}},"/assets/{asset}/txs":{"response":{"200":{"type":"array","items":{"type":"string","description":"Hash of the transaction"},"example":["8788591983aa73981fc92d6cddbbe643959f5a784e84b8bee0db15823f575a5b","52e748c4dec58b687b90b0b40d383b9fe1f24c1a833b7395cdf07dd67859f46f","e8073fd5318ff43eca18a852527166aa8008bee9ee9e891f585612b7e4ba700b"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"asset":{"type":"string"}}}},"/assets/{asset}/transactions":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the transaction"},"tx_index":{"type":"integer","description":"Transaction index within the block"},"block_height":{"type":"integer","description":"Block height"},"block_time":{"type":"integer","example":1635505891,"description":"Block creation time in UNIX time"}},"required":["tx_hash","tx_index","block_height","block_time"]},"example":[{"tx_hash":"8788591983aa73981fc92d6cddbbe643959f5a784e84b8bee0db15823f575a5b","tx_index":6,"block_height":69,"block_time":1635505891},{"tx_hash":"52e748c4dec58b687b90b0b40d383b9fe1f24c1a833b7395cdf07dd67859f46f","tx_index":9,"block_height":4547,"block_time":1635505987},{"tx_hash":"e8073fd5318ff43eca18a852527166aa8008bee9ee9e891f585612b7e4ba700b","tx_index":0,"block_height":564654,"block_time":1834505492}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"asset":{"type":"string"}}}},"/assets/{asset}/addresses":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","description":"Address containing the specific asset"},"quantity":{"type":"string","description":"Asset quantity on the specific address"}},"required":["address","quantity"]},"example":[{"address":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz","quantity":"1"},{"address":"addr1qyhr4exrgavdcn3qhfcc9f939fzsch2re5ry9cwvcdyh4x4re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qdpvhza","quantity":"100000"},{"address":"addr1q8zup8m9ue3p98kxlxl9q8rnyan8hw3ul282tsl9s326dfj088lvedv4zckcj24arcpasr0gua4c5gq4zw2rpcpjk2lq8cmd9l","quantity":"18605647"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"asset":{"type":"string"}}}},"/assets/policy/{policy_id}":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"asset":{"type":"string","description":"Concatenation of the policy_id and hex-encoded asset_name"},"quantity":{"type":"string","description":"Current asset quantity"}},"required":["asset","quantity"]},"example":[{"asset":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"1"},{"asset":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a766e","quantity":"100000"},{"asset":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb574636f696e","quantity":"18605647"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"policy_id":{"type":"string"}}}},"/scripts":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"script_hash":{"type":"string","description":"Script hash"}},"required":["script_hash"]},"example":[{"script_hash":"13a3efd825703a352a8f71f4e2758d08c28c564e8dfcce9f77776ad1"},{"script_hash":"e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e"},{"script_hash":"a6e63c0ff05c96943d1cc30bf53112ffff0f34b45986021ca058ec54"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/scripts/{script_hash}":{"response":{"200":{"type":"object","properties":{"script_hash":{"type":"string","example":"13a3efd825703a352a8f71f4e2758d08c28c564e8dfcce9f77776ad1","description":"Script hash"},"type":{"type":"string","enum":["timelock","plutusV1","plutusV2"],"example":"plutusV1","description":"Type of the script language"},"serialised_size":{"type":"integer","nullable":true,"description":"The size of the CBOR serialised script, if a Plutus script","example":3119}},"required":["script_hash","type","serialised_size"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"script_hash":{"type":"string"}}}},"/scripts/{script_hash}/json":{"response":{"200":{"type":"object","properties":{"json":{"nullable":true}},"required":["json"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"script_hash":{"type":"string"}}}},"/scripts/{script_hash}/cbor":{"response":{"200":{"type":"object","properties":{"cbor":{"type":"string","nullable":true,"description":"CBOR contents of the `plutus` script, null for `timelocks`"}},"required":["cbor"],"example":{"cbor":"4e4d01000033222220051200120011"}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"script_hash":{"type":"string"}}}},"/scripts/{script_hash}/redeemers":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","example":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0","description":"Hash of the transaction"},"tx_index":{"type":"integer","example":0,"description":"The index of the redeemer pointer in the transaction"},"purpose":{"type":"string","enum":["spend","mint","cert","reward"],"example":"spend","description":"Validation purpose"},"redeemer_data_hash":{"type":"string","example":"923918e403bf43c34b4ef6b48eb2ee04babed17320d8d1b9ff9ad086e86f44ec","description":"Datum hash of the redeemer"},"datum_hash":{"type":"string","example":"923918e403bf43c34b4ef6b48eb2ee04babed17320d8d1b9ff9ad086e86f44ec","description":"Datum hash","deprecated":true},"unit_mem":{"type":"string","example":"1700","description":"The budget in Memory to run a script"},"unit_steps":{"type":"string","example":"476468","description":"The budget in CPU steps to run a script"},"fee":{"type":"string","example":"172033","description":"The fee consumed to run the script"}},"required":["tx_hash","tx_index","purpose","redeemer_data_hash","datum_hash","unit_mem","unit_steps","fee"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"script_hash":{"type":"string"}}}},"/scripts/datum/{datum_hash}":{"response":{"200":{"type":"object","properties":{"json_value":{"type":"object","additionalProperties":true,"description":"JSON content of the datum"}},"required":["json_value"],"example":{"json_value":{"int":42}}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"datum_hash":{"type":"string"}}}},"/scripts/datum/{datum_hash}/cbor":{"response":{"200":{"type":"object","properties":{"cbor":{"type":"string","description":"CBOR serialized datum"}},"required":["cbor"],"example":{"cbor":"19a6aa"}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"datum_hash":{"type":"string"}}}},"/utils/addresses/xpub/{xpub}/{role}/{index}":{"response":{"200":{"type":"object","properties":{"xpub":{"type":"string","description":"Script hash"},"role":{"type":"integer","description":"Account role"},"index":{"type":"integer","description":"Address index"},"address":{"type":"string","description":"Derived address"}},"required":["xpub","role","index","address"],"example":[{"xpub":"d507c8f866691bd96e131334c355188b1a1d0b2fa0ab11545075aab332d77d9eb19657ad13ee581b56b0f8d744d66ca356b93d42fe176b3de007d53e9c4c4e7a","role":0,"index":0,"address":"addr1q90sqnljxky88s0jsnps48jd872p7znzwym0jpzqnax6qs5nfrlkaatu28n0qzmqh7f2cpksxhpc9jefx3wrl0a2wu8q5amen7"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"xpub":{"type":"string"},"role":{"type":"integer"},"index":{"type":"integer"}}}},"/utils/txs/evaluate":{"response":{"200":{"type":"object","additionalProperties":true},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"425":{"type":"object","properties":{"status_code":{"type":"integer","example":425},"error":{"type":"string","example":"Mempool Full"},"message":{"type":"string","example":"Mempool is full, please try resubmitting again later."}},"required":["error","message","status_code"]},"429":{"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":{"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"]}}},"/utils/txs/evaluate/utxos":{"response":{"200":{"type":"object","additionalProperties":true},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"425":{"type":"object","properties":{"status_code":{"type":"integer","example":425},"error":{"type":"string","example":"Mempool Full"},"message":{"type":"string","example":"Mempool is full, please try resubmitting again later."}},"required":["error","message","status_code"]},"429":{"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":{"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"]}}},"/ipfs/add":{"response":{"200":{"type":"object","properties":{"name":{"type":"string","example":"README.md","description":"Name of the file"},"ipfs_hash":{"type":"string","example":"QmZbHqiCxKEVX7QfijzJTkZiSi3WEVTcvANgNAWzDYgZDr","description":"IPFS hash of the file"},"size":{"type":"string","example":"125297","description":"IPFS node size in Bytes"}},"required":["name","ipfs_hash","size"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/ipfs/gateway/{IPFS_path}":{"response":{"200":{"type":"string","format":"binary"},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"IPFS_path":{"type":"string","description":"Path to the IPFS object"}}}},"/ipfs/pin/add/{IPFS_path}":{"response":{"200":{"type":"object","properties":{"ipfs_hash":{"type":"string","example":"QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8","description":"IPFS hash of the pinned object"},"state":{"type":"string","enum":["queued|pinned|unpinned|failed|gc"],"example":"queued","description":"State of the pin action"}},"required":["ipfs_hash","state"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"425":{"type":"object","properties":{"status_code":{"type":"integer","example":425},"error":{"type":"string","example":"Mempool Full"},"message":{"type":"string","example":"Mempool is full, please try resubmitting again later."}},"required":["error","message","status_code"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"IPFS_path":{"type":"string","description":"Path to the IPFS object"}}}},"/ipfs/pin/list":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"time_created":{"type":"integer","description":"Creation time of the IPFS object on our backends","example":1615551024},"time_pinned":{"type":"integer","description":"Pin time of the IPFS object on our backends","example":1615551024},"ipfs_hash":{"type":"string","description":"IPFS hash of the pinned object","example":"QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx"},"size":{"type":"string","description":"Size of the object in Bytes","example":"1615551024"},"state":{"type":"string","enum":["queued|pinned|unpinned|failed|gc"],"description":"State of the pinned object, which is `queued` when we are retriving object. If this\nis successful the state is changed to `pinned` or `failed` if not. The state `gc` means the\npinned item has been garbage collected due to account being over storage quota or after it has\nbeen moved to `unpinned` state by removing the object pin.\n","example":"pinned"}},"required":["time_created","time_pinned","ipfs_hash","size","state"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/ipfs/pin/list/{IPFS_path}":{"response":{"200":{"type":"object","properties":{"time_created":{"type":"integer","description":"Time of the creation of the IPFS object on our backends","example":1615551024},"time_pinned":{"type":"integer","description":"Time of the pin of the IPFS object on our backends","example":1615551024},"ipfs_hash":{"type":"string","description":"IPFS hash of the pinned object","example":"QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx"},"size":{"type":"string","description":"Size of the object in Bytes","example":"1615551024"},"state":{"type":"string","enum":["queued|pinned|unpinned|failed|gc"],"description":"State of the pinned object. We define 5 states: `queued`, `pinned`, `unpinned`, `failed`, `gc`.\nWhen the object is pending retrieval (i.e. after `/ipfs/pin/add/{IPFS_path}`), the state is `queued`.\nIf the object is already successfully retrieved, state is changed to `pinned` or `failed` otherwise.\nWhen object is unpinned (i.e. after `/ipfs/pin/remove/{IPFS_path}`) it is marked for garbage collection.\nState `gc` means that a previously `unpinned` item has been garbage collected due to account being over storage quota.\n","example":"pinned"}},"required":["time_created","time_pinned","ipfs_hash","size","state"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"IPFS_path":{"type":"string","description":"The path to the IPFS object"}}}},"/ipfs/pin/remove/{IPFS_path}":{"response":{"200":{"type":"object","properties":{"ipfs_hash":{"type":"string","example":"QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8","description":"IPFS hash of the pinned object"},"state":{"type":"string","enum":["queued|pinned|unpinned|failed|gc"],"example":"unpinned","description":"State of the pin action"}},"required":["ipfs_hash","state"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"IPFS_path":{"type":"string","description":"The path to the IPFS object"}}}},"/metrics":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"time":{"type":"integer","description":"Starting time of the call count interval (ends midnight UTC) in UNIX time"},"calls":{"type":"integer","description":"Sum of all calls for a particular day"}},"required":["time","calls"]},"example":[{"time":1612543884,"calls":42},{"time":1614523884,"calls":6942}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/metrics/endpoints":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"time":{"type":"integer","description":"Starting time of the call count interval (ends midnight UTC) in UNIX time"},"calls":{"type":"integer","description":"Sum of all calls for a particular day and endpoint"},"endpoint":{"type":"string","description":"Endpoint parent name"}},"required":["time","calls","endpoint"]},"example":[{"time":1612543814,"calls":182,"endpoint":"block"},{"time":1612543814,"calls":42,"endpoint":"epoch"},{"time":1612543812,"calls":775,"endpoint":"block"},{"time":1612523884,"calls":4,"endpoint":"epoch"},{"time":1612553884,"calls":89794,"endpoint":"block"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/network":{"response":{"200":{"type":"object","properties":{"supply":{"type":"object","properties":{"max":{"type":"string","description":"Maximum supply in Lovelaces","example":"45000000000000000"},"total":{"type":"string","description":"Current total (max supply - reserves) supply in Lovelaces","example":"32890715183299160"},"circulating":{"type":"string","description":"Current circulating (UTXOs + withdrawables) supply in Lovelaces","example":"32412601976210393"},"locked":{"type":"string","description":"Current supply locked by scripts in Lovelaces","example":"125006953355"},"treasury":{"type":"string","description":"Current supply locked in treasury","example":"98635632000000"},"reserves":{"type":"string","description":"Current supply locked in reserves","example":"46635632000000"}},"required":["max","total","circulating","locked","treasury","reserves"]},"stake":{"type":"object","properties":{"live":{"type":"string","example":"23204950463991654","description":"Current live stake in Lovelaces"},"active":{"type":"string","description":"Current active stake in Lovelaces","example":"22210233523456321"}},"required":["live","active"]}},"required":["supply","stake"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/network/eras":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"start":{"type":"object","description":"Start of the blockchain era,\nrelative to the start of the network\n","properties":{"time":{"type":"number","description":"Time in seconds relative to the start time of the network"},"slot":{"type":"integer","description":"Absolute slot number"},"epoch":{"type":"integer","description":"Epoch number"}},"required":["time","slot","epoch"]},"end":{"type":"object","description":"End of the blockchain era,\nrelative to the start of the network\n","properties":{"time":{"type":"number","description":"Time in seconds relative to the start time of the network"},"slot":{"type":"integer","description":"Absolute slot number"},"epoch":{"type":"integer","description":"Epoch number"}},"required":["time","slot","epoch"]},"parameters":{"type":"object","description":"Era parameters","properties":{"epoch_length":{"type":"integer","description":"Epoch length in number of slots"},"slot_length":{"type":"number","description":"Slot length in seconds"},"safe_zone":{"type":"integer","description":"Zone in which it is guaranteed that no hard fork can take place"}},"required":["epoch_length","slot_length","safe_zone"]}},"required":["start","end","parameters"]},"example":[{"start":{"time":0,"slot":0,"epoch":0},"end":{"time":89856000,"slot":4492800,"epoch":208},"parameters":{"epoch_length":21600,"slot_length":20,"safe_zone":4320}},{"start":{"time":89856000,"slot":4492800,"epoch":208},"end":{"time":101952000,"slot":16588800,"epoch":236},"parameters":{"epoch_length":432000,"slot_length":1,"safe_zone":129600}}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"425":{"type":"object","properties":{"status_code":{"type":"integer","example":425},"error":{"type":"string","example":"Mempool Full"},"message":{"type":"string","example":"Mempool is full, please try resubmitting again later."}},"required":["error","message","status_code"]},"429":{"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":{"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"]}}},"/nutlink/{address}":{"response":{"200":{"type":"object","properties":{"address":{"type":"string","description":"Bech32 encoded address","example":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz"},"metadata_url":{"type":"string","description":"URL of the specific metadata file","example":"https://nut.link/metadata.json"},"metadata_hash":{"type":"string","description":"Hash of the metadata file","example":"6bf124f217d0e5a0a8adb1dbd8540e1334280d49ab861127868339f43b3948af"},"metadata":{"type":"object","nullable":true,"description":"The cached metadata of the `metadata_url` file.","additionalProperties":true}},"required":["address","metadata_url","metadata_hash","metadata"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"address":{"type":"string","description":"Address of a metadata oracle"}}}},"/nutlink/{address}/tickers":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Name of the ticker"},"count":{"type":"integer","description":"Number of ticker records"},"latest_block":{"type":"integer","description":"Block height of the latest record"}},"required":["name","count","latest_block"]},"example":[{"name":"ADAUSD","count":1980038,"latest_block":2657092},{"name":"ADAEUR","count":1980038,"latest_block":2657092},{"name":"ADABTC","count":1980038,"latest_block":2657092}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"address":{"type":"string","description":"Address of a metadata oracle"}}}},"/nutlink/{address}/tickers/{ticker}":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string"},"block_height":{"type":"integer"},"tx_index":{"type":"integer"},"payload":{}},"required":["tx_hash","tx_index","block_height","payload"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"address":{"type":"string","description":"Address of a metadata oracle"},"ticker":{"type":"string","description":"Ticker for the pool record"}}}},"/nutlink/tickers/{ticker}":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","description":"Address of a metadata oracle"},"tx_hash":{"type":"string","description":"Hash of the transaction"},"block_height":{"type":"integer","description":"Block height of the record"},"tx_index":{"type":"integer","description":"Transaction index within the block"},"payload":{}},"required":["address","tx_hash","block_height","tx_index","payload"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"ticker":{"type":"string","description":"Ticker for the pool record"}}}},"/mithril/":{"response":{"200":{"description":"Represents general information about Aggregator public information and signing capabilities","type":"object","additionalProperties":false,"required":["open_api_version","documentation_url","capabilities"],"properties":{"open_api_version":{"description":"Open API version","type":"string","format":"byte"},"documentation_url":{"description":"Mithril documentation","type":"string","format":"byte"},"capabilities":{"description":"Capabilities of the aggregator","type":"object","additionalProperties":false,"required":["signed_entity_types"],"properties":{"signed_entity_types":{"description":"Signed entity types that are signed by the aggregator","type":"array","minItems":1,"items":{"description":"Signed entity types that can be signed","type":"string","enum":["MithrilStakeDistribution","CardanoStakeDistribution","CardanoImmutableFilesFull","CardanoTransactions"]}},"cardano_transactions_prover":{"description":"Cardano transactions prover capabilities","type":"object","additionalProperties":false,"required":["max_hashes_allowed_by_request"],"properties":{"max_hashes_allowed_by_request":{"description":"Maximum number of hashes allowed for a single request","type":"integer","format":"int64"}}}}}},"example":{"open_api_version":"0.1.17","documentation_url":"https://mithril.network","capabilities":{"signed_entity_types":["MithrilStakeDistribution","CardanoImmutableFilesFull","CardanoTransactions"],"cardano_transactions_prover":{"max_hashes_allowed_by_request":100}}}},"default":{"$ref":"#/components/schemas/Error"}}},"/mithril/epoch-settings":{"response":{"200":{"description":"Epoch settings","type":"object","additionalProperties":false,"required":["epoch","protocol","next_protocol"],"properties":{"epoch":{"$ref":"#/components/schemas/Epoch"},"protocol":{"$ref":"#/components/schemas/ProtocolParameters"},"next_protocol":{"$ref":"#/components/schemas/ProtocolParameters"}},"example":{"epoch":329,"protocol":{"k":857,"m":6172,"phi_f":0.2},"next_protocol":{"k":2422,"m":20973,"phi_f":0.2}}},"default":{"$ref":"#/components/schemas/Error"}}},"/mithril/certificate-pending":{"response":{"200":{"description":"CertificatePendingMessage represents all the information related to the certificate currently expecting to receive quorum of single signatures","type":"object","additionalProperties":false,"required":["epoch","entity_type","protocol","next_protocol","signers","next_signers"],"properties":{"epoch":{"$ref":"#/components/schemas/Epoch"},"beacon":{"deprecated":true,"allOf":[{"$ref":"#/components/schemas/CardanoDbBeacon"}]},"entity_type":{"$ref":"#/components/schemas/SignedEntityType"},"protocol":{"$ref":"#/components/schemas/ProtocolParameters"},"next_protocol":{"$ref":"#/components/schemas/ProtocolParameters"},"signers":{"type":"array","items":{"$ref":"#/components/schemas/Signer"}},"next_signers":{"type":"array","items":{"$ref":"#/components/schemas/Signer"}}},"example":{"epoch":329,"beacon":{"network":"mainnet","epoch":329,"immutable_file_number":7060000},"entity_type":{"MithrilStakeDistribution":246},"protocol":{"k":857,"m":6172,"phi_f":0.2},"next_protocol":{"k":2422,"m":20973,"phi_f":0.2},"signers":[{"party_id":"1234567890","verification_key":"7b12766b223a5c342b39302c32392c39392c39382c3131313138342c32252c32352c31353","verification_key_signature":"7b5473693727369676d61223a7b227369676d6d61223a7b261223a9b227369676d61213a","operational_certificate":"5b73136372c38302c37342c3136362c313535b5b3232352c3230332c3235352c313030262c38322c39382c32c39332c3138342c3135362c3136362c32312c3131312c3232312c36332c3137372c3232332c3232332c31392c3537","kes_period":123},{"party_id":"2345678900","verification_key":"7b392c39392c13131312766b223a5c39382c313342b39302c252c32352c31353328342c32","verification_key_signature":"2c33302c3133312c3138322c34362c3133352c372c3139302c3235322c35352c32322c39","operational_certificate":"3231342c3137372c37312c3232352c3233332c3135335d2c322c3139322c5b3133352c34312c3230332c3131332c3c33352c3234302c3230392c312c32392c3233332c33342c3138382c3134312c3130342c3234382c3231392c3","kes_period":456}],"next_signers":[{"party_id":"3456789000","verification_key":"7b22766b223a5b3133382c32392c3137332c3134342c36332c3233352c39372c3138302c3","verification_key_signature":"7b227369676d61223a7b227369676d61223a7b227369676d61223a7b227369676d612239","operational_certificate":"5b5b5b3232352c3230332c3235352c3130302c3136372c38302c37342c3136362c3135362c38322c39382c3232312c36332c3137372c3232332c3232332c31392c35372c39332c312c35302c3133392c3233342c3137332c32352","kes_period":789},{"party_id":"4567890000","verification_key":"34302c3132332c3139302c3134352c3132342c35342c3133302c37302c3136332c3139332","verification_key_signature":"302c3230312c38362c3139312c36302c3234352c3138332c3134342c3139392c3130335f","operational_certificate":"2c38382c3138372c3233332c34302c37322c31362c36365d2c312c3132332c5b31362c3136392c3134312c3138332c32322c3137342c3131312c33322c36342c35322c2c3232382c37392c3137352c32395312c3838282c323030","kes_period":876}]}},"default":{"$ref":"#/components/schemas/Error"}}},"/mithril/certificates":{"response":{"200":{"description":"CertificateListMessage represents a list of Mithril certificates","type":"array","items":{"description":"CertificateListItemMessage represents an item of a list of Mithril certificates","type":"object","additionalProperties":false,"required":["hash","previous_hash","epoch","signed_entity_type","metadata","protocol_message","signed_message","aggregate_verification_key"],"properties":{"hash":{"description":"Hash of the current certificate","type":"string","format":"bytes"},"previous_hash":{"description":"Hash of the previous certificate","type":"string","format":"bytes"},"epoch":{"$ref":"#/components/schemas/Epoch"},"beacon":{"deprecated":true,"allOf":[{"$ref":"#/components/schemas/CardanoDbBeacon"}]},"signed_entity_type":{"$ref":"#/components/schemas/SignedEntityType"},"metadata":{"$ref":"#/components/schemas/CertificateListItemMessageMetadata"},"protocol_message":{"$ref":"#/components/schemas/ProtocolMessage"},"signed_message":{"description":"Hash of the protocol message that is signed by the signer participants","type":"string","format":"bytes"},"aggregate_verification_key":{"description":"Aggregate verification key used to verify the multi signature","type":"string","format":"bytes"}},"example":{"hash":"9dc998101590f733f7a50e7c03b5b336e69a751cc02d811395d49618db3ba3d7","previous_hash":"aa2ddfb87a17103bdf15bfb21a2941b3f3223a3c8d710910496c392b14f8c403","epoch":32,"beacon":{"network":"mainnet","epoch":329,"immutable_file_number":7060000},"signed_entity_type":{"MithrilStakeDistribution":246},"metadata":{"network":"mainnet","version":"0.1.0","parameters":{"k":5,"m":100,"phi_f":0.65},"initiated_at":"2022-07-17T18:51:23.192811338Z","sealed_at":"2022-07-17T18:51:35.830832580Z","total_signers":3},"protocol_message":{"message_parts":{"snapshot_digest":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","next_aggregate_verification_key":"b132362c3232352c36392c31373133352c31323235392c3235332c3233342c34226d745f636f6d6d69746d656e74223a7b22726f6f74223a5b33382c3382c3138322c3231322c2c363"}},"signed_message":"07ed7c9e128744c1a4797b7eb34c54823cc7a21fc95c19876122ab4bb0fe796d6bba2bc","aggregate_verification_key":"7b232392c3130342c34392c35312c3130332c3136352c37364223a7b22726f6f74223a5b3137392c3135312c3135382c37332c37372c2c3135392c3226d745f636f6d6d69746d656e7"}},"example":[{"hash":"9dc998101590f733f7a50e7c03b5b336e69a751cc02d811395d49618db3ba3d7","previous_hash":"aa2ddfb87a17103bdf15bfb21a2941b3f3223a3c8d710910496c392b14f8c403","epoch":329,"beacon":{"network":"mainnet","epoch":329,"immutable_file_number":7060000},"signed_entity_type":{"MithrilStakeDistribution":246},"metadata":{"network":"mainnet","version":"0.1.0","parameters":{"k":5,"m":100,"phi_f":0.65},"initiated_at":"2022-07-17T18:51:23.192811338Z","sealed_at":"2022-07-17T18:51:35.830832580Z","total_signers":3},"protocol_message":{"message_parts":{"snapshot_digest":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","next_aggregate_verification_key":"b132362c3232352c36392c31373133352c31323235392c3235332c3233342c34226d745f636f6d6d69746d656e74223a7b22726f6f74223a5b33382c3382c3138322c3231322c2c363"}},"signed_message":"07ed7c9e128744c1a4797b7eb34c54823cc7a21fc95c19876122ab4bb0fe796d6bba2bc","aggregate_verification_key":"7b232392c3130342c34392c35312c3130332c3136352c37364223a7b22726f6f74223a5b3137392c3135312c3135382c37332c37372c2c3135392c3226d745f636f6d6d69746d656e7"}]},"default":{"$ref":"#/components/schemas/Error"}}},"/mithril/certificate/{certificate_hash}":{"response":{"200":{"description":"Certificate represents a Mithril certificate embedding a Mithril STM multi signature","type":"object","additionalProperties":false,"required":["hash","previous_hash","epoch","signed_entity_type","metadata","protocol_message","signed_message","aggregate_verification_key","multi_signature","genesis_signature"],"properties":{"hash":{"description":"Hash of the current certificate","type":"string","format":"bytes"},"previous_hash":{"description":"Hash of the previous certificate","type":"string","format":"bytes"},"epoch":{"$ref":"#/components/schemas/Epoch"},"beacon":{"deprecated":true,"allOf":[{"$ref":"#/components/schemas/CardanoDbBeacon"}]},"signed_entity_type":{"$ref":"#/components/schemas/SignedEntityType"},"metadata":{"$ref":"#/components/schemas/CertificateMetadata"},"protocol_message":{"$ref":"#/components/schemas/ProtocolMessage"},"signed_message":{"description":"Hash of the protocol message that is signed by the signer participants","type":"string","format":"bytes"},"aggregate_verification_key":{"description":"Aggregate verification key used to verify the multi signature","type":"string","format":"bytes"},"multi_signature":{"description":"STM multi signature created from a quorum of single signatures from the signers","type":"string","format":"bytes"},"genesis_signature":{"description":"Genesis signature created to bootstrap the certificate chain with the Cardano Genesis Keys","type":"string","format":"bytes"}},"example":{"hash":"9dc998101590f733f7a50e7c03b5b336e69a751cc02d811395d49618db3ba3d7","previous_hash":"aa2ddfb87a17103bdf15bfb21a2941b3f3223a3c8d710910496c392b14f8c403","epoch":329,"beacon":{"network":"mainnet","epoch":329,"immutable_file_number":7060000},"signed_entity_type":{"MithrilStakeDistribution":246},"metadata":{"network":"mainnet","version":"0.1.0","parameters":{"k":5,"m":100,"phi_f":0.65},"initiated_at":"2022-07-17T18:51:23.192811338Z","sealed_at":"2022-07-17T18:51:35.830832580Z","signers":[{"party_id":"1234567890","verification_key":"7b12766b223a5c342b39302c32392c39392c39382c3131313138342c32252c32352c31353","verification_key_signature":"7b5473693727369676d61223a7b227369676d6d61223a7b261223a9b227369676d61213a","operational_certificate":"5b73136372c38302c37342c3136362c313535b5b3232352c3230332c3235352c313030262c38322c39382c32c39332c3138342c3135362c3136362c32312c3131312c3232312c36332c3137372c3232332c3232332c31392c3537","kes_period":123,"stake":1234},{"party_id":"2345678900","verification_key":"7b392c39392c13131312766b223a5c39382c313342b39302c252c32352c31353328342c32","verification_key_signature":"2c33302c3133312c3138322c34362c3133352c372c3139302c3235322c35352c32322c39","operational_certificate":"3231342c3137372c37312c3232352c3233332c3135335d2c322c3139322c5b3133352c34312c3230332c3131332c3c33352c3234302c3230392c312c32392c3233332c33342c3138382c3134312c3130342c3234382c3231392c3","kes_period":456,"stake":2345}]},"protocol_message":{"message_parts":{"snapshot_digest":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","next_aggregate_verification_key":"b132362c3232352c36392c31373133352c31323235392c3235332c3233342c34226d745f636f6d6d69746d656e74223a7b22726f6f74223a5b33382c3382c3138322c3231322c2c363"}},"signed_message":"07ed7c9e128744c1a4797b7eb34c54823cc7a21fc95c19876122ab4bb0fe796d6bba2bc","aggregate_verification_key":"7b232392c3130342c34392c35312c3130332c3136352c37364223a7b22726f6f74223a5b3137392c3135312c3135382c37332c37372c2c3135392c3226d745f636f6d6d69746d656e7","multi_signature":"7bc3139392c3135392c3235342c3231392c3133362c3132392c38342c353227369676e617475726573223a5b5b7b227369676d61223a5b3135312c362c3131222c33382c3135382c3137312c3137312c3234392c32342c3232382c3133302c38352c32362c38382c3135382c32303c323337322c323339362c32342c313530342c313532302c3135323737302c323830372c323831392c323834302c323834342c323836302c323837322c323838362c323839312c323839382c3239333533332c343538352c343632342c343634322c343634372c343636362c334312c31343636382c31343637352c31343639352c31343639392c31343730312c31343730352c31343733302c31343733382c31343733392c31343734362c31343735342c31343736312c31343738362c31343739352c31343739362c31343832362c31343835392c31343836302c31343836322c31343837312c31343837322c31343837392c31343838392c31343839332c31343839372c31343839392c31343932362c31343937372c31343939312c31353032332c31353033382c31353034342c31353036332c31353039312c31353039322c31353039382c31353131392c31353132312c31353136362c31353139362c31353230322c31353231302c31353231392c31353233392c31353234362c31353235322c31353237352c31353238312c31353334372c31353335372c31353338372c31353431372c31353434352c31353434382c31353435332c31353435342c31353530382c31353534352c31353536302c31353537302c31353538392c31353631302c31353631312c31353631322c31353632382c31353633302c31353633392c31353636302c31353636312c31353637392c31353731372c31353731392c31353732362c31353733382c31353734382c31353735392c31353736312c31353739312c31353830312c31353830332c31353831342c31353831392c31353832372c31353832392c31353834392c31353835332c31353835372c31353835392c31353836372c31353839362c31353930312c31353930372c31353931302c31353931332c31353931352c31353935352c31353937362c31353938372c31363031372c31363036332c31363131382c31363132382c31363135352c31363136372c31363230312c31363230362c31363231392c31363232312c31363232392c31363233342c31363234362c31363333302c31363335302c31363336362c31353739312c31353830312c31353830332c31353831342c31353831392c31353832372c31353832392c31353834392c31353835332c31353835372c31353835392c31353836372c31353839362c31353930312c31353930372c31353931302c31353931332c31353931352c31353935352c31353937362c31353938372c31363031372c31363036332c31363131382c31363132382c31363135352c31363136372c31363230312c31363230362c31363231392c31363232312c31363232392c31363233342c31363234362c31363333302c31363335302c31363336362c31363339302c31363430342c31363435342c31363437392c31363533302c31363533382c31363534372c31363535322c31363630382c31363631312c31363631382c31363633312c31363635382c31363637312c31363639352c31363730302c31363731332c31363732372c31363733312c31363733322c31363734322c31363736302c31363737342c31363739322c31363739362c31363739382c31363830342c31363831302c31363834302c31363834382c31363835392c31363836332c31363838362c31363838382c31363930302c31363932372c31363932382c31363932392c31363933372c31363934302c31363934362c31363935302c31363936312c31363938312c31373033302c31373035332c31373036322c31373038322c31373130312c31373130332c31373130352c31373130362c31373132302c31373132312c31373133322c31373133332c31373135312c31373135392c31373138332c31373232302c31373239322c31373331312c31373331332c31373332362c31373333362c31373334352c31373334392c31373335372c31373337352c31373338332c31373338352c31373430302c31373430362c31373431342c31373432322c31373434362c31373435312c31373436362c31373530322c31373531392c31373535382c31373536352c31373537332c31373538302c31373630362c31373632332c31373636382c31373639352c31373732392c31373733312c31373733352c31373733372c31373734342c31373734352c31373734372c31373736382c31373737302c31373737332c31373737352c31373739362c31373830342c31373831302c31373831332c31373832332c31373834352c31373834362c31373838382c31373839342c31373930352c31373931302c31373935372c31373936372c31373938372c31373939342c31383030322c31383030332c31383031312c31383032302c31383032392c31383034362c31383036382c31383037322c31383131372c31383133372c31383134302c31383134332c31383136322c31383137302c31383137342c31383138342c31383138392c31383139392c31383230382c31383232302c31383235312c31383235332c31383237392c31383238312c31383239312c31383239382c31383330312c31383331362c31383332382c31383334312c31383336332c31383337342c31383338352c31383338372c31383434392c31383437362c31383438322c31383439382c31383530352c31383530362c31383531342c31383532362c31383532382c31383533382c31383535322c31383535382c31383537342c31383538342c31383539322c31383631392c32c3832392c3834382c3835312c3835342c3836352c3838332c3838342c3839332c3839372c3930392c3937312c3938362c3939352c313032312c313032362c313035312c313036322c313036382c313038322c313038332c313038352c313133312c313134392c313135392c313136342c313137322c313137332c313231372c313231382c313234372c313239332c313330382c313331352c313333302c313335302c313336342c313337392c313430302c313430362c313432372c313434392c313436342c313436362c313436372c313437362c313530312c313530342c313532302c313532352c313533322c313534322c313536372c313537362c313538322c313538332c313632362c313633322c313633332c313634312c313635322c313730302c313732392c313831322c313832302c313834322c313835392c313837312c313930352c313930372c313931322c313931332c313935362c313936302c313937342c323030302c323031302c323033322c323033372c323037372c323038372c323039382c323130372c323131382c323133322c323133382c323135312c323230332c323230392c323231312c323233372c323234382c323235332c323237372c323238302c323330382c323331342c323333322c323334332c323334382c373535362c373535382c373537372c373630392c373631382c373633392c373635342c373635352c373731392c373732322c373732332c373830342c373832372c373833362c373833372c373835302c373835332c373835362c373837382c373839362c373931392c373933312c373933332c373934332c373934362c373935342c383030302c383031302c383031342c383033302c383034332c383035352c383036342c383036382c383037362c383132322c383134332c383134382c383136362c383139302c383234372c383235312c383236302c383237352c383238312c383238352c383330362c383332352c383337332c383337372c383338372c383339372c383339382c383431362c383433312c383436362c383436372c383437372c383438332c383438392c383439322c383439382c383531372c383533302c383533352c383534302c383536392c383539392c383631322c383634322c383635322c383637302c383730312c383733342c383738382c383739312c383832372c383834352c383835312c383836312c383837362c383932392c383933372c383935322c383937362c393031362c393032302c393032372c393032392c393034382c393036302c393038392c393130332c393130362c393131312c393131322c393131382c393133342c393134392c393137372c393137382c393231312c393231322c393232392c393234332c393236312c393236322c393238362c393239372c393331382c393333392c393338312c393339352c393339362c393431372c393433302c393436332c393439322c393532342c393633332c393633352c393634322c393639322c393731382c393732342c393732362c393733352c393735362c393738302c393738322c393739332c393831332c393837312c393839382c393931382c393932332c393932362c393934312c393934392c393935322c393935382c393936312c393936342c393937352c31303030362c31303032362c31303032392c31303035382c31303037342c31303037392c31303131302c31303132332c31303133392c31303134382c31303135362c31303136392c31303230362c31303235352c31303235372c31303235382c31303237332c31303237342c31303239312c31303239332c31303239342c31303330352c31303334312c31303334332c31303338322c31303338332c31303430342c31303431312c31303431332c31303432302c31303434322c31303434342c31303435372c31303436302c31303437322c31303438372c31303532322c31303535312c31303536342c31303636352c31303638352c31303730302c31303730362c31303733322c31303734332c31303737322c31303831352c31303833332c31303834332c31303836362c31303839322c31303930382c31303938382c31313033362c31313034312c31313037312c31313038322c31313039322c31313039392c31313130392c31313131352c31313134362c31313139332c31313230302c31313232382c31313232392c31313235342c31313236372c31313238302c31313239332c31313239352c31313331312c31313331382c31313332322c31313334302c31313334342c31313335322c31313335342c31313335352c31313335362c31313338352c31313430322c31313431332c31313433342c31313434322c31313436382c31313437322c31313437372c31313439362c31313439392c31313530362c31313531302c31313532342c31313532372c31313534342c31313538312c31313539322c31313630342c31313633352c31313635382c31313733332c31313733362c31313735342c31313739342c31313831332c31313831392c31313832342c31313832372c31313836392c31313837312c31313931342c31313937302c31313937342c31323031362c31323031392c31323034302c31323034342c31323035342c31323036382c31323037302c31323037372c31323039392c31323130342c31323133302c31323133392c31323135302c31323135392c31323136302c31323137352c31323230302c31323230322c31323232382c31323233392c31323330352c31323336382c31323337352c31323337392c31323338392c31323430372c31323431302c31323433322c31323434302c31323434312c31323437352c31323530362c31323531322c31323531332c31323531372c31323532312c31323533302c31323538302c31323633362c31323636392c31323637322c31323637362c31323637372c31323638332c31323638372c31323730352c31323732342c31323734362c31323734382c31323737362c31323739392c31323838352c31323839392c31323930372c31323933302c31323933322c31323935382c31323939332c31333030332c31333033302c31333036312c31333038302c31333038332c31333130352c31333132372c31333133312c31333136392c31333138312c31333138322c31333138352c3133323231231333236352c31333238362c31333234322cc31333239342c3131333438362c1e233332362c31333333392c31333336352c31333337332c31333338352c31333339392c31333433332c31333435312c31333437382c3","genesis_signature":""}},"default":{"$ref":"#/components/schemas/Error"}},"params":{"type":"object","properties":{"certificate_hash":{"type":"string"}}}},"/mithril/artifact/snapshots":{"response":{"200":{"description":"SnapshotListMessage represents a list of snapshots","type":"array","items":{"description":"Snapshot represents a snapshot file and its metadata","type":"object","additionalProperties":false,"required":["digest","beacon","certificate_hash","size","created_at","locations"],"properties":{"digest":{"description":"Digest that is signed by the signer participants","type":"string","format":"bytes"},"beacon":{"$ref":"#/components/schemas/CardanoDbBeacon"},"certificate_hash":{"description":"Hash of the associated certificate","type":"string","format":"bytes"},"size":{"description":"Size of the snapshot file in Bytes","type":"integer","format":"int64"},"created_at":{"description":"Date and time at which the snapshot was created","type":"string","format":"date-time"},"locations":{"description":"Locations where the binary content of the snapshot can be retrieved","type":"array","items":{"type":"string"}},"compression_algorithm":{"description":"Compression algorithm for the snapshot archive","type":"string"},"cardano_node_version":{"description":"Version of the Cardano node which is used to create snapshot archives.","type":"string"}},"example":{"digest":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","beacon":{"network":"mainnet","epoch":329,"immutable_file_number":7060000},"certificate_hash":"7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572","size":26058531636,"created_at":"2022-07-21T17:32:28Z","locations":["https://mithril-cdn-us.iohk.io/snapshot/6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","https://mithril-cdn-eu.iohk.io/snapshot/6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","magnet:?xt=urn:sha1:YNCKHTQCWBTRNJIV4WNAE52SJUQCZO5C","ipfs:QmPXME1oRtoT627YKaDPDQ3PwA8tdP9rWuAAweLzqSwAWT"],"compression_algorithm":"zstandard","cardano_node_version":"1.0.0"}},"example":[{"digest":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","beacon":{"network":"mainnet","epoch":329,"immutable_file_number":7060000},"certificate_hash":"7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572","size":26058531636,"created_at":"2022-07-21T17:32:28Z","locations":["https://mithril-cdn-us.iohk.io/snapshot/6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","https://mithril-cdn-eu.iohk.io/snapshot/6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","magnet:?xt=urn:sha1:YNCKHTQCWBTRNJIV4WNAE52SJUQCZO5C","ipfs:QmPXME1oRtoT627YKaDPDQ3PwA8tdP9rWuAAweLzqSwAWT"]}]},"default":{"$ref":"#/components/schemas/Error"}}},"/mithril/artifact/snapshot/{digest}":{"response":{"200":{"description":"This message represents a snapshot file and its metadata.","allOf":[{"$ref":"#/components/schemas/Snapshot"}],"example":{"digest":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","beacon":{"network":"mainnet","epoch":329,"immutable_file_number":7060000},"certificate_hash":"7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572","size":26058531636,"created_at":"2022-07-21T17:32:28Z","locations":["https://mithril-cdn-us.iohk.io/snapshot/6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","https://mithril-cdn-eu.iohk.io/snapshot/6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","magnet:?xt=urn:sha1:YNCKHTQCWBTRNJIV4WNAE52SJUQCZO5C","ipfs:QmPXME1oRtoT627YKaDPDQ3PwA8tdP9rWuAAweLzqSwAWT"],"compression_algorithm":"zstandard","cardano_node_version":"1.0.0"}},"default":{"$ref":"#/components/schemas/Error"}},"params":{"type":"object","properties":{"digest":{"type":"string"}}}},"/mithril/artifact/snapshot/{digest}/download":{"response":{"200":{"type":"string","format":"binary"},"default":{"$ref":"#/components/schemas/Error"}},"params":{"type":"object","properties":{"digest":{"type":"string"}}}},"/mithril/artifact/mithril-stake-distributions":{"response":{"200":{"description":"MithrilStakeDistributionListMessage represents a list of Mithril stake distribution","type":"array","items":{"type":"object","additionalProperties":false,"required":["epoch","hash","created_at"],"properties":{"epoch":{"$ref":"#/components/schemas/Epoch"},"hash":{"description":"Hash of the Mithril stake distribution","type":"string","format":"bytes"},"certificate_hash":{"description":"Hash of the associated certificate","type":"string","format":"bytes"},"created_at":{"description":"Date and time at which the Mithril stake distribution was created","type":"string","format":"date-time,"}},"example":{"epoch":123,"hash":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","certificate_hash":"7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572","created_at":"2022-06-14T10:52:31Z"}}},"default":{"$ref":"#/components/schemas/Error"}}},"/mithril/artifact/mithril-stake-distribution/{hash}":{"response":{"200":{"description":"This message represents a Mithril stake distribution.","type":"object","additionalProperties":false,"required":["epoch","hash","signers","created_at","protocol_parameters"],"properties":{"epoch":{"$ref":"#/components/schemas/Epoch"},"hash":{"description":"Hash of the Mithril stake distribution","type":"string","format":"bytes"},"certificate_hash":{"description":"Hash of the associated certificate","type":"string","format":"bytes"},"signers":{"description":"The list of the signers with their stakes and verification keys","type":"array","items":{"$ref":"#/components/schemas/SignerWithStake"}},"created_at":{"description":"Date and time of the entity creation","type":"string","format":"date-time,"},"protocol_parameters":{"$ref":"#/components/schemas/ProtocolParameters"}},"example":{"epoch":123,"hash":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","certificate_hash":"7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572","signers":[{"party_id":"1234567890","verification_key":"7b12766b223a5c342b39302c32392c39392c39382c3131313138342c32252c32352c31353","verification_key_signature":"7b5473693727369676d61223a7b227369676d6d61223a7b261223a9b227369676d61213a","operational_certificate":"5b73136372c38302c37342c3136362c313535b5b3232352c3230332c3235352c313030262c38322c39382c32c39332c3138342c3135362c3136362c32312c3131312c3232312c36332c3137372c3232332c3232332c31392c3537","kes_period":123,"stake":1234},{"party_id":"2345678900","verification_key":"7b392c39392c13131312766b223a5c39382c313342b39302c252c32352c31353328342c32","verification_key_signature":"2c33302c3133312c3138322c34362c3133352c372c3139302c3235322c35352c32322c39","operational_certificate":"3231342c3137372c37312c3232352c3233332c3135335d2c322c3139322c5b3133352c34312c3230332c3131332c3c33352c3234302c3230392c312c32392c3233332c33342c3138382c3134312c3130342c3234382c3231392c3","kes_period":456,"stake":2345}],"created_at":"2022-06-14T10:52:31Z","protocol_parameters":{"k":5,"m":100,"phi_f":0.65}}},"default":{"$ref":"#/components/schemas/Error"}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/mithril/artifact/cardano-transactions":{"response":{"200":{"description":"CardanoTransactionSnapshotListMessage represents a list of Cardano transactions set snapshots","type":"array","items":{"type":"object","additionalProperties":false,"required":["hash","certificate_hash","merkle_root","epoch","block_number","created_at"],"properties":{"hash":{"description":"Hash of the Cardano transactions set","type":"string","format":"bytes"},"certificate_hash":{"description":"Hash of the associated certificate","type":"string","format":"bytes"},"merkle_root":{"description":"Merkle root of the Cardano transactions set","type":"string","format":"bytes"},"epoch":{"$ref":"#/components/schemas/Epoch"},"block_number":{"description":"Cardano block number","type":"integer","format":"int64"},"created_at":{"description":"Date and time at which the Cardano transactions set was created","type":"string","format":"date-time,"}},"example":{"hash":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","certificate_hash":"7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572","merkle_root":"33bfd17bc082ab5dd1fc0788241c70aa5325241c70aa532530d190809c5391bbc307905e8372","epoch":123,"block_number":1234,"created_at":"2022-06-14T10:52:31Z"}}},"default":{"$ref":"#/components/schemas/Error"}}},"/mithril/artifact/cardano-transaction/{hash}":{"response":{"200":{"description":"This message represents a Cardano transactions set snapshot.","type":"object","additionalProperties":false,"required":["hash","certificate_hash","merkle_root","epoch","block_number","created_at"],"properties":{"hash":{"description":"Hash of the Cardano transactions set","type":"string","format":"bytes"},"certificate_hash":{"description":"Hash of the associated certificate","type":"string","format":"bytes"},"merkle_root":{"description":"Merkle root of the Cardano transactions set","type":"string","format":"bytes"},"epoch":{"$ref":"#/components/schemas/Epoch"},"block_number":{"description":"Cardano block number","type":"integer","format":"int64"},"created_at":{"description":"Date and time at which the Cardano transactions set was created","type":"string","format":"date-time,"}},"example":{"hash":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","certificate_hash":"7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572","merkle_root":"33bfd17bc082ab5dd1fc0788241c70aa5325241c70aa532530d190809c5391bbc307905e8372","epoch":123,"block_number":1234,"created_at":"2022-06-14T10:52:31Z"}},"default":{"$ref":"#/components/schemas/Error"}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/mithril/proof/cardano-transaction":{"response":{"200":{"description":"This message represents proofs for Cardano Transactions.","type":"object","additionalProperties":false,"required":["certificate_hash","certified_transactions","non_certified_transactions","latest_block_number"],"properties":{"certificate_hash":{"description":"Hash of the certificate that validate the merkle root of this proof","type":"string","format":"bytes"},"certified_transactions":{"description":"Proofs for certified Cardano transactions","type":"array","items":{"type":"object","required":["transactions_hashes","proof"],"properties":{"transactions_hashes":{"type":"array","items":{"description":"Hash of the Cardano transactions","type":"string","format":"bytes"}},"proof":{"description":"Proof for the Cardano transactions","type":"string","format":"bytes"}}}},"non_certified_transactions":{"type":"array","items":{"description":"Hash of the non certified Cardano transactions","type":"string","format":"bytes"}},"latest_block_number":{"description":"Last block number","type":"integer","format":"int64"}},"example":{"certificate_hash":"7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572","certified_transactions":[{"transactions_hashes":["6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","5d0d1272e6e70736a1ea2cae34015876367ee64517f6328364f6b73930966732"],"proof":"5b73136372c38302c37342c3136362c313535b5b323136362c313535b5b3232352c3230332c3235352c313030262c38322c39382c32c39332c3138342c313532352c3230332c3235352c313030262c33136362c313535b5b3232352c3230332c3235352c313030262c38322c39382c32c39332c3138342c31358322c39382c32c39332c3138342c3135362c3136362c32312c3131312c3232312c36332c3137372c3232332c3232332c31392c3537"}],"non_certified_transactions":["732d0d1272e6e70736367ee6f6328364f6b739309666a1ea2cae34015874517"],"latest_block_number":7060000}},"default":{"$ref":"#/components/schemas/Error"}},"querystring":{"type":"object","properties":{"transaction_hashes":{"type":"array","items":{"type":"string","format":"bytes","example":"6dbb104ed68481ef829a26a20142916d17985e01774d72d72c2f"}}}}},"/mithril/signers/registered/{epoch}":{"response":{"200":{"description":"This message holds the registered signers at a given epoch.\n","type":"object","additionalProperties":false,"properties":{"registered_at":{"$ref":"#/components/schemas/Epoch"},"signing_at":{"$ref":"#/components/schemas/Epoch"},"registrations":{"type":"array","items":{"$ref":"#/components/schemas/SignerRegistrationsListItemMessage"}}},"example":{"registered_at":420,"signing_at":422,"registrations":[{"party_id":"1234567890","stake":1234}]}},"default":{"$ref":"#/components/schemas/Error"}},"params":{"type":"object","properties":{"epoch":{"type":"integer"}}}},"/mithril/signers/tickers":{"response":{"200":{"description":"represents the list of signers known by the aggregator","type":"object","required":["network","signers"],"properties":{"network":{"description":"Cardano network of the aggregator","type":"string","format":"bytes"},"signers":{"description":"Known signers","items":{"$ref":"#/components/schemas/SignerTickerListItemMessage"}}},"example":{"network":"mainnet","signers":[{"party_id":"pool1234567890","pool_ticker":"[Pool_Name]","has_registered":true},{"party_id":"pool0987654321","has_registered":false}]}},"default":{"$ref":"#/components/schemas/Error"}}}} +{"/":{"response":{"200":{"type":"object","properties":{"url":{"type":"string","example":"https://blockfrost.io/"},"version":{"type":"string","example":"0.1.0"}},"required":["url","version"]},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/health":{"response":{"200":{"type":"object","properties":{"is_healthy":{"type":"boolean","example":true}},"required":["is_healthy"]},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/health/clock":{"response":{"200":{"type":"object","properties":{"server_time":{"type":"integer","format":"int64","example":1603400958947}},"required":["server_time"]},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/blocks/latest":{"response":{"200":{"type":"object","properties":{"time":{"type":"integer","example":1641338934,"description":"Block creation time in UNIX time"},"height":{"type":"integer","nullable":true,"example":15243593,"description":"Block number"},"hash":{"type":"string","example":"4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a","description":"Hash of the block"},"slot":{"type":"integer","nullable":true,"example":412162133,"description":"Slot number"},"epoch":{"type":"integer","nullable":true,"example":425,"description":"Epoch number"},"epoch_slot":{"type":"integer","nullable":true,"example":12,"description":"Slot within the epoch"},"slot_leader":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy","description":"Bech32 ID of the slot leader or specific block description in case there is no slot leader"},"size":{"type":"integer","example":3,"description":"Block size in Bytes"},"tx_count":{"type":"integer","example":1,"description":"Number of transactions in the block"},"output":{"type":"string","nullable":true,"example":"128314491794","description":"Total output within the block in Lovelaces"},"fees":{"type":"string","nullable":true,"example":"592661","description":"Total fees within the block in Lovelaces"},"block_vrf":{"type":"string","nullable":true,"example":"vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty","description":"VRF key of the block","minLength":65,"maxLength":65},"op_cert":{"type":"string","nullable":true,"example":"da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c","description":"The hash of the operational certificate of the block producer"},"op_cert_counter":{"type":"string","nullable":true,"example":"18","description":"The value of the counter used to produce the operational certificate"},"previous_block":{"type":"string","nullable":true,"example":"43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05","description":"Hash of the previous block"},"next_block":{"type":"string","nullable":true,"example":"8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa","description":"Hash of the next block"},"confirmations":{"type":"integer","example":4698,"description":"Number of block confirmations"}},"required":["time","height","hash","slot","epoch","epoch_slot","slot_leader","size","tx_count","output","fees","block_vrf","op_cert","op_cert_counter","previous_block","next_block","confirmations"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/blocks/latest/txs":{"response":{"200":{"type":"array","items":{"type":"string","description":"Hash of the transaction"},"example":["8788591983aa73981fc92d6cddbbe643959f5a784e84b8bee0db15823f575a5b","4eef6bb7755d8afbeac526b799f3e32a624691d166657e9d862aaeb66682c036","52e748c4dec58b687b90b0b40d383b9fe1f24c1a833b7395cdf07dd67859f46f","e8073fd5318ff43eca18a852527166aa8008bee9ee9e891f585612b7e4ba700b"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/blocks/{hash_or_number}":{"response":{"200":{"type":"object","properties":{"time":{"type":"integer","example":1641338934,"description":"Block creation time in UNIX time"},"height":{"type":"integer","nullable":true,"example":15243593,"description":"Block number"},"hash":{"type":"string","example":"4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a","description":"Hash of the block"},"slot":{"type":"integer","nullable":true,"example":412162133,"description":"Slot number"},"epoch":{"type":"integer","nullable":true,"example":425,"description":"Epoch number"},"epoch_slot":{"type":"integer","nullable":true,"example":12,"description":"Slot within the epoch"},"slot_leader":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy","description":"Bech32 ID of the slot leader or specific block description in case there is no slot leader"},"size":{"type":"integer","example":3,"description":"Block size in Bytes"},"tx_count":{"type":"integer","example":1,"description":"Number of transactions in the block"},"output":{"type":"string","nullable":true,"example":"128314491794","description":"Total output within the block in Lovelaces"},"fees":{"type":"string","nullable":true,"example":"592661","description":"Total fees within the block in Lovelaces"},"block_vrf":{"type":"string","nullable":true,"example":"vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty","description":"VRF key of the block","minLength":65,"maxLength":65},"op_cert":{"type":"string","nullable":true,"example":"da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c","description":"The hash of the operational certificate of the block producer"},"op_cert_counter":{"type":"string","nullable":true,"example":"18","description":"The value of the counter used to produce the operational certificate"},"previous_block":{"type":"string","nullable":true,"example":"43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05","description":"Hash of the previous block"},"next_block":{"type":"string","nullable":true,"example":"8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa","description":"Hash of the next block"},"confirmations":{"type":"integer","example":4698,"description":"Number of block confirmations"}},"required":["time","height","hash","slot","epoch","epoch_slot","slot_leader","size","tx_count","output","fees","block_vrf","op_cert","op_cert_counter","previous_block","next_block","confirmations"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash_or_number":{"type":"string"}}}},"/blocks/{hash_or_number}/next":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"time":{"type":"integer","example":1641338934,"description":"Block creation time in UNIX time"},"height":{"type":"integer","nullable":true,"example":15243593,"description":"Block number"},"hash":{"type":"string","example":"4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a","description":"Hash of the block"},"slot":{"type":"integer","nullable":true,"example":412162133,"description":"Slot number"},"epoch":{"type":"integer","nullable":true,"example":425,"description":"Epoch number"},"epoch_slot":{"type":"integer","nullable":true,"example":12,"description":"Slot within the epoch"},"slot_leader":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy","description":"Bech32 ID of the slot leader or specific block description in case there is no slot leader"},"size":{"type":"integer","example":3,"description":"Block size in Bytes"},"tx_count":{"type":"integer","example":1,"description":"Number of transactions in the block"},"output":{"type":"string","nullable":true,"example":"128314491794","description":"Total output within the block in Lovelaces"},"fees":{"type":"string","nullable":true,"example":"592661","description":"Total fees within the block in Lovelaces"},"block_vrf":{"type":"string","nullable":true,"example":"vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty","description":"VRF key of the block","minLength":65,"maxLength":65},"op_cert":{"type":"string","nullable":true,"example":"da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c","description":"The hash of the operational certificate of the block producer"},"op_cert_counter":{"type":"string","nullable":true,"example":"18","description":"The value of the counter used to produce the operational certificate"},"previous_block":{"type":"string","nullable":true,"example":"43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05","description":"Hash of the previous block"},"next_block":{"type":"string","nullable":true,"example":"8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa","description":"Hash of the next block"},"confirmations":{"type":"integer","example":4698,"description":"Number of block confirmations"}},"required":["time","height","hash","slot","epoch","epoch_slot","slot_leader","size","tx_count","output","fees","block_vrf","op_cert","op_cert_counter","previous_block","next_block","confirmations"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1}}},"params":{"type":"object","properties":{"hash_or_number":{"type":"string"}}}},"/blocks/{hash_or_number}/previous":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"time":{"type":"integer","example":1641338934,"description":"Block creation time in UNIX time"},"height":{"type":"integer","nullable":true,"example":15243593,"description":"Block number"},"hash":{"type":"string","example":"4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a","description":"Hash of the block"},"slot":{"type":"integer","nullable":true,"example":412162133,"description":"Slot number"},"epoch":{"type":"integer","nullable":true,"example":425,"description":"Epoch number"},"epoch_slot":{"type":"integer","nullable":true,"example":12,"description":"Slot within the epoch"},"slot_leader":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy","description":"Bech32 ID of the slot leader or specific block description in case there is no slot leader"},"size":{"type":"integer","example":3,"description":"Block size in Bytes"},"tx_count":{"type":"integer","example":1,"description":"Number of transactions in the block"},"output":{"type":"string","nullable":true,"example":"128314491794","description":"Total output within the block in Lovelaces"},"fees":{"type":"string","nullable":true,"example":"592661","description":"Total fees within the block in Lovelaces"},"block_vrf":{"type":"string","nullable":true,"example":"vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty","description":"VRF key of the block","minLength":65,"maxLength":65},"op_cert":{"type":"string","nullable":true,"example":"da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c","description":"The hash of the operational certificate of the block producer"},"op_cert_counter":{"type":"string","nullable":true,"example":"18","description":"The value of the counter used to produce the operational certificate"},"previous_block":{"type":"string","nullable":true,"example":"43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05","description":"Hash of the previous block"},"next_block":{"type":"string","nullable":true,"example":"8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa","description":"Hash of the next block"},"confirmations":{"type":"integer","example":4698,"description":"Number of block confirmations"}},"required":["time","height","hash","slot","epoch","epoch_slot","slot_leader","size","tx_count","output","fees","block_vrf","op_cert","op_cert_counter","previous_block","next_block","confirmations"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1}}},"params":{"type":"object","properties":{"hash_or_number":{"type":"string"}}}},"/blocks/slot/{slot_number}":{"response":{"200":{"type":"object","properties":{"time":{"type":"integer","example":1641338934,"description":"Block creation time in UNIX time"},"height":{"type":"integer","nullable":true,"example":15243593,"description":"Block number"},"hash":{"type":"string","example":"4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a","description":"Hash of the block"},"slot":{"type":"integer","nullable":true,"example":412162133,"description":"Slot number"},"epoch":{"type":"integer","nullable":true,"example":425,"description":"Epoch number"},"epoch_slot":{"type":"integer","nullable":true,"example":12,"description":"Slot within the epoch"},"slot_leader":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy","description":"Bech32 ID of the slot leader or specific block description in case there is no slot leader"},"size":{"type":"integer","example":3,"description":"Block size in Bytes"},"tx_count":{"type":"integer","example":1,"description":"Number of transactions in the block"},"output":{"type":"string","nullable":true,"example":"128314491794","description":"Total output within the block in Lovelaces"},"fees":{"type":"string","nullable":true,"example":"592661","description":"Total fees within the block in Lovelaces"},"block_vrf":{"type":"string","nullable":true,"example":"vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty","description":"VRF key of the block","minLength":65,"maxLength":65},"op_cert":{"type":"string","nullable":true,"example":"da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c","description":"The hash of the operational certificate of the block producer"},"op_cert_counter":{"type":"string","nullable":true,"example":"18","description":"The value of the counter used to produce the operational certificate"},"previous_block":{"type":"string","nullable":true,"example":"43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05","description":"Hash of the previous block"},"next_block":{"type":"string","nullable":true,"example":"8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa","description":"Hash of the next block"},"confirmations":{"type":"integer","example":4698,"description":"Number of block confirmations"}},"required":["time","height","hash","slot","epoch","epoch_slot","slot_leader","size","tx_count","output","fees","block_vrf","op_cert","op_cert_counter","previous_block","next_block","confirmations"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"slot_number":{"type":"integer"}}}},"/blocks/epoch/{epoch_number}/slot/{slot_number}":{"response":{"200":{"type":"object","properties":{"time":{"type":"integer","example":1641338934,"description":"Block creation time in UNIX time"},"height":{"type":"integer","nullable":true,"example":15243593,"description":"Block number"},"hash":{"type":"string","example":"4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a","description":"Hash of the block"},"slot":{"type":"integer","nullable":true,"example":412162133,"description":"Slot number"},"epoch":{"type":"integer","nullable":true,"example":425,"description":"Epoch number"},"epoch_slot":{"type":"integer","nullable":true,"example":12,"description":"Slot within the epoch"},"slot_leader":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy","description":"Bech32 ID of the slot leader or specific block description in case there is no slot leader"},"size":{"type":"integer","example":3,"description":"Block size in Bytes"},"tx_count":{"type":"integer","example":1,"description":"Number of transactions in the block"},"output":{"type":"string","nullable":true,"example":"128314491794","description":"Total output within the block in Lovelaces"},"fees":{"type":"string","nullable":true,"example":"592661","description":"Total fees within the block in Lovelaces"},"block_vrf":{"type":"string","nullable":true,"example":"vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty","description":"VRF key of the block","minLength":65,"maxLength":65},"op_cert":{"type":"string","nullable":true,"example":"da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c","description":"The hash of the operational certificate of the block producer"},"op_cert_counter":{"type":"string","nullable":true,"example":"18","description":"The value of the counter used to produce the operational certificate"},"previous_block":{"type":"string","nullable":true,"example":"43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05","description":"Hash of the previous block"},"next_block":{"type":"string","nullable":true,"example":"8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa","description":"Hash of the next block"},"confirmations":{"type":"integer","example":4698,"description":"Number of block confirmations"}},"required":["time","height","hash","slot","epoch","epoch_slot","slot_leader","size","tx_count","output","fees","block_vrf","op_cert","op_cert_counter","previous_block","next_block","confirmations"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"epoch_number":{"type":"integer"},"slot_number":{"type":"integer"}}}},"/blocks/{hash_or_number}/txs":{"response":{"200":{"type":"array","items":{"type":"string","description":"Hash of the transaction"},"example":["8788591983aa73981fc92d6cddbbe643959f5a784e84b8bee0db15823f575a5b","4eef6bb7755d8afbeac526b799f3e32a624691d166657e9d862aaeb66682c036","52e748c4dec58b687b90b0b40d383b9fe1f24c1a833b7395cdf07dd67859f46f","e8073fd5318ff43eca18a852527166aa8008bee9ee9e891f585612b7e4ba700b"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"hash_or_number":{"type":"string"}}}},"/blocks/{hash_or_number}/addresses":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","description":"Address that was affected in the specified block"},"transactions":{"type":"array","description":"List of transactions containing the address either in their inputs or outputs. Sorted by transaction index within a block, ascending.","items":{"type":"object","properties":{"tx_hash":{"type":"string"}},"required":["tx_hash"]}}},"required":["address","transactions"]},"example":[{"address":"addr1q9ld26v2lv8wvrxxmvg90pn8n8n5k6tdst06q2s856rwmvnueldzuuqmnsye359fqrk8hwvenjnqultn7djtrlft7jnq7dy7wv","transactions":[{"tx_hash":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0"}]},{"address":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz","transactions":[{"tx_hash":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157d0"}]}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1}}},"params":{"type":"object","properties":{"hash_or_number":{"type":"string"}}}},"/genesis":{"response":{"200":{"type":"object","properties":{"active_slots_coefficient":{"type":"number","example":0.05,"description":"The proportion of slots in which blocks should be issued"},"update_quorum":{"type":"integer","example":5,"description":"Determines the quorum needed for votes on the protocol parameter updates"},"max_lovelace_supply":{"type":"string","example":"45000000000000000","description":"The total number of lovelace in the system"},"network_magic":{"type":"integer","example":764824073,"description":"Network identifier"},"epoch_length":{"type":"integer","example":432000,"description":"Number of slots in an epoch"},"system_start":{"type":"integer","example":1506203091,"description":"Time of slot 0 in UNIX time"},"slots_per_kes_period":{"type":"integer","example":129600,"description":"Number of slots in an KES period"},"slot_length":{"type":"integer","example":1,"description":"Duration of one slot in seconds"},"max_kes_evolutions":{"type":"integer","example":62,"description":"The maximum number of time a KES key can be evolved before a pool operator must create a new operational certificate"},"security_param":{"type":"integer","example":2160,"description":"Security parameter k"}},"required":["active_slots_coefficient","update_quorum","max_lovelace_supply","network_magic","epoch_length","system_start","slots_per_kes_period","slot_length","max_kes_evolutions","security_param"]},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/governance/dreps":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"drep_id":{"type":"string","description":"The Bech32 encoded DRep address"},"hex":{"type":"string","description":"The raw bytes of the DRep"}},"required":["drep_id","hex"]},"example":[{"drep_id":"drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn","hex":"db1bc3c3f99ce68977ceaf27ab4dd917123ef9e73f85c304236eab23"},{"drep_id":"drep1cxayn4fgy27yaucvhamsvqj3v6835mh3tjjx6x8hdnr4","hex":"c1ba49d52822bc4ef30cbf77060251668f1a6ef15ca46d18f76cc758"}]},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/governance/dreps/{drep_id}":{"response":{"200":{"type":"object","properties":{"drep_id":{"type":"string","description":"Bech32 encoded DRep address"},"hex":{"type":"string","description":"The raw bytes of the DRep"},"amount":{"type":"string","description":"The total amount of voting power this DRep is delegated."},"active":{"type":"boolean","description":"Registration state of the DRep"},"active_epoch":{"type":"integer","nullable":true,"description":"Epoch of the most recent action - registration or deregistration"},"has_script":{"type":"boolean","description":"Flag which shows if this DRep credentials are a script hash"}},"required":["drep_id","hex","amount","active","active_epoch","has_script"],"example":{"drep_id":"drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc","hex":"a61261172624e8333ceff098648d90f8e404e2e36d5b5f5985cbd35d","amount":"2000000","active":true,"active_epoch":420,"has_script":true}},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"drep_id":{"type":"string"}}}},"/governance/dreps/{drep_id}/delegators":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","description":"Bech32 encoded stake addresses"},"amount":{"type":"string","description":"Currently delegated amount"}},"required":["address","amount"]},"example":[{"address":"stake1ux4vspfvwuus9uwyp5p3f0ky7a30jq5j80jxse0fr7pa56sgn8kha","amount":"1137959159981411"},{"address":"stake1uylayej7esmarzd4mk4aru37zh9yz0luj3g9fsvgpfaxulq564r5u","amount":"16958865648"},{"address":"stake1u8lr2pnrgf8f7vrs9lt79hc3sxm8s2w4rwvgpncks3axx6q93d4ck","amount":"18605647"}]},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"drep_id":{"type":"string"}}}},"/governance/dreps/{drep_id}/metadata":{"response":{"200":{"type":"object","properties":{"drep_id":{"type":"string","description":"Bech32 encoded addresses"},"hex":{"type":"string","description":"The raw bytes of the DRep"},"url":{"type":"string","nullable":true,"example":"https://stakenuts.com/drep.json","description":"URL to the drep metadata"},"hash":{"type":"string","nullable":true,"example":"69c0c68cb57f4a5b4a87bad896fc274678e7aea98e200fa14a1cb40c0cab1d8c\"","description":"Hash of the metadata file"},"json_metadata":{"anyOf":[{"type":"string"},{"type":"object","additionalProperties":true},{"type":"array","items":{}},{"type":"integer"},{"type":"number"},{"type":"boolean"},{"type":"null"}],"description":"Content of the JSON metadata (validated CIP-119)"},"bytes":{"type":"string","description":"Content of the metadata (raw)"}},"required":["drep_id","hex","url","hash","json_metadata","bytes"],"example":{"drep_id":"drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc","hex":"a61261172624e8333ceff098648d90f8e404e2e36d5b5f5985cbd35d","url":"https://aaa.xyz/drep.json","hash":"a14a5ad4f36bddc00f92ddb39fd9ac633c0fd43f8bfa57758f9163d10ef916de","json_metadata":{"@context":{"CIP100":"https://github.com/cardano-foundation/CIPs/blob/master/CIP-0100/README.md#","CIP119":"https://github.com/cardano-foundation/CIPs/blob/master/CIP-0119/README.md#","hashAlgorithm":"CIP100:hashAlgorithm","body":{"@id":"CIP119:body","@context":{"references":{"@id":"CIP119:references","@container":"@set","@context":{"GovernanceMetadata":"CIP100:GovernanceMetadataReference","Other":"CIP100:OtherReference","label":"CIP100:reference-label","uri":"CIP100:reference-uri"}},"paymentAddress":"CIP119:paymentAddress","givenName":"CIP119:givenName","image":{"@id":"CIP119:image","@context":{"ImageObject":"https://schema.org/ImageObject"}},"objectives":"CIP119:objectives","motivations":"CIP119:motivations","qualifications":"CIP119:qualifications"}}},"hahsAlgorithm":"blake2b-256","body":{"paymentAddress":"addr1q86dnpkva4mm859c8ur7tjxn57zgsu6vg8pdetkdve3fsacnq7twy06u2ev5759vutpjgzfryx0ud8hzedhzerava35qwh3x34","givenName":"Ryan Williams","image":{"@type":"ImageObject","contentUrl":"https://avatars.githubusercontent.com/u/44342099?v=4","sha256":"2a21e4f7b20c8c72f573707b068fb8fc6d8c64d5035c4e18ecae287947fe2b2e"},"objectives":"Buy myself an island.","motivations":"I really would like to own an island.","qualifications":"I have my 100m swimming badge, so I would be qualified to be able to swim around island.","references":[{"@type":"Other","label":"A cool island for Ryan","uri":"https://www.google.com/maps/place/World's+only+5th+order+recursive+island/@62.6511465,-97.7946829,15.75z/data=!4m14!1m7!3m6!1s0x5216a167810cee39:0x11431abdfe4c7421!2sWorld's+only+5th+order+recursive+island!8m2!3d62.651114!4d-97.7872244!16s%2Fg%2F11spwk2b6n!3m5!1s0x5216a167810cee39:0x11431abdfe4c7421!8m2!3d62.651114!4d-97.7872244!16s%2Fg%2F11spwk2b6n?authuser=0&entry=ttu"},{"@type":"Link","label":"Ryan's Twitter","uri":"https://twitter.com/Ryun1_"}]}},"bytes":"\\x7b0a20202240636f6e74657874223a207b0a2020202022406c616e6775616765223a2022656e2d7573222c0a2020202022434950313030223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130302f524541444d452e6"}},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"drep_id":{"type":"string"}}}},"/governance/dreps/{drep_id}/updates":{"response":{"200":{"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":"f4097fbdb87ab7c7ab44b30d4e2b81713a058488975d1ab8b05c381dd946a393","cert_index":0,"action":"registered"},{"tx_hash":"dd3243af975be4b5bedce4e5f5b483b2386d5ad207d05e0289c1df0eb261447e","cert_index":0,"action":"deregistered"}]},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"drep_id":{"type":"string"}}}},"/governance/dreps/{drep_id}/votes":{"response":{"200":{"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"},{"tx_hash":"b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5","cert_index":3,"vote":"abstain"}]},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"drep_id":{"type":"string"}}}},"/governance/proposals":{"response":{"200":{"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."},"governance_type":{"type":"string","enum":["hard_fork_initiation","new_committee","new_constitution","info_action","no_confidence","parameter_change","treasury_withdrawals"],"description":"Type of proposal."}},"required":["tx_hash","cert_index","governance_type"]},"example":[{"tx_hash":"2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531","cert_index":1,"governance_type":"treasury_withdrawals"},{"tx_hash":"71317e951b20aa46e9fbf45a46a6e950d5723a481225519655bf6c60","cert_index":4,"governance_type":"no_confidence"}]},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/governance/proposals/{tx_hash}/{cert_index}":{"response":{"200":{"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."},"governance_type":{"type":"string","enum":["hard_fork_initiation","new_committee","new_constitution","info_action","no_confidence","parameter_change","treasury_withdrawals"],"description":"Type of proposal."},"governance_description":{"additionalProperties":true,"type":"object","nullable":true,"description":"An object describing the content of this GovActionProposal in a readable way."},"deposit":{"type":"string","description":"The deposit amount paid for this proposal."},"return_address":{"type":"string","description":"Bech32 stake address of the reward address to receive the deposit when it is repaid."},"ratified_epoch":{"type":"integer","nullable":true},"enacted_epoch":{"type":"integer","nullable":true},"dropped_epoch":{"type":"integer","nullable":true},"expired_epoch":{"type":"integer","nullable":true},"expiration":{"type":"integer","description":"Shows the epoch at which this governance action will expire."},"anchor_url":{"type":"string","nullable":true,"description":"The URL of the offchain anchor data."},"anchor_hash":{"type":"string","nullable":true,"description":"The hash of the offchain anchor data."}},"required":["tx_hash","cert_index","governance_type","deposit","return_address","governance_description","ratified_epoch","enacted_epoch","dropped_epoch","expired_epoch","expiration","anchor_url","anchor_hash"],"example":{"tx_hash":"2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531","cert_index":1,"governance_type":"treasury_withdrawals","deposit":12000,"return_address":"stake_test1urd3hs7rlxwwdzthe6hj026dmyt3y0heuulctscyydh2kgck6nkmz","governance_description":"TreasuryWithdrawals (fromList [(RewardAcnt {getRwdNetwork = Testnet, getRwdCred = KeyHashObj (KeyHash \"71317e951b20aa46e9fbf45a46a6e950d5723a481225519655bf6c60\")},Coin 20000000)])","ratified_epoch":null,"enacted_epoch":123,"dropped_epoch":null,"expired_epoch":null,"expiration":120,"anchor_url":"https://gist.github.com/123","anchor_hash":"50b340624d49823720505e3f0095be0d6cd8f26501e094a6ab9068dd"}},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"tx_hash":{"type":"string"},"cert_index":{"type":"integer"}}}},"/governance/proposals/{tx_hash}/{cert_index}/parameters":{"response":{"200":{"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"},"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,"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"},"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":0.0000721,"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."},"cost_model_id":{"type":"integer","format":"int64","description":"The CostModel table index for the proposal."},"pvt_motion_no_confidence":{"type":"number","description":"Pool Voting threshold for motion of no-confidence. New in 13.2-Conway."},"pvt_committee_normal":{"type":"number","description":"Pool Voting threshold for new committee/threshold (normal state). New in 13.2-Conway."},"pvt_committee_no_confidence":{"type":"number","description":"Pool Voting threshold for new committee/threshold (state of no-confidence). New in 13.2-Conway."},"pvt_hard_fork_initiation":{"type":"number","description":"Pool Voting threshold for hard-fork initiation. New in 13.2-Conway."},"dvt_motion_no_confidence":{"type":"number","description":"DRep Vote threshold for motion of no-confidence. New in 13.2-Conway."},"dvt_committee_normal":{"type":"number","description":"DRep Vote threshold for new committee/threshold (normal state). New in 13.2-Conway."},"dvt_committee_no_confidence":{"type":"number","description":"DRep Vote threshold for new committee/threshold (state of no-confidence). New in 13.2-Conway."},"dvt_update_to_constitution":{"type":"number","description":"DRep Vote threshold for update to the Constitution. New in 13.2-Conway."},"dvt_hard_fork_initiation":{"type":"number","description":"DRep Vote threshold for hard-fork initiation. New in 13.2-Conway."},"dvt_p_p_network_group":{"type":"number","description":"DRep Vote threshold for protocol parameter changes, network group. New in 13.2-Conway."},"dvt_p_p_economic_group":{"type":"number","description":"DRep Vote threshold for protocol parameter changes, economic group. New in 13.2-Conway."},"dvt_p_p_technical_group":{"type":"number","description":"DRep Vote threshold for protocol parameter changes, technical group. New in 13.2-Conway."},"dvt_p_p_gov_group":{"type":"number","description":"DRep Vote threshold for protocol parameter changes, governance group. New in 13.2-Conway."},"dvt_treasury_withdrawal":{"type":"number","description":"DRep Vote threshold for treasury withdrawal. New in 13.2-Conway."},"committee_min_size":{"type":"string","format":"word64type","description":"Minimal constitutional committee size. New in 13.2-Conway."},"committee_max_term_length":{"type":"string","format":"word64type","description":"Constitutional committee term limits. New in 13.2-Conway."},"gov_action_lifetime":{"type":"string","format":"word64type","description":"Governance action expiration. New in 13.2-Conway."},"gov_action_deposit":{"type":"string","format":"word64type","description":"Governance action deposit. New in 13.2-Conway."},"drep_deposit":{"type":"string","format":"word64type","description":"DRep deposit amount. New in 13.2-Conway."},"drep_activity":{"type":"string","format":"word64type","description":"DRep activity period. New in 13.2-Conway."},"pvtpp_security_group":{"type":"number","nullable":true},"min_fee_ref_script_cost_per_byte":{"type":"number","nullable":true}},"required":["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","cost_model_id","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","min_fee_ref_script_cost_per_byte"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"tx_hash":{"type":"string"},"cert_index":{"type":"integer"}}}},"/governance/proposals/{tx_hash}/{cert_index}/withdrawals":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"stake_address":{"type":"string","example":"stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7","description":"Bech32 stake address"},"amount":{"type":"string","description":"Withdrawal amount in Lovelaces"}},"required":["stake_address","amount"]},"example":[{"stake_address":"stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7","amount":"454541212442"},{"stake_address":"stake1xx2g2c9dx2nhhehyrezyxpkstoppcqmu9hk63qgfkccw5rqttygt2","amount":"97846969"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"tx_hash":{"type":"string"},"cert_index":{"type":"integer"}}}},"/governance/proposals/{tx_hash}/{cert_index}/votes":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the voting transaction."},"cert_index":{"type":"integer","description":"Index of the certificate within the voting transaction."},"voter_role":{"type":"string","enum":["constitutional_committee","drep","spo"],"description":"The role of the voter. Can be one of constitutional_committee, drep, spo."},"voter":{"type":"string","description":"The actual voter."},"vote":{"type":"string","enum":["yes","no","abstain"],"description":"The Vote. Can be one of yes, no, abstain."}},"required":["tx_hash","cert_index","voter_role","voter","vote"]},"example":[{"tx_hash":"b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5","cert_index":2,"voter_role":"drep","voter":"drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn","vote":"yes"},{"tx_hash":"b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5","cert_index":3,"voter_role":"constitutional_committee","voter":"53a42debdc7ffd90085ab7fd9800b63e6d1c9ac481ba6eb7b6a844e4","vote":"abstain"}]},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"tx_hash":{"type":"string"},"cert_index":{"type":"integer"}}}},"/governance/proposals/{tx_hash}/{cert_index}/metadata":{"response":{"200":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Off-chain metadata of a proposal with a specific transaction hash"},"cert_index":{"type":"integer","description":"Off-chain metadata of a proposal with a specific transaction cert_index"},"url":{"type":"string","nullable":true,"example":"https://abc.xyz/gov.json","description":"URL to the proposal metadata"},"hash":{"type":"string","nullable":true,"example":"69c0c68cb57f4a5b4a87bad896fc274678e7aea98e200fa14a1cb40c0cab1d8c\"","description":"Hash of the metadata file"},"json_metadata":{"anyOf":[{"type":"string"},{"type":"object","additionalProperties":true},{"type":"array","items":{}},{"type":"integer"},{"type":"number"},{"type":"boolean"},{"type":"null"}],"description":"Content of the JSON metadata (validated CIP-108)"}},"required":["tx_hash","cert_index","url","hash","json_metadata","bytes"],"example":{"tx_hash":"257d75c8ddb0434e9b63e29ebb6241add2b835a307aa33aedba2effe09ed4ec8","cert_index":2,"url":"https://raw.githubusercontent.com/carloslodelar/proposals/main/pv10.json","hash":"ffa226f3863aca006172d559cf46bb8b883a47233962ae2fc94c158d7de6fa81","json_metadata":{"body":{"title":"Hardfork to Protocol version 10","abstract":"Let's have sanchoNet in full governance as soon as possible","rationale":"Let's keep testing stuff","motivation":"PV9 is not as fun as PV10","references":[{"uri":"","@type":"Other","label":"Hardfork to PV10"}]},"authors":[{"name":"Carlos","witness":{"publicKey":"7ea09a34aebb13c9841c71397b1cabfec5ddf950405293dee496cac2f437480a","signature":"a476985b4cc0d457f247797611799a6f6a80fc8cb7ec9dcb5a8223888d0618e30de165f3d869c4a0d9107d8a5b612ad7c5e42441907f5b91796f0d7187d64a01","witnessAlgorithm":"ed25519"}}],"@context":{"body":{"@id":"CIP108:body","@context":{"title":"CIP108:title","abstract":"CIP108:abstract","rationale":"CIP108:rationale","motivation":"CIP108:motivation","references":{"@id":"CIP108:references","@context":{"uri":"CIP100:reference-uri","Other":"CIP100:OtherReference","label":"CIP100:reference-label","referenceHash":{"@id":"CIP108:referenceHash","@context":{"hashDigest":"CIP108:hashDigest","hashAlgorithm":"CIP100:hashAlgorithm"}},"GovernanceMetadata":"CIP100:GovernanceMetadataReference"},"@container":"@set"}}},"CIP100":"https://github.com/cardano-foundation/CIPs/blob/master/CIP-0100/README.md#","CIP108":"https://github.com/cardano-foundation/CIPs/blob/master/CIP-0108/README.md#","authors":{"@id":"CIP100:authors","@context":{"name":"http://xmlns.com/foaf/0.1/name","witness":{"@id":"CIP100:witness","@context":{"publicKey":"CIP100:publicKey","signature":"CIP100:signature","witnessAlgorithm":"CIP100:witnessAlgorithm"}}},"@container":"@set"},"@language":"en-us","hashAlgorithm":"CIP100:hashAlgorithm"},"hashAlgorithm":"blake2b-256"},"bytes":"\\x7b0a20202240636f6e74657874223a207b0a2020202022406c616e6775616765223a2022656e2d7573222c0a2020202022434950313030223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130302f524541444d452e6d6423222c0a2020202022434950313038223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130382f524541444d452e6d6423222c0a202020202268617368416c676f726974686d223a20224349503130303a68617368416c676f726974686d222c0a2020202022626f6479223a207b0a20202020202022406964223a20224349503130383a626f6479222c0a2020202020202240636f6e74657874223a207b0a2020202020202020227265666572656e636573223a207b0a2020202020202020202022406964223a20224349503130383a7265666572656e636573222c0a202020202020202020202240636f6e7461696e6572223a202240736574222c0a202020202020202020202240636f6e74657874223a207b0a20202020202020202020202022476f7665726e616e63654d65746164617461223a20224349503130303a476f7665726e616e63654d657461646174615265666572656e6365222c0a202020202020202020202020224f74686572223a20224349503130303a4f746865725265666572656e6365222c0a202020202020202020202020226c6162656c223a20224349503130303a7265666572656e63652d6c6162656c222c0a20202020202020202020202022757269223a20224349503130303a7265666572656e63652d757269222c0a202020202020202020202020227265666572656e636548617368223a207b0a202020202020202020202020202022406964223a20224349503130383a7265666572656e636548617368222c0a20202020202020202020202020202240636f6e74657874223a207b0a202020202020202020202020202020202268617368446967657374223a20224349503130383a68617368446967657374222c0a202020202020202020202020202020202268617368416c676f726974686d223a20224349503130303a68617368416c676f726974686d220a20202020202020202020202020207d0a2020202020202020202020207d0a202020202020202020207d0a20202020202020207d2c0a2020202020202020227469746c65223a20224349503130383a7469746c65222c0a2020202020202020226162737472616374223a20224349503130383a6162737472616374222c0a2020202020202020226d6f7469766174696f6e223a20224349503130383a6d6f7469766174696f6e222c0a202020202020202022726174696f6e616c65223a20224349503130383a726174696f6e616c65220a2020202020207d0a202020207d2c0a2020202022617574686f7273223a207b0a20202020202022406964223a20224349503130303a617574686f7273222c0a2020202020202240636f6e7461696e6572223a202240736574222c0a2020202020202240636f6e74657874223a207b0a2020202020202020226e616d65223a2022687474703a2f2f786d6c6e732e636f6d2f666f61662f302e312f6e616d65222c0a2020202020202020227769746e657373223a207b0a2020202020202020202022406964223a20224349503130303a7769746e657373222c0a202020202020202020202240636f6e74657874223a207b0a202020202020202020202020227769746e657373416c676f726974686d223a20224349503130303a7769746e657373416c676f726974686d222c0a202020202020202020202020227075626c69634b6579223a20224349503130303a7075626c69634b6579222c0a202020202020202020202020227369676e6174757265223a20224349503130303a7369676e6174757265220a202020202020202020207d0a20202020202020207d0a2020202020207d0a202020207d0a20207d2c0a20202268617368416c676f726974686d223a2022626c616b6532622d323536222c0a202022626f6479223a207b0a20202020227469746c65223a202248617264666f726b20746f2050726f746f636f6c2076657273696f6e203130222c0a20202020226162737472616374223a20224c6574277320686176652073616e63686f4e657420696e2066756c6c20676f7665726e616e636520617320736f6f6e20617320706f737369626c65222c0a20202020226d6f7469766174696f6e223a2022505639206973206e6f742061732066756e2061732050563130222c0a2020202022726174696f6e616c65223a20224c65742773206b6565702074657374696e67207374756666222c0a20202020227265666572656e636573223a205b0a2020202020207b0a2020202020202020224074797065223a20224f74686572222c0a2020202020202020226c6162656c223a202248617264666f726b20746f2050563130222c0a202020202020202022757269223a2022220a2020202020207d0a202020205d0a20207d2c0a202022617574686f7273223a205b0a202020207b0a202020202020226e616d65223a20224361726c6f73222c0a202020202020227769746e657373223a207b0a2020202020202020227769746e657373416c676f726974686d223a202265643235353139222c0a2020202020202020227075626c69634b6579223a202237656130396133346165626231336339383431633731333937623163616266656335646466393530343035323933646565343936636163326634333734383061222c0a2020202020202020227369676e6174757265223a20226134373639383562346363306434353766323437373937363131373939613666366138306663386362376563396463623561383232333838386430363138653330646531363566336438363963346130643931303764386135623631326164376335653432343431393037663562393137393666306437313837643634613031220a2020202020207d0a202020207d0a20205d0a7d"}},"400":{"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"]},"403":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"tx_hash":{"type":"string"},"cert_index":{"type":"integer"}}}},"/epochs/latest":{"response":{"200":{"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"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/epochs/latest/parameters":{"response":{"200":{"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,"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"},"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":0.0000721,"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},"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","min_fee_ref_script_cost_per_byte"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/epochs/{number}":{"response":{"200":{"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"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"number":{"type":"integer"}}}},"/epochs/{number}/next":{"response":{"200":{"type":"array","items":{"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"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1}}},"params":{"type":"object","properties":{"number":{"type":"integer"}}}},"/epochs/{number}/previous":{"response":{"200":{"type":"array","items":{"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"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1}}},"params":{"type":"object","properties":{"number":{"type":"integer"}}}},"/epochs/{number}/stakes":{"response":{"200":{"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"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1}}},"params":{"type":"object","properties":{"number":{"type":"integer"}}}},"/epochs/{number}/stakes/{pool_id}":{"response":{"200":{"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"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1}}},"params":{"type":"object","properties":{"number":{"type":"integer"},"pool_id":{"type":"string"}}}},"/epochs/{number}/blocks":{"response":{"200":{"type":"array","items":{"type":"string","description":"Hash of the block"},"example":["d0fa315687e99ccdc96b14cc2ea74a767405d64427b648c470731a9b69e4606e","38bc6efb92a830a0ed22a64f979d120d26483fd3c811f6622a8c62175f530878","f3258fcd8b975c061b4fcdcfcbb438807134d6961ec278c200151274893b6b7d"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"number":{"type":"integer"}}}},"/epochs/{number}/blocks/{pool_id}":{"response":{"200":{"type":"array","items":{"type":"string","description":"Hash of the block"},"example":["d0fa315687e99ccdc96b14cc2ea74a767405d64427b648c470731a9b69e4606e","38bc6efb92a830a0ed22a64f979d120d26483fd3c811f6622a8c62175f530878","f3258fcd8b975c061b4fcdcfcbb438807134d6961ec278c200151274893b6b7d"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"number":{"type":"integer"},"pool_id":{"type":"string"}}}},"/epochs/{number}/parameters":{"response":{"200":{"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,"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"},"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":0.0000721,"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},"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","min_fee_ref_script_cost_per_byte"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"number":{"type":"integer"}}}},"/txs/{hash}":{"response":{"200":{"type":"object","properties":{"hash":{"type":"string","example":"1e043f100dce12d107f679685acd2fc0610e10f72a92d412794c9773d11d8477","description":"Transaction hash"},"block":{"type":"string","example":"356b7d7dbb696ccd12775c016941057a9dc70898d87a63fc752271bb46856940","description":"Block hash"},"block_height":{"type":"integer","example":123456,"description":"Block number"},"block_time":{"type":"integer","example":1635505891,"description":"Block creation time in UNIX time"},"slot":{"type":"integer","example":42000000,"description":"Slot number"},"index":{"type":"integer","example":1,"description":"Transaction index within the block"},"output_amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"fees":{"type":"string","example":"182485","description":"Fees of the transaction in Lovelaces"},"deposit":{"type":"string","example":"0","description":"Deposit within the transaction in Lovelaces"},"size":{"type":"integer","example":433,"description":"Size of the transaction in Bytes"},"invalid_before":{"type":"string","nullable":true,"example":null,"description":"Left (included) endpoint of the timelock validity intervals"},"invalid_hereafter":{"type":"string","nullable":true,"example":"13885913","description":"Right (excluded) endpoint of the timelock validity intervals"},"utxo_count":{"type":"integer","example":4,"description":"Count of UTXOs within the transaction"},"withdrawal_count":{"type":"integer","example":0,"description":"Count of the withdrawals within the transaction"},"mir_cert_count":{"type":"integer","example":0,"description":"Count of the MIR certificates within the transaction"},"delegation_count":{"type":"integer","example":0,"description":"Count of the delegations within the transaction"},"stake_cert_count":{"type":"integer","example":0,"description":"Count of the stake keys (de)registration within the transaction"},"pool_update_count":{"type":"integer","example":0,"description":"Count of the stake pool registration and update certificates within the transaction"},"pool_retire_count":{"type":"integer","example":0,"description":"Count of the stake pool retirement certificates within the transaction"},"asset_mint_or_burn_count":{"type":"integer","example":0,"description":"Count of asset mints and burns within the transaction"},"redeemer_count":{"type":"integer","example":0,"description":"Count of redeemers within the transaction"},"valid_contract":{"type":"boolean","example":true,"description":"True if contract script passed validation"}},"required":["hash","block","block_height","block_time","slot","index","output_amount","fees","deposit","size","invalid_before","invalid_hereafter","utxo_count","withdrawal_count","mir_cert_count","delegation_count","stake_cert_count","pool_update_count","pool_retire_count","asset_mint_or_burn_count","redeemer_count","valid_contract"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/utxos":{"response":{"200":{"type":"object","properties":{"hash":{"type":"string","example":"1e043f100dce12d107f679685acd2fc0610e10f72a92d412794c9773d11d8477","description":"Transaction hash"},"inputs":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","example":"addr1q9ld26v2lv8wvrxxmvg90pn8n8n5k6tdst06q2s856rwmvnueldzuuqmnsye359fqrk8hwvenjnqultn7djtrlft7jnq7dy7wv","description":"Input address"},"amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"tx_hash":{"type":"string","example":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0","description":"Hash of the UTXO transaction"},"output_index":{"type":"integer","example":0,"description":"UTXO index in the transaction"},"data_hash":{"type":"string","nullable":true,"description":"The hash of the transaction output datum","example":"9e478573ab81ea7a8e31891ce0648b81229f408d596a3483e6f4f9b92d3cf710"},"inline_datum":{"type":"string","nullable":true,"description":"CBOR encoded inline datum","example":"19a6aa"},"reference_script_hash":{"type":"string","nullable":true,"description":"The hash of the reference script of the input","example":"13a3efd825703a352a8f71f4e2758d08c28c564e8dfcce9f77776ad1"},"collateral":{"type":"boolean","example":false,"description":"Whether the input is a collateral consumed on script validation failure"},"reference":{"type":"boolean","example":false,"description":"Whether the input is a reference transaction input"}},"required":["address","amount","tx_hash","output_index","data_hash","inline_datum","reference_script_hash","collateral"]}},"outputs":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","example":"addr1q9ld26v2lv8wvrxxmvg90pn8n8n5k6tdst06q2s856rwmvnueldzuuqmnsye359fqrk8hwvenjnqultn7djtrlft7jnq7dy7wv","description":"Output address"},"amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"output_index":{"type":"integer","example":0,"description":"UTXO index in the transaction"},"data_hash":{"type":"string","nullable":true,"description":"The hash of the transaction output datum","example":"9e478573ab81ea7a8e31891ce0648b81229f408d596a3483e6f4f9b92d3cf710"},"inline_datum":{"type":"string","nullable":true,"description":"CBOR encoded inline datum","example":"19a6aa"},"collateral":{"type":"boolean","example":false,"description":"Whether the output is a collateral output"},"reference_script_hash":{"type":"string","nullable":true,"description":"The hash of the reference script of the output","example":"13a3efd825703a352a8f71f4e2758d08c28c564e8dfcce9f77776ad1"}},"required":["address","amount","output_index","data_hash","inline_datum","collateral","reference_script_hash"]}}},"required":["hash","inputs","outputs"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/stakes":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"cert_index":{"type":"integer","example":0,"description":"Index of the certificate within the transaction"},"address":{"type":"string","example":"stake1u9t3a0tcwune5xrnfjg4q7cpvjlgx9lcv0cuqf5mhfjwrvcwrulda","description":"Delegation stake address"},"registration":{"type":"boolean","example":true,"description":"Registration boolean, false if deregistration"}},"required":["cert_index","address","registration"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/delegations":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","example":0,"description":"Index of the certificate within the transaction","deprecated":true},"cert_index":{"type":"integer","example":0,"description":"Index of the certificate within the transaction"},"address":{"type":"string","example":"stake1u9r76ypf5fskppa0cmttas05cgcswrttn6jrq4yd7jpdnvc7gt0yc","description":"Bech32 delegation stake address"},"pool_id":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","description":"Bech32 ID of delegated stake pool"},"active_epoch":{"type":"integer","example":210,"description":"Epoch in which the delegation becomes active"}},"required":["index","cert_index","address","pool_id","active_epoch"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/withdrawals":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","example":"stake1u9r76ypf5fskppa0cmttas05cgcswrttn6jrq4yd7jpdnvc7gt0yc","description":"Bech32 withdrawal address"},"amount":{"type":"string","example":"431833601","description":"Withdrawal amount in Lovelaces"}},"required":["address","amount"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/mirs":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"pot":{"type":"string","enum":["reserve","treasury"],"example":"reserve","description":"Source of MIR funds"},"cert_index":{"type":"integer","example":0,"description":"Index of the certificate within the transaction"},"address":{"type":"string","example":"stake1u9r76ypf5fskppa0cmttas05cgcswrttn6jrq4yd7jpdnvc7gt0yc","description":"Bech32 stake address"},"amount":{"type":"string","example":"431833601","description":"MIR amount in Lovelaces"}},"required":["pot","cert_index","address","amount"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/pool_updates":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"cert_index":{"type":"integer","example":0,"description":"Index of the certificate within the transaction"},"pool_id":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","description":"Bech32 encoded pool ID"},"vrf_key":{"type":"string","example":"0b5245f9934ec2151116fb8ec00f35fd00e0aa3b075c4ed12cce440f999d8233","description":"VRF key hash"},"pledge":{"type":"string","example":"5000000000","description":"Stake pool certificate pledge in Lovelaces"},"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 in Lovelaces"},"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"]},"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"},"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"]},"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"]}},"active_epoch":{"type":"integer","example":210,"description":"Epoch in which the update becomes active"}},"required":["cert_index","pool_id","vrf_key","pledge","margin_cost","fixed_cost","reward_account","owners","metadata","relays","active_epoch"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/pool_retires":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"cert_index":{"type":"integer","example":0,"description":"Index of the certificate within the transaction"},"pool_id":{"type":"string","example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","description":"Bech32 stake pool ID"},"retiring_epoch":{"type":"integer","example":216,"description":"Epoch in which the pool becomes retired"}},"required":["cert_index","pool_id","retiring_epoch"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/metadata":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"json_metadata":{}},"required":["label","json_metadata"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/metadata/cbor":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string","description":"Metadata label"},"cbor_metadata":{"deprecated":true,"type":"string","nullable":true,"description":"Content of the CBOR metadata"},"metadata":{"type":"string","nullable":true,"description":"Content of the CBOR metadata in hex"}},"required":["label","cbor_metadata","metadata"]},"example":[{"label":"1968","cbor_metadata":"\\xa100a16b436f6d62696e6174696f6e8601010101010c","metadata":"a100a16b436f6d62696e6174696f6e8601010101010c"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/redeemers":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_index":{"type":"integer","example":0,"description":"Index of the redeemer within the transaction"},"purpose":{"type":"string","enum":["spend","mint","cert","reward"],"example":"spend","description":"Validation purpose"},"script_hash":{"type":"string","example":"ec26b89af41bef0f7585353831cb5da42b5b37185e0c8a526143b824","description":"Script hash"},"redeemer_data_hash":{"type":"string","example":"923918e403bf43c34b4ef6b48eb2ee04babed17320d8d1b9ff9ad086e86f44ec","description":"Redeemer data hash"},"datum_hash":{"type":"string","example":"923918e403bf43c34b4ef6b48eb2ee04babed17320d8d1b9ff9ad086e86f44ec","deprecated":true,"description":"Datum hash"},"unit_mem":{"type":"string","example":"1700","description":"The budget in Memory to run a script"},"unit_steps":{"type":"string","example":"476468","description":"The budget in CPU steps to run a script"},"fee":{"type":"string","example":"172033","description":"The fee consumed to run the script"}},"required":["tx_index","purpose","unit_mem","unit_steps","script_hash","redeemer_data_hash","datum_hash","fee"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/required_signers":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"witness_hash":{"type":"string","example":"d52e11f3e48436dd42dbec6d88c239732e503b8b7a32af58e5f87625","description":"Hash of the witness"}},"required":["witness_hash"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/txs/{hash}/cbor":{"response":{"200":{"type":"object","properties":{"cbor":{"type":"string","description":"CBOR serialized transaction"}},"required":["cbor"],"example":{"cbor":"84a40081825820203e5b61e0949ffc8fe594727cf7ed73c7396cc2bd212af9a680c9423b5880eb00018282583900f0c60254ecb0addd4c7e40c28fd05b65014ab4c8ecece06c7dcee5a0724bf93336a8225e7ef152b41aea955173be91af19250edea1ddafab1a000f42408258390014beadb876d0a2a593fe2f1b539389e00731290910170e9a1be78e847d2ccdc7af469706878018739bcfde9ae23f009c4ae38aee0a4b4f3a1b0000000253fa0f93021a0002922d031a0303c827a100818258207d3ae39f9a1c916ac7c13f10c7d67c70b870c286a1af71485455c5022a3f391d5840e2f481acd1601a3f39fa976317bba685ddd774621a92611edaaa3df9f48a3b13d8b25ecb2f28b031c1602512418efed3033e463a0dcd22a856c808033cc9e00ff5f6"}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/tx/submit":{"response":{"200":{"type":"string","format":"hex","minLength":64,"maxLength":64,"example":"d1662b24fa9fe985fc2dce47455df399cb2e31e1e1819339e885801cc3578908"},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"425":{"type":"object","properties":{"status_code":{"type":"integer","example":425},"error":{"type":"string","example":"Mempool Full"},"message":{"type":"string","example":"Mempool is full, please try resubmitting again later."}},"required":["error","message","status_code"]},"429":{"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":{"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"]}}},"/accounts/{stake_address}":{"response":{"200":{"type":"object","properties":{"stake_address":{"type":"string","example":"stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7","description":"Bech32 stake address"},"active":{"type":"boolean","example":true,"description":"Registration state of an account"},"active_epoch":{"type":"integer","nullable":true,"example":412,"description":"Epoch of the most recent action - registration or deregistration"},"controlled_amount":{"type":"string","example":"619154618165","description":"Balance of the account in Lovelaces"},"rewards_sum":{"type":"string","example":"319154618165","description":"Sum of all rewards for the account in the Lovelaces"},"withdrawals_sum":{"type":"string","example":"12125369253","description":"Sum of all the withdrawals for the account in Lovelaces"},"reserves_sum":{"type":"string","example":"319154618165","description":"Sum of all funds from reserves for the account in the Lovelaces"},"treasury_sum":{"type":"string","example":"12000000","description":"Sum of all funds from treasury for the account in the Lovelaces"},"withdrawable_amount":{"type":"string","example":"319154618165","description":"Sum of available rewards that haven't been withdrawn yet for the account in the Lovelaces"},"pool_id":{"type":"string","nullable":true,"example":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","description":"Bech32 pool ID to which this account is delegated"},"drep_id":{"type":"string","nullable":true,"example":"drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc","description":"Bech32 drep ID to which this account is delegated"}},"required":["stake_address","active","active_epoch","controlled_amount","rewards_sum","withdrawals_sum","reserves_sum","treasury_sum","withdrawable_amount","pool_id","drep_id"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/rewards":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"epoch":{"type":"integer","description":"Epoch of the associated reward"},"amount":{"type":"string","description":"Rewards for given epoch in Lovelaces"},"pool_id":{"type":"string","description":"Bech32 pool ID being delegated to"},"type":{"type":"string","enum":["leader","member","pool_deposit_refund"],"description":"Type of the reward"}},"required":["epoch","amount","pool_id","type"]},"example":[{"epoch":215,"amount":"12695385","pool_id":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","type":"member"},{"epoch":216,"amount":"3586329","pool_id":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","type":"member"},{"epoch":217,"amount":"1","pool_id":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","type":"member"},{"epoch":217,"amount":"1337","pool_id":"pool1cytwr0n7eas6du2h2xshl8ypa1yqr18f0erlhhjcuczysiunjcs","type":"leader"},{"epoch":218,"amount":"1395265","pool_id":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","type":"member"},{"epoch":218,"amount":"500000000","pool_id":"pool1cytwr0n7eas6du2h2xshl8ypa1yqr18f0erlhhjcuczysiunjcs","type":"pool_deposit_refund"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/history":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"active_epoch":{"type":"integer","example":210,"description":"Epoch in which the stake was active"},"amount":{"type":"string","description":"Stake amount in Lovelaces"},"pool_id":{"type":"string","description":"Bech32 ID of pool being delegated to"}},"required":["active_epoch","amount","pool_id"]},"example":[{"active_epoch":210,"amount":"12695385","pool_id":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy"},{"active_epoch":211,"amount":"22695385","pool_id":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/delegations":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"active_epoch":{"type":"integer","example":210,"description":"Epoch in which the delegation becomes active"},"tx_hash":{"type":"string","description":"Hash of the transaction containing the delegation"},"amount":{"type":"string","description":"Rewards for given epoch in Lovelaces"},"pool_id":{"type":"string","description":"Bech32 ID of pool being delegated to"}},"required":["active_epoch","tx_hash","amount","pool_id"]},"example":[{"active_epoch":210,"tx_hash":"2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531","amount":"12695385","pool_id":"pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy"},{"active_epoch":242,"tx_hash":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dde628516157f0","amount":"12691385","pool_id":"pool1kchver88u3kygsak8wgll7htr8uxn5v35lfrsyy842nkscrzyvj"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/registrations":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the transaction containing the (de)registration certificate"},"action":{"type":"string","enum":["registered","deregistered"],"description":"Action in the certificate"}},"required":["tx_hash","action"]},"example":[{"tx_hash":"2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531","action":"registered"},{"tx_hash":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dde628516157f0","action":"deregistered"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/withdrawals":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the transaction containing the withdrawal"},"amount":{"type":"string","description":"Withdrawal amount in Lovelaces"}},"required":["tx_hash","amount"]},"example":[{"tx_hash":"48a9625c841eea0dd2bb6cf551eabe6523b7290c9ce34be74eedef2dd8f7ecc5","amount":"454541212442"},{"tx_hash":"4230b0cbccf6f449f0847d8ad1d634a7a49df60d8c142bb8cc2dbc8ca03d9e34","amount":"97846969"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/mirs":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the transaction containing the MIR"},"amount":{"type":"string","description":"MIR amount in Lovelaces"}},"required":["tx_hash","amount"]},"example":[{"tx_hash":"69705bba1d687a816ff5a04ec0c358a1f1ef075ab7f9c6cc2763e792581cec6d","amount":"2193707473"},{"tx_hash":"baaa77b63d4d7d2bb3ab02c9b85978c2092c336dede7f59e31ad65452d510c13","amount":"14520198574"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/addresses":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","description":"Address associated with the stake key"}},"required":["address"]},"example":[{"address":"addr1qx2kd28nq8ac5prwg32hhvudlwggpgfp8utlyqxu6wqgz62f79qsdmm5dsknt9ecr5w468r9ey0fxwkdrwh08ly3tu9sy0f4qd"},{"address":"addr1qys3czp8s9thc6u2fqed9yq3h24nyw28uk0m6mkgn9dkckjf79qsdmm5dsknt9ecr5w468r9ey0fxwkdrwh08ly3tu9suth4w4"},{"address":"addr1q8j55h253zcvl326sk5qdt2n8z7eghzspe0ekxgncr796s2f79qsdmm5dsknt9ecr5w468r9ey0fxwkdrwh08ly3tu9sjmd35m"},{"address":"addr1q8f7gxrprank3drhx8k5grlux7ene0nlwun8y9thu8mc3yjf79qsdmm5dsknt9ecr5w468r9ey0fxwkdrwh08ly3tu9sls6vnt"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/addresses/assets":{"response":{"200":{"type":"array","items":{"type":"object","description":"The sum of all assets of all addresses associated with a given account","properties":{"unit":{"type":"string","format":"Concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"d5e6bf0500378d4f0da4e8dde6becec7621cd8cbf5cbb9b87013d4cc537061636542756433343132","quantity":"1"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"125"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/accounts/{stake_address}/addresses/total":{"response":{"200":{"type":"object","properties":{"stake_address":{"type":"string","description":"Bech32 encoded stake address","example":"stake1u9l5q5jwgelgagzyt6nuaasefgmn8pd25c8e9qpeprq0tdcp0e3uk"},"received_sum":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset for all addresses associated with the account","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"sent_sum":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset for all addresses associated with the account","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"tx_count":{"type":"integer","example":12,"description":"Count of all transactions for all addresses associated with the account"}},"required":["stake_address","received_sum","sent_sum","tx_count"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"stake_address":{"type":"string"}}}},"/mempool":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the transaction"}},"required":["tx_hash"]},"example":[{"tx_hash":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/mempool/{hash}":{"response":{"200":{"type":"object","properties":{"tx":{"type":"object","properties":{"hash":{"type":"string","example":"1e043f100dce12d107f679685acd2fc0610e10f72a92d412794c9773d11d8477","description":"Transaction hash"},"output_amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"fees":{"type":"string","example":"182485","description":"Fees of the transaction in Lovelaces"},"deposit":{"type":"string","example":"0","description":"Deposit within the transaction in Lovelaces"},"size":{"type":"integer","example":433,"description":"Size of the transaction in Bytes"},"invalid_before":{"type":"string","nullable":true,"example":null,"description":"Left (included) endpoint of the timelock validity intervals"},"invalid_hereafter":{"type":"string","nullable":true,"example":"13885913","description":"Right (excluded) endpoint of the timelock validity intervals"},"utxo_count":{"type":"integer","example":4,"description":"Count of UTXOs within the transaction"},"withdrawal_count":{"type":"integer","example":0,"description":"Count of the withdrawals within the transaction"},"mir_cert_count":{"type":"integer","example":0,"description":"Count of the MIR certificates within the transaction"},"delegation_count":{"type":"integer","example":0,"description":"Count of the delegations within the transaction"},"stake_cert_count":{"type":"integer","example":0,"description":"Count of the stake keys (de)registration within the transaction"},"pool_update_count":{"type":"integer","example":0,"description":"Count of the stake pool registration and update certificates within the transaction"},"pool_retire_count":{"type":"integer","example":0,"description":"Count of the stake pool retirement certificates within the transaction"},"asset_mint_or_burn_count":{"type":"integer","example":0,"description":"Count of asset mints and burns within the transaction"},"redeemer_count":{"type":"integer","example":0,"description":"Count of redeemers within the transaction"},"valid_contract":{"type":"boolean","example":true,"description":"True if contract script passed validation"}},"required":["hash","output_amount","fees","deposit","size","invalid_before","invalid_hereafter","utxo_count","withdrawal_count","mir_cert_count","delegation_count","stake_cert_count","pool_update_count","pool_retire_count","asset_mint_or_burn_count","redeemer_count","valid_contract"]},"inputs":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","example":"addr1q9ld26v2lv8wvrxxmvg90pn8n8n5k6tdst06q2s856rwmvnueldzuuqmnsye359fqrk8hwvenjnqultn7djtrlft7jnq7dy7wv","description":"Input address"},"tx_hash":{"type":"string","example":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0","description":"Hash of the UTXO transaction"},"output_index":{"type":"integer","example":0,"description":"UTXO index in the transaction"},"collateral":{"type":"boolean","example":false,"description":"Whether the input is a collateral consumed on script validation failure"},"reference":{"type":"boolean","example":false,"description":"Whether the input is a reference transaction input"}},"required":["tx_hash","output_index","collateral"]}},"outputs":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","example":"addr1q9ld26v2lv8wvrxxmvg90pn8n8n5k6tdst06q2s856rwmvnueldzuuqmnsye359fqrk8hwvenjnqultn7djtrlft7jnq7dy7wv","description":"Output address"},"amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"output_index":{"type":"integer","example":0,"description":"UTXO index in the transaction"},"data_hash":{"type":"string","nullable":true,"description":"The hash of the transaction output datum","example":"9e478573ab81ea7a8e31891ce0648b81229f408d596a3483e6f4f9b92d3cf710"},"inline_datum":{"type":"string","nullable":true,"description":"CBOR encoded inline datum","example":"19a6aa"},"collateral":{"type":"boolean","example":false,"description":"Whether the output is a collateral output"},"reference_script_hash":{"type":"string","nullable":true,"description":"The hash of the reference script of the output","example":"13a3efd825703a352a8f71f4e2758d08c28c564e8dfcce9f77776ad1"}},"required":["address","amount","output_index","data_hash","inline_datum","collateral","reference_script_hash"]}},"redeemers":{"type":"array","items":{"type":"object","properties":{"tx_index":{"type":"integer","example":0,"description":"Index of the redeemer within the transaction"},"purpose":{"type":"string","enum":["spend","mint","cert","reward"],"example":"spend","description":"Validation purpose"},"unit_mem":{"type":"string","example":"1700","description":"The budget in Memory to run a script"},"unit_steps":{"type":"string","example":"476468","description":"The budget in CPU steps to run a script"}},"required":["tx_index","purpose","unit_mem","unit_steps"]}}},"required":["tx","inputs","outputs"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/mempool/addresses/{address}":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the transaction"}},"required":["tx_hash"]},"example":[{"tx_hash":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"address":{"type":"string"}}}},"/metadata/txs/labels":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string","description":"Metadata label"},"cip10":{"type":"string","nullable":true,"description":"CIP10 defined description"},"count":{"type":"string","description":"The count of metadata entries with a specific label"}},"required":["label","cip10","count"]},"example":[{"label":"1990","cip10":null,"count":"1"},{"label":"1967","cip10":"nut.link metadata oracles registry","count":"3"},{"label":"1968","cip10":"nut.link metadata oracles data points","count":"16321"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/metadata/txs/labels/{label}":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Transaction hash that contains the specific metadata"},"json_metadata":{"anyOf":[{"type":"string"},{"type":"object","additionalProperties":true},{"type":"array","items":{}},{"type":"integer"},{"type":"number"},{"type":"boolean"},{"type":"null"}],"description":"Content of the JSON metadata"}},"required":["tx_hash","json_metadata"]},"example":[{"tx_hash":"257d75c8ddb0434e9b63e29ebb6241add2b835a307aa33aedba2effe09ed4ec8","json_metadata":{"ADAUSD":[{"value":"0.10409800535729975","source":"ergoOracles"}]}},{"tx_hash":"e865f2cc01ca7381cf98dcdc4de07a5e8674b8ea16e6a18e3ed60c186fde2b9c","json_metadata":{"ADAUSD":[{"value":"0.15409850555139935","source":"ergoOracles"}]}},{"tx_hash":"4237501da3cfdd53ade91e8911e764bd0699d88fd43b12f44a1f459b89bc91be","json_metadata":null}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"label":{"type":"string"}}}},"/metadata/txs/labels/{label}/cbor":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Transaction hash that contains the specific metadata"},"cbor_metadata":{"deprecated":true,"type":"string","nullable":true,"description":"Content of the CBOR metadata"},"metadata":{"type":"string","nullable":true,"description":"Content of the CBOR metadata in hex"}},"required":["tx_hash","cbor_metadata","metadata"]},"example":[{"tx_hash":"257d75c8ddb0434e9b63e29ebb6241add2b835a307aa33aedba2effe09ed4ec8","cbor_metadata":null,"metadata":null},{"tx_hash":"e865f2cc01ca7381cf98dcdc4de07a5e8674b8ea16e6a18e3ed60c186fde2b9c","cbor_metadata":null,"metadata":null},{"tx_hash":"4237501da3cfdd53ade91e8911e764bd0699d88fd43b12f44a1f459b89bc91be","cbor_metadata":"\\xa100a16b436f6d62696e6174696f6e8601010101010c","metadata":"a100a16b436f6d62696e6174696f6e8601010101010c"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"label":{"type":"string"}}}},"/addresses/{address}":{"response":{"200":{"type":"object","properties":{"address":{"type":"string","description":"Bech32 encoded addresses","example":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz"},"amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"stake_address":{"type":"string","nullable":true,"example":"stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7","description":"Stake address that controls the key"},"type":{"type":"string","enum":["byron","shelley"],"example":"shelley","description":"Address era"},"script":{"type":"boolean","example":false,"description":"True if this is a script address"}},"required":["address","amount","stake_address","type","script"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"address":{"type":"string"}}}},"/addresses/{address}/extended":{"response":{"200":{"type":"object","properties":{"address":{"type":"string","description":"Bech32 encoded addresses","example":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz"},"amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"},"decimals":{"type":"integer","nullable":true,"description":"Number of decimal places of the asset unit. Primary data source is CIP68 reference NFT with a fallback to off-chain metadata."},"has_nft_onchain_metadata":{"type":"boolean","description":"True if the latest minting transaction includes metadata (best-effort)"}},"required":["unit","quantity","decimals","has_nft_onchain_metadata"]},"example":[{"unit":"lovelace","quantity":"42000000","decimals":6,"has_nft_onchain_metadata":false},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12","decimals":null,"has_nft_onchain_metadata":true}]},"stake_address":{"type":"string","nullable":true,"example":"stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7","description":"Stake address that controls the key"},"type":{"type":"string","enum":["byron","shelley"],"example":"shelley","description":"Address era"},"script":{"type":"boolean","example":false,"description":"True if this is a script address"}},"required":["address","amount","stake_address","type","script"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"address":{"type":"string"}}}},"/addresses/{address}/total":{"response":{"200":{"type":"object","properties":{"address":{"type":"string","description":"Bech32 encoded address","example":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz"},"received_sum":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"sent_sum":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]},"example":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}]},"tx_count":{"type":"integer","example":12,"description":"Count of all transactions on the address"}},"required":["address","received_sum","sent_sum","tx_count"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"address":{"type":"string"}}}},"/addresses/{address}/utxos":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","description":"Bech32 encoded addresses - useful when querying by payment_cred","example":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz"},"tx_hash":{"type":"string","description":"Transaction hash of the UTXO"},"tx_index":{"type":"integer","deprecated":true,"description":"UTXO index in the transaction"},"output_index":{"type":"integer","description":"UTXO index in the transaction"},"amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]}},"block":{"type":"string","description":"Block hash of the UTXO"},"data_hash":{"type":"string","nullable":true,"description":"The hash of the transaction output datum"},"inline_datum":{"type":"string","nullable":true,"description":"CBOR encoded inline datum","example":"19a6aa"},"reference_script_hash":{"type":"string","nullable":true,"description":"The hash of the reference script of the output","example":"13a3efd825703a352a8f71f4e2758d08c28c564e8dfcce9f77776ad1"}},"required":["address","tx_hash","tx_index","output_index","amount","block","data_hash","inline_datum","reference_script_hash"]},"example":[{"address":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz","tx_hash":"39a7a284c2a0948189dc45dec670211cd4d72f7b66c5726c08d9b3df11e44d58","output_index":0,"amount":[{"unit":"lovelace","quantity":"42000000"}],"block":"7eb8e27d18686c7db9a18f8bbcfe34e3fed6e047afaa2d969904d15e934847e6","data_hash":"9e478573ab81ea7a8e31891ce0648b81229f408d596a3483e6f4f9b92d3cf710","inline_datum":null,"reference_script_hash":null},{"address":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz","tx_hash":"4c4e67bafa15e742c13c592b65c8f74c769cd7d9af04c848099672d1ba391b49","output_index":0,"amount":[{"unit":"lovelace","quantity":"729235000"}],"block":"953f1b80eb7c11a7ffcd67cbd4fde66e824a451aca5a4065725e5174b81685b7","data_hash":null,"inline_datum":null,"reference_script_hash":null},{"address":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz","tx_hash":"768c63e27a1c816a83dc7b07e78af673b2400de8849ea7e7b734ae1333d100d2","output_index":1,"amount":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}],"block":"5c571f83fe6c784d3fbc223792627ccf0eea96773100f9aedecf8b1eda4544d7","data_hash":null,"inline_datum":null,"reference_script_hash":null}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"address":{"type":"string"}}}},"/addresses/{address}/utxos/{asset}":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","description":"Bech32 encoded addresses - useful when querying by payment_cred","example":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz"},"tx_hash":{"type":"string","description":"Transaction hash of the UTXO"},"tx_index":{"type":"integer","deprecated":true,"description":"UTXO index in the transaction"},"output_index":{"type":"integer","description":"UTXO index in the transaction"},"amount":{"type":"array","items":{"type":"object","description":"The sum of all the UTXO per asset","properties":{"unit":{"type":"string","format":"Lovelace or concatenation of asset policy_id and hex-encoded asset_name","description":"The unit of the value"},"quantity":{"type":"string","description":"The quantity of the unit"}},"required":["unit","quantity"]}},"block":{"type":"string","description":"Block hash of the UTXO"},"data_hash":{"type":"string","nullable":true,"description":"The hash of the transaction output datum"},"inline_datum":{"type":"string","nullable":true,"description":"CBOR encoded inline datum","example":"19a6aa"},"reference_script_hash":{"type":"string","nullable":true,"description":"The hash of the reference script of the output","example":"13a3efd825703a352a8f71f4e2758d08c28c564e8dfcce9f77776ad1"}},"required":["address","tx_hash","tx_index","output_index","amount","block","data_hash","inline_datum","reference_script_hash"]},"example":[{"address":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz","tx_hash":"39a7a284c2a0948189dc45dec670211cd4d72f7b66c5726c08d9b3df11e44d58","output_index":0,"amount":[{"unit":"lovelace","quantity":"42000000"}],"block":"7eb8e27d18686c7db9a18f8bbcfe34e3fed6e047afaa2d969904d15e934847e6","data_hash":"9e478573ab81ea7a8e31891ce0648b81229f408d596a3483e6f4f9b92d3cf710","inline_datum":null,"reference_script_hash":null},{"address":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz","tx_hash":"4c4e67bafa15e742c13c592b65c8f74c769cd7d9af04c848099672d1ba391b49","output_index":0,"amount":[{"unit":"lovelace","quantity":"729235000"}],"block":"953f1b80eb7c11a7ffcd67cbd4fde66e824a451aca5a4065725e5174b81685b7","data_hash":null,"inline_datum":null,"reference_script_hash":null},{"address":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz","tx_hash":"768c63e27a1c816a83dc7b07e78af673b2400de8849ea7e7b734ae1333d100d2","output_index":1,"amount":[{"unit":"lovelace","quantity":"42000000"},{"unit":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"12"}],"block":"5c571f83fe6c784d3fbc223792627ccf0eea96773100f9aedecf8b1eda4544d7","data_hash":null,"inline_datum":null,"reference_script_hash":null}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"address":{"type":"string"},"asset":{"type":"string"}}}},"/addresses/{address}/txs":{"response":{"200":{"type":"array","items":{"type":"string","description":"Hash of the transaction"},"example":["2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531","1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dde628516157f0"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"address":{"type":"string"}}}},"/addresses/{address}/transactions":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the transaction"},"tx_index":{"type":"integer","description":"Transaction index within the block"},"block_height":{"type":"integer","description":"Block height"},"block_time":{"type":"integer","description":"Block creation time in UNIX time"}},"required":["tx_hash","tx_index","block_height","block_time"]},"example":[{"tx_hash":"8788591983aa73981fc92d6cddbbe643959f5a784e84b8bee0db15823f575a5b","tx_index":6,"block_height":69,"block_time":1635505891},{"tx_hash":"52e748c4dec58b687b90b0b40d383b9fe1f24c1a833b7395cdf07dd67859f46f","tx_index":9,"block_height":4547,"block_time":1635505987},{"tx_hash":"e8073fd5318ff43eca18a852527166aa8008bee9ee9e891f585612b7e4ba700b","tx_index":0,"block_height":564654,"block_time":1834505492}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"},"from":{"type":"string"},"to":{"type":"string"}}},"params":{"type":"object","properties":{"address":{"type":"string"}}}},"/pools":{"response":{"200":{"type":"array","items":{"type":"string","description":"Bech32 encoded pool ID"},"example":["pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy","pool1hn7hlwrschqykupwwrtdfkvt2u4uaxvsgxyh6z63703p2knj288","pool1ztjyjfsh432eqetadf82uwuxklh28xc85zcphpwq6mmezavzad2"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/pools/extended":{"response":{"200":{"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"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/pools/retired":{"response":{"200":{"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}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/pools/retiring":{"response":{"200":{"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}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/pools/{pool_id}":{"response":{"200":{"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"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"pool_id":{"type":"string"}}}},"/pools/{pool_id}/history":{"response":{"200":{"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"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"pool_id":{"type":"string"}}}},"/pools/{pool_id}/metadata":{"response":{"200":{"anyOf":[{"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"]},{"type":"object"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"pool_id":{"type":"string"}}}},"/pools/{pool_id}/relays":{"response":{"200":{"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"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"pool_id":{"type":"string"}}}},"/pools/{pool_id}/delegators":{"response":{"200":{"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"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"pool_id":{"type":"string"}}}},"/pools/{pool_id}/blocks":{"response":{"200":{"type":"array","items":{"type":"string","description":"Block hashes"},"example":["d8982ca42cfe76b747cc681d35d671050a9e41e9cfe26573eb214e94fe6ff21d","026436c539e2ce84c7f77ffe669f4e4bbbb3b9c53512e5857dcba8bb0b4e9a8c","bcc8487f419b8c668a18ea2120822a05df6dfe1de1f0fac3feba88cf760f303c","86bf7b4a274e0f8ec9816171667c1b4a0cfc661dc21563f271acea9482b62df7"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"pool_id":{"type":"string"}}}},"/pools/{pool_id}/updates":{"response":{"200":{"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"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"pool_id":{"type":"string"}}}},"/pools/{pool_id}/votes":{"response":{"200":{"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"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"pool_id":{"type":"string"}}}},"/assets":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"asset":{"type":"string","format":"Concatenation of the policy_id and hex-encoded asset_name","description":"Asset identifier"},"quantity":{"type":"string","description":"Current asset quantity"}},"required":["asset","quantity"]},"example":[{"asset":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"1"},{"asset":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e75d","quantity":"100000"},{"asset":"6804edf9712d2b619edb6ac86861fe93a730693183a262b165fcc1ba1bc99cad","quantity":"18605647"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/assets/{asset}":{"response":{"200":{"type":"object","properties":{"asset":{"type":"string","example":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","description":"Hex-encoded asset full name"},"policy_id":{"type":"string","example":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a7","description":"Policy ID of the asset"},"asset_name":{"type":"string","nullable":true,"example":"6e7574636f696e","description":"Hex-encoded asset name of the asset"},"fingerprint":{"type":"string","example":"asset1pkpwyknlvul7az0xx8czhl60pyel45rpje4z8w","description":"CIP14 based user-facing fingerprint"},"quantity":{"type":"string","example":"12000","description":"Current asset quantity"},"initial_mint_tx_hash":{"type":"string","example":"6804edf9712d2b619edb6ac86861fe93a730693183a262b165fcc1ba1bc99cad","description":"ID of the initial minting transaction"},"mint_or_burn_count":{"type":"integer","example":1,"description":"Count of mint and burn transactions"},"onchain_metadata":{"type":"object","nullable":true,"additionalProperties":true,"description":"On-chain metadata which SHOULD adhere to the valid standards,\nbased on which we perform the look up and display the asset\n(best effort)\n"},"onchain_metadata_standard":{"type":"string","nullable":true,"enum":["CIP25v1","CIP25v2","CIP68v1","CIP68v2"],"description":"If on-chain metadata passes validation, we display the standard\nunder which it is valid\n"},"onchain_metadata_extra":{"type":"string","nullable":true,"description":"Arbitrary plutus data (CIP68).\n"},"metadata":{"type":"object","nullable":true,"description":"Off-chain metadata fetched from GitHub based on network.\nMainnet: https://github.com/cardano-foundation/cardano-token-registry/\nTestnet: https://github.com/input-output-hk/metadata-registry-testnet/\n","properties":{"name":{"type":"string","example":"nutcoin","description":"Asset name"},"description":{"type":"string","example":"The Nut Coin","description":"Asset description"},"ticker":{"type":"string","nullable":true,"example":"nutc"},"url":{"type":"string","nullable":true,"example":"https://www.stakenuts.com/","description":"Asset website"},"logo":{"type":"string","nullable":true,"example":"iVBORw0KGgoAAAANSUhEUgAAADAAAAAoCAYAAAC4h3lxAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QA/wD/AP+gvaeTAAAAB3RJTUUH5QITCDUPjqwFHwAAB9xJREFUWMPVWXtsU9cZ/8499/r6dZ3E9rUdO7ZDEgglFWO8KaOsJW0pCLRKrN1AqqYVkqoqrYo0ja7bpElru1WairStFKY9WzaE1E1tx+jokKqwtqFNyhKahEJJyJNgJ37E9r1+3HvO/sFR4vhx7SBtfH/F3/l93/f7ne/4PBxEKYU72dj/ZfH772v1TU+HtqbTaX8wOO01GPQpRVH7JEm+vGHDuq6z7/8jUSoHKtaBKkEUFUXdajDy1hUrmrs6zn/wWS7m7pZVjMUirKGUTnzc+e9xLcTrPPVfZzDz06Sc2lyQGEIyAPzT7Xa+dvE/3e+XLaCxoflHsVj8MAAYs74aa/WHoenwvpkZKeFy2Z5NJlOPUkqXZccFwSSrKjlyffjLH+TL6XTUGTGL/6hklD3ldIrj2M5MRmkLBMcvaRLQ1Nj88sxM/HCBfMP+eu/OYGDqe6l0WmpoqJ/88upgrU7HrQNA/cFg6MlkKiLlBtVUO40cx54BgHvLIT/HJLvdeqh/4NKxogKWN7fsCoUi7xTLxLJ4vLq6ak//wKVOrdXtttrTDMPsqJA8AAAwDErdu3VL3alTf5ma9eWCpoKhn5dKpCiqJxicPucQPVu0FHaInn35yHMcKwPAa4SQ3QCwFgDWUko3qSr5vqqSgTypuEg4Mo/zvA74/Y0rZSnZU8akSHV17k2fXfy0txjI5224kEym1s/1EUI7LBbztweHrkzkizn49LP6U6feepFSeggAQK/n04SQZ8bGrxdeQjZrbRvGzLH5hcibRqOhPplMfS1fIY5jz4xPDBdcGggho2h3z9sOLRazdG3wqp9SMgUlzGZ17SSEPsRx7J8CwfGu3PF57WhqqjfN/VxVJUxKUrIdITAXKpDJKFscosdfaFy0u+/K9aXTmXe0kAcAmA5Nng5Hbj6Tj/wCAYFAcN7uEY3GXGazMSHLqVVFapgBoMPna9yqhRAAgCTJMa3YUjZPgNFkSlWYx5eUkx+0tKx83V3rF+cVYJjruWCe133DIXqMmrNrFSDabRcWkywYmG5XFOW6aHcfb9324CoAgMmbo9MIoXkneCajiAihV/c/8eSiBSw4BxyiZxQA6m7H7FBKT2CMn2MY5jFFUX6ZO+5w2j8aHZ7YH40FByrJD5DnHGAY5uTtIA8AgBDaR4F2Yxb3WizCgmtA4ObUPSazodduqz3Suu0hf0U1cjvgdNSJ1dWWveFwdDUAtAiC2Uopdcdi8c9Zlh3GmDGl05mtAKAvo47EcdwThJCjqqpWFxALlNITomg73tff21GRAJez7iVK4WGGYfoJIQduBsbm7UrLm1ueCoUiv65kpiilw1ZbzcFoZOYoIcRTAn6eYZgXJm+Oni+Vd3YJbdyweSch9HlK6SpVVfcyDDq7Yf3m2XPBIXraKyV/a4b9UkLawbLsZgB4rwR8CyGkw13r+5fX27BckwBAEJ47oKpk8+DgUIdod7fV1vqOAMDrlZLPmqKoB+rrvXIgOP6w0WjYy3Ls5RL4bUk52bVm9fqnCk7M3CXU2ND8+MxM7BcIIftiyRYyntcdHh0bmr0wfmXl6p2SJB2KRmP3l4j7zejYUFtRAQAAgslm1Bv4nyGEDpYiIwjmjw0G/RjP866JiclNqqqWfKLq9fyZkdHBBXcnl9O71GDgD8bj0ncRQqZ8sRgzL9yYHH2pqICsOUTPLgA4CXNeZFmzWIS/YhYfjUZmvqPjuceSckrz25pS2h2cmlhbaBwhzr6kfsnL8Xhif55YYFl23Y3Jkdl7EVMoUSA4/q6qqNsBIPd11e52u45FwtG3CSH7yiEPAGC1Vt9dXGBmanDoygFLlbAjtzZCCMyC6VeaOpA1l9N7l1kwtauKaozHE28YTQaQpeR7+TqjxXheR0fHhhgt2CX1S3clEtKC16HL5djYe+niBU0CcmYA2W21/Qih5ZqDcoxlMZ24MaJJAABA87IVJ8Lh6N65Pr1B/+LIyLUfAhRZQvnM6ah7ZDHkAQB0vK6/HHxNTc2ruT5Zkldn/y5LACFk+2LIAwAwCGl6yGSt88KHXbmrBCHkqEgAz+vWLFZALJb4qNwYhFDhCSknkSwnQ4sVgDFeWg7+gQe2r1tAmkGTFQlACHWVg89nhJA9ot3dphV/eeCLp/Pw6K5IQP0S39uLFXCLwDG7zf1cKZxD9LSlUunHc/12u/2t2Vzl/rzu8zb8PZlM7bwdQgDgPK/nX2nddt+53//ht3LW2dS0fF0iLj2vquojuQFmwXRucPBKa8UCmpe1iOFwpAsAfLdJBFBKwVIlXJ2JxqKCxbwyHkvoCkAlv9/71U+7Oq+UJWDZ0hViJBL1cRynbNq0sSeeiPl6ei4NqIqq6TSmlB7X6bjuTEY5pgWfzwxGPZhMpt39/b3vzvWXFGCzulZjjM/DrauDwcAr8bjcgzGjZUuVBMH8k2uDX7wCAFDr8n2LEPI7SqmhTP6SzVbz6MDlz0/nDpT8EmOM22HOvUeWU2wp8iyLgRL6hk7Hrc2SBwC4MTlykmXZRozxn00mbVcphNA5jJmV+chr6oDd5l6jN/A/TqfSuwEAGITGMIsvGo3GTwTB3Dc2NjGSxdZYq4VIOOoNBANnKE0XPXE3brjHOTQ08k2MmVZOxzVJCbkFIQSCYEphzPaFQuGzTpfjb319PZ8UFXin/5OvrHPg/9HueAH/BSUqOuNZm4fyAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIxLTAyLTE5VDA4OjUyOjI1KzAwOjAwCmFGlgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMS0wMi0xOVQwODo1MjoyMyswMDowMBjsyxAAAAAASUVORK5CYII=","description":"Base64 encoded logo of the asset"},"decimals":{"type":"integer","nullable":true,"maximum":255,"example":6,"description":"Number of decimal places of the asset unit"}},"required":["name","description","ticker","url","logo","decimals"]}},"required":["asset","policy_id","asset_name","fingerprint","quantity","initial_mint_tx_hash","mint_or_burn_count","metadata","onchain_metadata"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"asset":{"type":"string"}}}},"/assets/{asset}/history":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the transaction containing the asset action"},"action":{"type":"string","enum":["minted","burned"],"description":"Action executed upon the asset policy"},"amount":{"type":"string","description":"Asset amount of the specific action"}},"required":["tx_hash","action","amount"]},"example":[{"tx_hash":"2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531","amount":"10","action":"minted"},{"tx_hash":"9c190bc1ac88b2ab0c05a82d7de8b71b67a9316377e865748a89d4426c0d3005","amount":"5","action":"burned"},{"tx_hash":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dde628516157f0","amount":"5","action":"burned"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"asset":{"type":"string"}}}},"/assets/{asset}/txs":{"response":{"200":{"type":"array","items":{"type":"string","description":"Hash of the transaction"},"example":["8788591983aa73981fc92d6cddbbe643959f5a784e84b8bee0db15823f575a5b","52e748c4dec58b687b90b0b40d383b9fe1f24c1a833b7395cdf07dd67859f46f","e8073fd5318ff43eca18a852527166aa8008bee9ee9e891f585612b7e4ba700b"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"asset":{"type":"string"}}}},"/assets/{asset}/transactions":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","description":"Hash of the transaction"},"tx_index":{"type":"integer","description":"Transaction index within the block"},"block_height":{"type":"integer","description":"Block height"},"block_time":{"type":"integer","example":1635505891,"description":"Block creation time in UNIX time"}},"required":["tx_hash","tx_index","block_height","block_time"]},"example":[{"tx_hash":"8788591983aa73981fc92d6cddbbe643959f5a784e84b8bee0db15823f575a5b","tx_index":6,"block_height":69,"block_time":1635505891},{"tx_hash":"52e748c4dec58b687b90b0b40d383b9fe1f24c1a833b7395cdf07dd67859f46f","tx_index":9,"block_height":4547,"block_time":1635505987},{"tx_hash":"e8073fd5318ff43eca18a852527166aa8008bee9ee9e891f585612b7e4ba700b","tx_index":0,"block_height":564654,"block_time":1834505492}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"asset":{"type":"string"}}}},"/assets/{asset}/addresses":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","description":"Address containing the specific asset"},"quantity":{"type":"string","description":"Asset quantity on the specific address"}},"required":["address","quantity"]},"example":[{"address":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz","quantity":"1"},{"address":"addr1qyhr4exrgavdcn3qhfcc9f939fzsch2re5ry9cwvcdyh4x4re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qdpvhza","quantity":"100000"},{"address":"addr1q8zup8m9ue3p98kxlxl9q8rnyan8hw3ul282tsl9s326dfj088lvedv4zckcj24arcpasr0gua4c5gq4zw2rpcpjk2lq8cmd9l","quantity":"18605647"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"asset":{"type":"string"}}}},"/assets/policy/{policy_id}":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"asset":{"type":"string","description":"Concatenation of the policy_id and hex-encoded asset_name"},"quantity":{"type":"string","description":"Current asset quantity"}},"required":["asset","quantity"]},"example":[{"asset":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e","quantity":"1"},{"asset":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a766e","quantity":"100000"},{"asset":"b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb574636f696e","quantity":"18605647"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"policy_id":{"type":"string"}}}},"/scripts":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"script_hash":{"type":"string","description":"Script hash"}},"required":["script_hash"]},"example":[{"script_hash":"13a3efd825703a352a8f71f4e2758d08c28c564e8dfcce9f77776ad1"},{"script_hash":"e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e"},{"script_hash":"a6e63c0ff05c96943d1cc30bf53112ffff0f34b45986021ca058ec54"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/scripts/{script_hash}":{"response":{"200":{"type":"object","properties":{"script_hash":{"type":"string","example":"13a3efd825703a352a8f71f4e2758d08c28c564e8dfcce9f77776ad1","description":"Script hash"},"type":{"type":"string","enum":["timelock","plutusV1","plutusV2"],"example":"plutusV1","description":"Type of the script language"},"serialised_size":{"type":"integer","nullable":true,"description":"The size of the CBOR serialised script, if a Plutus script","example":3119}},"required":["script_hash","type","serialised_size"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"script_hash":{"type":"string"}}}},"/scripts/{script_hash}/json":{"response":{"200":{"type":"object","properties":{"json":{"nullable":true}},"required":["json"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"script_hash":{"type":"string"}}}},"/scripts/{script_hash}/cbor":{"response":{"200":{"type":"object","properties":{"cbor":{"type":"string","nullable":true,"description":"CBOR contents of the `plutus` script, null for `timelocks`"}},"required":["cbor"],"example":{"cbor":"4e4d01000033222220051200120011"}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"script_hash":{"type":"string"}}}},"/scripts/{script_hash}/redeemers":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string","example":"1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0","description":"Hash of the transaction"},"tx_index":{"type":"integer","example":0,"description":"The index of the redeemer pointer in the transaction"},"purpose":{"type":"string","enum":["spend","mint","cert","reward"],"example":"spend","description":"Validation purpose"},"redeemer_data_hash":{"type":"string","example":"923918e403bf43c34b4ef6b48eb2ee04babed17320d8d1b9ff9ad086e86f44ec","description":"Datum hash of the redeemer"},"datum_hash":{"type":"string","example":"923918e403bf43c34b4ef6b48eb2ee04babed17320d8d1b9ff9ad086e86f44ec","description":"Datum hash","deprecated":true},"unit_mem":{"type":"string","example":"1700","description":"The budget in Memory to run a script"},"unit_steps":{"type":"string","example":"476468","description":"The budget in CPU steps to run a script"},"fee":{"type":"string","example":"172033","description":"The fee consumed to run the script"}},"required":["tx_hash","tx_index","purpose","redeemer_data_hash","datum_hash","unit_mem","unit_steps","fee"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"script_hash":{"type":"string"}}}},"/scripts/datum/{datum_hash}":{"response":{"200":{"type":"object","properties":{"json_value":{"type":"object","additionalProperties":true,"description":"JSON content of the datum"}},"required":["json_value"],"example":{"json_value":{"int":42}}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"datum_hash":{"type":"string"}}}},"/scripts/datum/{datum_hash}/cbor":{"response":{"200":{"type":"object","properties":{"cbor":{"type":"string","description":"CBOR serialized datum"}},"required":["cbor"],"example":{"cbor":"19a6aa"}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"datum_hash":{"type":"string"}}}},"/utils/addresses/xpub/{xpub}/{role}/{index}":{"response":{"200":{"type":"object","properties":{"xpub":{"type":"string","description":"Script hash"},"role":{"type":"integer","description":"Account role"},"index":{"type":"integer","description":"Address index"},"address":{"type":"string","description":"Derived address"}},"required":["xpub","role","index","address"],"example":[{"xpub":"d507c8f866691bd96e131334c355188b1a1d0b2fa0ab11545075aab332d77d9eb19657ad13ee581b56b0f8d744d66ca356b93d42fe176b3de007d53e9c4c4e7a","role":0,"index":0,"address":"addr1q90sqnljxky88s0jsnps48jd872p7znzwym0jpzqnax6qs5nfrlkaatu28n0qzmqh7f2cpksxhpc9jefx3wrl0a2wu8q5amen7"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"xpub":{"type":"string"},"role":{"type":"integer"},"index":{"type":"integer"}}}},"/utils/txs/evaluate":{"response":{"200":{"type":"object","additionalProperties":true},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"425":{"type":"object","properties":{"status_code":{"type":"integer","example":425},"error":{"type":"string","example":"Mempool Full"},"message":{"type":"string","example":"Mempool is full, please try resubmitting again later."}},"required":["error","message","status_code"]},"429":{"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":{"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"]}}},"/utils/txs/evaluate/utxos":{"response":{"200":{"type":"object","additionalProperties":true},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"425":{"type":"object","properties":{"status_code":{"type":"integer","example":425},"error":{"type":"string","example":"Mempool Full"},"message":{"type":"string","example":"Mempool is full, please try resubmitting again later."}},"required":["error","message","status_code"]},"429":{"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":{"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"]}}},"/ipfs/add":{"response":{"200":{"type":"object","properties":{"name":{"type":"string","example":"README.md","description":"Name of the file"},"ipfs_hash":{"type":"string","example":"QmZbHqiCxKEVX7QfijzJTkZiSi3WEVTcvANgNAWzDYgZDr","description":"IPFS hash of the file"},"size":{"type":"string","example":"125297","description":"IPFS node size in Bytes"}},"required":["name","ipfs_hash","size"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/ipfs/gateway/{IPFS_path}":{"response":{"200":{"type":"string","format":"binary"},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"IPFS_path":{"type":"string","description":"Path to the IPFS object"}}}},"/ipfs/pin/add/{IPFS_path}":{"response":{"200":{"type":"object","properties":{"ipfs_hash":{"type":"string","example":"QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8","description":"IPFS hash of the pinned object"},"state":{"type":"string","enum":["queued|pinned|unpinned|failed|gc"],"example":"queued","description":"State of the pin action"}},"required":["ipfs_hash","state"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"425":{"type":"object","properties":{"status_code":{"type":"integer","example":425},"error":{"type":"string","example":"Mempool Full"},"message":{"type":"string","example":"Mempool is full, please try resubmitting again later."}},"required":["error","message","status_code"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"IPFS_path":{"type":"string","description":"Path to the IPFS object"}}}},"/ipfs/pin/list":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"time_created":{"type":"integer","description":"Creation time of the IPFS object on our backends","example":1615551024},"time_pinned":{"type":"integer","description":"Pin time of the IPFS object on our backends","example":1615551024},"ipfs_hash":{"type":"string","description":"IPFS hash of the pinned object","example":"QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx"},"size":{"type":"string","description":"Size of the object in Bytes","example":"1615551024"},"state":{"type":"string","enum":["queued|pinned|unpinned|failed|gc"],"description":"State of the pinned object, which is `queued` when we are retriving object. If this\nis successful the state is changed to `pinned` or `failed` if not. The state `gc` means the\npinned item has been garbage collected due to account being over storage quota or after it has\nbeen moved to `unpinned` state by removing the object pin.\n","example":"pinned"}},"required":["time_created","time_pinned","ipfs_hash","size","state"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}}},"/ipfs/pin/list/{IPFS_path}":{"response":{"200":{"type":"object","properties":{"time_created":{"type":"integer","description":"Time of the creation of the IPFS object on our backends","example":1615551024},"time_pinned":{"type":"integer","description":"Time of the pin of the IPFS object on our backends","example":1615551024},"ipfs_hash":{"type":"string","description":"IPFS hash of the pinned object","example":"QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx"},"size":{"type":"string","description":"Size of the object in Bytes","example":"1615551024"},"state":{"type":"string","enum":["queued|pinned|unpinned|failed|gc"],"description":"State of the pinned object. We define 5 states: `queued`, `pinned`, `unpinned`, `failed`, `gc`.\nWhen the object is pending retrieval (i.e. after `/ipfs/pin/add/{IPFS_path}`), the state is `queued`.\nIf the object is already successfully retrieved, state is changed to `pinned` or `failed` otherwise.\nWhen object is unpinned (i.e. after `/ipfs/pin/remove/{IPFS_path}`) it is marked for garbage collection.\nState `gc` means that a previously `unpinned` item has been garbage collected due to account being over storage quota.\n","example":"pinned"}},"required":["time_created","time_pinned","ipfs_hash","size","state"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"IPFS_path":{"type":"string","description":"The path to the IPFS object"}}}},"/ipfs/pin/remove/{IPFS_path}":{"response":{"200":{"type":"object","properties":{"ipfs_hash":{"type":"string","example":"QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8","description":"IPFS hash of the pinned object"},"state":{"type":"string","enum":["queued|pinned|unpinned|failed|gc"],"example":"unpinned","description":"State of the pin action"}},"required":["ipfs_hash","state"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"IPFS_path":{"type":"string","description":"The path to the IPFS object"}}}},"/metrics":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"time":{"type":"integer","description":"Starting time of the call count interval (ends midnight UTC) in UNIX time"},"calls":{"type":"integer","description":"Sum of all calls for a particular day"}},"required":["time","calls"]},"example":[{"time":1612543884,"calls":42},{"time":1614523884,"calls":6942}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/metrics/endpoints":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"time":{"type":"integer","description":"Starting time of the call count interval (ends midnight UTC) in UNIX time"},"calls":{"type":"integer","description":"Sum of all calls for a particular day and endpoint"},"endpoint":{"type":"string","description":"Endpoint parent name"}},"required":["time","calls","endpoint"]},"example":[{"time":1612543814,"calls":182,"endpoint":"block"},{"time":1612543814,"calls":42,"endpoint":"epoch"},{"time":1612543812,"calls":775,"endpoint":"block"},{"time":1612523884,"calls":4,"endpoint":"epoch"},{"time":1612553884,"calls":89794,"endpoint":"block"}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/network":{"response":{"200":{"type":"object","properties":{"supply":{"type":"object","properties":{"max":{"type":"string","description":"Maximum supply in Lovelaces","example":"45000000000000000"},"total":{"type":"string","description":"Current total (max supply - reserves) supply in Lovelaces","example":"32890715183299160"},"circulating":{"type":"string","description":"Current circulating (UTXOs + withdrawables) supply in Lovelaces","example":"32412601976210393"},"locked":{"type":"string","description":"Current supply locked by scripts in Lovelaces","example":"125006953355"},"treasury":{"type":"string","description":"Current supply locked in treasury","example":"98635632000000"},"reserves":{"type":"string","description":"Current supply locked in reserves","example":"46635632000000"}},"required":["max","total","circulating","locked","treasury","reserves"]},"stake":{"type":"object","properties":{"live":{"type":"string","example":"23204950463991654","description":"Current live stake in Lovelaces"},"active":{"type":"string","description":"Current active stake in Lovelaces","example":"22210233523456321"}},"required":["live","active"]}},"required":["supply","stake"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}}},"/network/eras":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"start":{"type":"object","description":"Start of the blockchain era,\nrelative to the start of the network\n","properties":{"time":{"type":"number","description":"Time in seconds relative to the start time of the network"},"slot":{"type":"integer","description":"Absolute slot number"},"epoch":{"type":"integer","description":"Epoch number"}},"required":["time","slot","epoch"]},"end":{"type":"object","description":"End of the blockchain era,\nrelative to the start of the network\n","properties":{"time":{"type":"number","description":"Time in seconds relative to the start time of the network"},"slot":{"type":"integer","description":"Absolute slot number"},"epoch":{"type":"integer","description":"Epoch number"}},"required":["time","slot","epoch"]},"parameters":{"type":"object","description":"Era parameters","properties":{"epoch_length":{"type":"integer","description":"Epoch length in number of slots"},"slot_length":{"type":"number","description":"Slot length in seconds"},"safe_zone":{"type":"integer","description":"Zone in which it is guaranteed that no hard fork can take place"}},"required":["epoch_length","slot_length","safe_zone"]}},"required":["start","end","parameters"]},"example":[{"start":{"time":0,"slot":0,"epoch":0},"end":{"time":89856000,"slot":4492800,"epoch":208},"parameters":{"epoch_length":21600,"slot_length":20,"safe_zone":4320}},{"start":{"time":89856000,"slot":4492800,"epoch":208},"end":{"time":101952000,"slot":16588800,"epoch":236},"parameters":{"epoch_length":432000,"slot_length":1,"safe_zone":129600}}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"425":{"type":"object","properties":{"status_code":{"type":"integer","example":425},"error":{"type":"string","example":"Mempool Full"},"message":{"type":"string","example":"Mempool is full, please try resubmitting again later."}},"required":["error","message","status_code"]},"429":{"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":{"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"]}}},"/nutlink/{address}":{"response":{"200":{"type":"object","properties":{"address":{"type":"string","description":"Bech32 encoded address","example":"addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz"},"metadata_url":{"type":"string","description":"URL of the specific metadata file","example":"https://nut.link/metadata.json"},"metadata_hash":{"type":"string","description":"Hash of the metadata file","example":"6bf124f217d0e5a0a8adb1dbd8540e1334280d49ab861127868339f43b3948af"},"metadata":{"type":"object","nullable":true,"description":"The cached metadata of the `metadata_url` file.","additionalProperties":true}},"required":["address","metadata_url","metadata_hash","metadata"]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"params":{"type":"object","properties":{"address":{"type":"string","description":"Address of a metadata oracle"}}}},"/nutlink/{address}/tickers":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Name of the ticker"},"count":{"type":"integer","description":"Number of ticker records"},"latest_block":{"type":"integer","description":"Block height of the latest record"}},"required":["name","count","latest_block"]},"example":[{"name":"ADAUSD","count":1980038,"latest_block":2657092},{"name":"ADAEUR","count":1980038,"latest_block":2657092},{"name":"ADABTC","count":1980038,"latest_block":2657092}]},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"address":{"type":"string","description":"Address of a metadata oracle"}}}},"/nutlink/{address}/tickers/{ticker}":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"tx_hash":{"type":"string"},"block_height":{"type":"integer"},"tx_index":{"type":"integer"},"payload":{}},"required":["tx_hash","tx_index","block_height","payload"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"address":{"type":"string","description":"Address of a metadata oracle"},"ticker":{"type":"string","description":"Ticker for the pool record"}}}},"/nutlink/tickers/{ticker}":{"response":{"200":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","description":"Address of a metadata oracle"},"tx_hash":{"type":"string","description":"Hash of the transaction"},"block_height":{"type":"integer","description":"Block height of the record"},"tx_index":{"type":"integer","description":"Transaction index within the block"},"payload":{}},"required":["address","tx_hash","block_height","tx_index","payload"]}},"400":{"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"]},"403":{"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":{"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"]},"418":{"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"]},"429":{"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":{"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"]}},"querystring":{"type":"object","properties":{"count":{"type":"integer","minimum":1,"maximum":100,"default":100},"page":{"type":"integer","minimum":1,"maximum":21474836,"default":1},"order":{"type":"string","enum":["asc","desc"],"default":"asc"}}},"params":{"type":"object","properties":{"ticker":{"type":"string","description":"Ticker for the pool record"}}}},"/mithril/":{"response":{"200":{"description":"Represents general information about Aggregator public information and signing capabilities","type":"object","additionalProperties":false,"required":["open_api_version","documentation_url","capabilities"],"properties":{"open_api_version":{"description":"Open API version","type":"string","format":"byte"},"documentation_url":{"description":"Mithril documentation","type":"string","format":"byte"},"capabilities":{"description":"Capabilities of the aggregator","type":"object","additionalProperties":false,"required":["signed_entity_types"],"properties":{"signed_entity_types":{"description":"Signed entity types that are signed by the aggregator","type":"array","minItems":1,"items":{"description":"Signed entity types that can be signed","type":"string","enum":["MithrilStakeDistribution","CardanoStakeDistribution","CardanoImmutableFilesFull","CardanoTransactions"]}},"cardano_transactions_prover":{"description":"Cardano transactions prover capabilities","type":"object","additionalProperties":false,"required":["max_hashes_allowed_by_request"],"properties":{"max_hashes_allowed_by_request":{"description":"Maximum number of hashes allowed for a single request","type":"integer","format":"int64"}}}}}},"example":{"open_api_version":"0.1.17","documentation_url":"https://mithril.network","capabilities":{"signed_entity_types":["MithrilStakeDistribution","CardanoImmutableFilesFull","CardanoTransactions"],"cardano_transactions_prover":{"max_hashes_allowed_by_request":100}}}},"default":{"$ref":"#/components/schemas/Error"}}},"/mithril/epoch-settings":{"response":{"200":{"description":"Epoch settings","type":"object","additionalProperties":false,"required":["epoch","protocol","next_protocol"],"properties":{"epoch":{"$ref":"#/components/schemas/Epoch"},"protocol":{"$ref":"#/components/schemas/ProtocolParameters"},"next_protocol":{"$ref":"#/components/schemas/ProtocolParameters"}},"example":{"epoch":329,"protocol":{"k":857,"m":6172,"phi_f":0.2},"next_protocol":{"k":2422,"m":20973,"phi_f":0.2}}},"default":{"$ref":"#/components/schemas/Error"}}},"/mithril/certificate-pending":{"response":{"200":{"description":"CertificatePendingMessage represents all the information related to the certificate currently expecting to receive quorum of single signatures","type":"object","additionalProperties":false,"required":["epoch","entity_type","protocol","next_protocol","signers","next_signers"],"properties":{"epoch":{"$ref":"#/components/schemas/Epoch"},"beacon":{"deprecated":true,"allOf":[{"$ref":"#/components/schemas/CardanoDbBeacon"}]},"entity_type":{"$ref":"#/components/schemas/SignedEntityType"},"protocol":{"$ref":"#/components/schemas/ProtocolParameters"},"next_protocol":{"$ref":"#/components/schemas/ProtocolParameters"},"signers":{"type":"array","items":{"$ref":"#/components/schemas/Signer"}},"next_signers":{"type":"array","items":{"$ref":"#/components/schemas/Signer"}}},"example":{"epoch":329,"beacon":{"network":"mainnet","epoch":329,"immutable_file_number":7060000},"entity_type":{"MithrilStakeDistribution":246},"protocol":{"k":857,"m":6172,"phi_f":0.2},"next_protocol":{"k":2422,"m":20973,"phi_f":0.2},"signers":[{"party_id":"1234567890","verification_key":"7b12766b223a5c342b39302c32392c39392c39382c3131313138342c32252c32352c31353","verification_key_signature":"7b5473693727369676d61223a7b227369676d6d61223a7b261223a9b227369676d61213a","operational_certificate":"5b73136372c38302c37342c3136362c313535b5b3232352c3230332c3235352c313030262c38322c39382c32c39332c3138342c3135362c3136362c32312c3131312c3232312c36332c3137372c3232332c3232332c31392c3537","kes_period":123},{"party_id":"2345678900","verification_key":"7b392c39392c13131312766b223a5c39382c313342b39302c252c32352c31353328342c32","verification_key_signature":"2c33302c3133312c3138322c34362c3133352c372c3139302c3235322c35352c32322c39","operational_certificate":"3231342c3137372c37312c3232352c3233332c3135335d2c322c3139322c5b3133352c34312c3230332c3131332c3c33352c3234302c3230392c312c32392c3233332c33342c3138382c3134312c3130342c3234382c3231392c3","kes_period":456}],"next_signers":[{"party_id":"3456789000","verification_key":"7b22766b223a5b3133382c32392c3137332c3134342c36332c3233352c39372c3138302c3","verification_key_signature":"7b227369676d61223a7b227369676d61223a7b227369676d61223a7b227369676d612239","operational_certificate":"5b5b5b3232352c3230332c3235352c3130302c3136372c38302c37342c3136362c3135362c38322c39382c3232312c36332c3137372c3232332c3232332c31392c35372c39332c312c35302c3133392c3233342c3137332c32352","kes_period":789},{"party_id":"4567890000","verification_key":"34302c3132332c3139302c3134352c3132342c35342c3133302c37302c3136332c3139332","verification_key_signature":"302c3230312c38362c3139312c36302c3234352c3138332c3134342c3139392c3130335f","operational_certificate":"2c38382c3138372c3233332c34302c37322c31362c36365d2c312c3132332c5b31362c3136392c3134312c3138332c32322c3137342c3131312c33322c36342c35322c2c3232382c37392c3137352c32395312c3838282c323030","kes_period":876}]}},"default":{"$ref":"#/components/schemas/Error"}}},"/mithril/certificates":{"response":{"200":{"description":"CertificateListMessage represents a list of Mithril certificates","type":"array","items":{"description":"CertificateListItemMessage represents an item of a list of Mithril certificates","type":"object","additionalProperties":false,"required":["hash","previous_hash","epoch","signed_entity_type","metadata","protocol_message","signed_message","aggregate_verification_key"],"properties":{"hash":{"description":"Hash of the current certificate","type":"string","format":"bytes"},"previous_hash":{"description":"Hash of the previous certificate","type":"string","format":"bytes"},"epoch":{"$ref":"#/components/schemas/Epoch"},"beacon":{"deprecated":true,"allOf":[{"$ref":"#/components/schemas/CardanoDbBeacon"}]},"signed_entity_type":{"$ref":"#/components/schemas/SignedEntityType"},"metadata":{"$ref":"#/components/schemas/CertificateListItemMessageMetadata"},"protocol_message":{"$ref":"#/components/schemas/ProtocolMessage"},"signed_message":{"description":"Hash of the protocol message that is signed by the signer participants","type":"string","format":"bytes"},"aggregate_verification_key":{"description":"Aggregate verification key used to verify the multi signature","type":"string","format":"bytes"}},"example":{"hash":"9dc998101590f733f7a50e7c03b5b336e69a751cc02d811395d49618db3ba3d7","previous_hash":"aa2ddfb87a17103bdf15bfb21a2941b3f3223a3c8d710910496c392b14f8c403","epoch":32,"beacon":{"network":"mainnet","epoch":329,"immutable_file_number":7060000},"signed_entity_type":{"MithrilStakeDistribution":246},"metadata":{"network":"mainnet","version":"0.1.0","parameters":{"k":5,"m":100,"phi_f":0.65},"initiated_at":"2022-07-17T18:51:23.192811338Z","sealed_at":"2022-07-17T18:51:35.830832580Z","total_signers":3},"protocol_message":{"message_parts":{"snapshot_digest":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","next_aggregate_verification_key":"b132362c3232352c36392c31373133352c31323235392c3235332c3233342c34226d745f636f6d6d69746d656e74223a7b22726f6f74223a5b33382c3382c3138322c3231322c2c363"}},"signed_message":"07ed7c9e128744c1a4797b7eb34c54823cc7a21fc95c19876122ab4bb0fe796d6bba2bc","aggregate_verification_key":"7b232392c3130342c34392c35312c3130332c3136352c37364223a7b22726f6f74223a5b3137392c3135312c3135382c37332c37372c2c3135392c3226d745f636f6d6d69746d656e7"}},"example":[{"hash":"9dc998101590f733f7a50e7c03b5b336e69a751cc02d811395d49618db3ba3d7","previous_hash":"aa2ddfb87a17103bdf15bfb21a2941b3f3223a3c8d710910496c392b14f8c403","epoch":329,"beacon":{"network":"mainnet","epoch":329,"immutable_file_number":7060000},"signed_entity_type":{"MithrilStakeDistribution":246},"metadata":{"network":"mainnet","version":"0.1.0","parameters":{"k":5,"m":100,"phi_f":0.65},"initiated_at":"2022-07-17T18:51:23.192811338Z","sealed_at":"2022-07-17T18:51:35.830832580Z","total_signers":3},"protocol_message":{"message_parts":{"snapshot_digest":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","next_aggregate_verification_key":"b132362c3232352c36392c31373133352c31323235392c3235332c3233342c34226d745f636f6d6d69746d656e74223a7b22726f6f74223a5b33382c3382c3138322c3231322c2c363"}},"signed_message":"07ed7c9e128744c1a4797b7eb34c54823cc7a21fc95c19876122ab4bb0fe796d6bba2bc","aggregate_verification_key":"7b232392c3130342c34392c35312c3130332c3136352c37364223a7b22726f6f74223a5b3137392c3135312c3135382c37332c37372c2c3135392c3226d745f636f6d6d69746d656e7"}]},"default":{"$ref":"#/components/schemas/Error"}}},"/mithril/certificate/{certificate_hash}":{"response":{"200":{"description":"Certificate represents a Mithril certificate embedding a Mithril STM multi signature","type":"object","additionalProperties":false,"required":["hash","previous_hash","epoch","signed_entity_type","metadata","protocol_message","signed_message","aggregate_verification_key","multi_signature","genesis_signature"],"properties":{"hash":{"description":"Hash of the current certificate","type":"string","format":"bytes"},"previous_hash":{"description":"Hash of the previous certificate","type":"string","format":"bytes"},"epoch":{"$ref":"#/components/schemas/Epoch"},"beacon":{"deprecated":true,"allOf":[{"$ref":"#/components/schemas/CardanoDbBeacon"}]},"signed_entity_type":{"$ref":"#/components/schemas/SignedEntityType"},"metadata":{"$ref":"#/components/schemas/CertificateMetadata"},"protocol_message":{"$ref":"#/components/schemas/ProtocolMessage"},"signed_message":{"description":"Hash of the protocol message that is signed by the signer participants","type":"string","format":"bytes"},"aggregate_verification_key":{"description":"Aggregate verification key used to verify the multi signature","type":"string","format":"bytes"},"multi_signature":{"description":"STM multi signature created from a quorum of single signatures from the signers","type":"string","format":"bytes"},"genesis_signature":{"description":"Genesis signature created to bootstrap the certificate chain with the Cardano Genesis Keys","type":"string","format":"bytes"}},"example":{"hash":"9dc998101590f733f7a50e7c03b5b336e69a751cc02d811395d49618db3ba3d7","previous_hash":"aa2ddfb87a17103bdf15bfb21a2941b3f3223a3c8d710910496c392b14f8c403","epoch":329,"beacon":{"network":"mainnet","epoch":329,"immutable_file_number":7060000},"signed_entity_type":{"MithrilStakeDistribution":246},"metadata":{"network":"mainnet","version":"0.1.0","parameters":{"k":5,"m":100,"phi_f":0.65},"initiated_at":"2022-07-17T18:51:23.192811338Z","sealed_at":"2022-07-17T18:51:35.830832580Z","signers":[{"party_id":"1234567890","verification_key":"7b12766b223a5c342b39302c32392c39392c39382c3131313138342c32252c32352c31353","verification_key_signature":"7b5473693727369676d61223a7b227369676d6d61223a7b261223a9b227369676d61213a","operational_certificate":"5b73136372c38302c37342c3136362c313535b5b3232352c3230332c3235352c313030262c38322c39382c32c39332c3138342c3135362c3136362c32312c3131312c3232312c36332c3137372c3232332c3232332c31392c3537","kes_period":123,"stake":1234},{"party_id":"2345678900","verification_key":"7b392c39392c13131312766b223a5c39382c313342b39302c252c32352c31353328342c32","verification_key_signature":"2c33302c3133312c3138322c34362c3133352c372c3139302c3235322c35352c32322c39","operational_certificate":"3231342c3137372c37312c3232352c3233332c3135335d2c322c3139322c5b3133352c34312c3230332c3131332c3c33352c3234302c3230392c312c32392c3233332c33342c3138382c3134312c3130342c3234382c3231392c3","kes_period":456,"stake":2345}]},"protocol_message":{"message_parts":{"snapshot_digest":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","next_aggregate_verification_key":"b132362c3232352c36392c31373133352c31323235392c3235332c3233342c34226d745f636f6d6d69746d656e74223a7b22726f6f74223a5b33382c3382c3138322c3231322c2c363"}},"signed_message":"07ed7c9e128744c1a4797b7eb34c54823cc7a21fc95c19876122ab4bb0fe796d6bba2bc","aggregate_verification_key":"7b232392c3130342c34392c35312c3130332c3136352c37364223a7b22726f6f74223a5b3137392c3135312c3135382c37332c37372c2c3135392c3226d745f636f6d6d69746d656e7","multi_signature":"7bc3139392c3135392c3235342c3231392c3133362c3132392c38342c353227369676e617475726573223a5b5b7b227369676d61223a5b3135312c362c3131222c33382c3135382c3137312c3137312c3234392c32342c3232382c3133302c38352c32362c38382c3135382c32303c323337322c323339362c32342c313530342c313532302c3135323737302c323830372c323831392c323834302c323834342c323836302c323837322c323838362c323839312c323839382c3239333533332c343538352c343632342c343634322c343634372c343636362c334312c31343636382c31343637352c31343639352c31343639392c31343730312c31343730352c31343733302c31343733382c31343733392c31343734362c31343735342c31343736312c31343738362c31343739352c31343739362c31343832362c31343835392c31343836302c31343836322c31343837312c31343837322c31343837392c31343838392c31343839332c31343839372c31343839392c31343932362c31343937372c31343939312c31353032332c31353033382c31353034342c31353036332c31353039312c31353039322c31353039382c31353131392c31353132312c31353136362c31353139362c31353230322c31353231302c31353231392c31353233392c31353234362c31353235322c31353237352c31353238312c31353334372c31353335372c31353338372c31353431372c31353434352c31353434382c31353435332c31353435342c31353530382c31353534352c31353536302c31353537302c31353538392c31353631302c31353631312c31353631322c31353632382c31353633302c31353633392c31353636302c31353636312c31353637392c31353731372c31353731392c31353732362c31353733382c31353734382c31353735392c31353736312c31353739312c31353830312c31353830332c31353831342c31353831392c31353832372c31353832392c31353834392c31353835332c31353835372c31353835392c31353836372c31353839362c31353930312c31353930372c31353931302c31353931332c31353931352c31353935352c31353937362c31353938372c31363031372c31363036332c31363131382c31363132382c31363135352c31363136372c31363230312c31363230362c31363231392c31363232312c31363232392c31363233342c31363234362c31363333302c31363335302c31363336362c31353739312c31353830312c31353830332c31353831342c31353831392c31353832372c31353832392c31353834392c31353835332c31353835372c31353835392c31353836372c31353839362c31353930312c31353930372c31353931302c31353931332c31353931352c31353935352c31353937362c31353938372c31363031372c31363036332c31363131382c31363132382c31363135352c31363136372c31363230312c31363230362c31363231392c31363232312c31363232392c31363233342c31363234362c31363333302c31363335302c31363336362c31363339302c31363430342c31363435342c31363437392c31363533302c31363533382c31363534372c31363535322c31363630382c31363631312c31363631382c31363633312c31363635382c31363637312c31363639352c31363730302c31363731332c31363732372c31363733312c31363733322c31363734322c31363736302c31363737342c31363739322c31363739362c31363739382c31363830342c31363831302c31363834302c31363834382c31363835392c31363836332c31363838362c31363838382c31363930302c31363932372c31363932382c31363932392c31363933372c31363934302c31363934362c31363935302c31363936312c31363938312c31373033302c31373035332c31373036322c31373038322c31373130312c31373130332c31373130352c31373130362c31373132302c31373132312c31373133322c31373133332c31373135312c31373135392c31373138332c31373232302c31373239322c31373331312c31373331332c31373332362c31373333362c31373334352c31373334392c31373335372c31373337352c31373338332c31373338352c31373430302c31373430362c31373431342c31373432322c31373434362c31373435312c31373436362c31373530322c31373531392c31373535382c31373536352c31373537332c31373538302c31373630362c31373632332c31373636382c31373639352c31373732392c31373733312c31373733352c31373733372c31373734342c31373734352c31373734372c31373736382c31373737302c31373737332c31373737352c31373739362c31373830342c31373831302c31373831332c31373832332c31373834352c31373834362c31373838382c31373839342c31373930352c31373931302c31373935372c31373936372c31373938372c31373939342c31383030322c31383030332c31383031312c31383032302c31383032392c31383034362c31383036382c31383037322c31383131372c31383133372c31383134302c31383134332c31383136322c31383137302c31383137342c31383138342c31383138392c31383139392c31383230382c31383232302c31383235312c31383235332c31383237392c31383238312c31383239312c31383239382c31383330312c31383331362c31383332382c31383334312c31383336332c31383337342c31383338352c31383338372c31383434392c31383437362c31383438322c31383439382c31383530352c31383530362c31383531342c31383532362c31383532382c31383533382c31383535322c31383535382c31383537342c31383538342c31383539322c31383631392c32c3832392c3834382c3835312c3835342c3836352c3838332c3838342c3839332c3839372c3930392c3937312c3938362c3939352c313032312c313032362c313035312c313036322c313036382c313038322c313038332c313038352c313133312c313134392c313135392c313136342c313137322c313137332c313231372c313231382c313234372c313239332c313330382c313331352c313333302c313335302c313336342c313337392c313430302c313430362c313432372c313434392c313436342c313436362c313436372c313437362c313530312c313530342c313532302c313532352c313533322c313534322c313536372c313537362c313538322c313538332c313632362c313633322c313633332c313634312c313635322c313730302c313732392c313831322c313832302c313834322c313835392c313837312c313930352c313930372c313931322c313931332c313935362c313936302c313937342c323030302c323031302c323033322c323033372c323037372c323038372c323039382c323130372c323131382c323133322c323133382c323135312c323230332c323230392c323231312c323233372c323234382c323235332c323237372c323238302c323330382c323331342c323333322c323334332c323334382c373535362c373535382c373537372c373630392c373631382c373633392c373635342c373635352c373731392c373732322c373732332c373830342c373832372c373833362c373833372c373835302c373835332c373835362c373837382c373839362c373931392c373933312c373933332c373934332c373934362c373935342c383030302c383031302c383031342c383033302c383034332c383035352c383036342c383036382c383037362c383132322c383134332c383134382c383136362c383139302c383234372c383235312c383236302c383237352c383238312c383238352c383330362c383332352c383337332c383337372c383338372c383339372c383339382c383431362c383433312c383436362c383436372c383437372c383438332c383438392c383439322c383439382c383531372c383533302c383533352c383534302c383536392c383539392c383631322c383634322c383635322c383637302c383730312c383733342c383738382c383739312c383832372c383834352c383835312c383836312c383837362c383932392c383933372c383935322c383937362c393031362c393032302c393032372c393032392c393034382c393036302c393038392c393130332c393130362c393131312c393131322c393131382c393133342c393134392c393137372c393137382c393231312c393231322c393232392c393234332c393236312c393236322c393238362c393239372c393331382c393333392c393338312c393339352c393339362c393431372c393433302c393436332c393439322c393532342c393633332c393633352c393634322c393639322c393731382c393732342c393732362c393733352c393735362c393738302c393738322c393739332c393831332c393837312c393839382c393931382c393932332c393932362c393934312c393934392c393935322c393935382c393936312c393936342c393937352c31303030362c31303032362c31303032392c31303035382c31303037342c31303037392c31303131302c31303132332c31303133392c31303134382c31303135362c31303136392c31303230362c31303235352c31303235372c31303235382c31303237332c31303237342c31303239312c31303239332c31303239342c31303330352c31303334312c31303334332c31303338322c31303338332c31303430342c31303431312c31303431332c31303432302c31303434322c31303434342c31303435372c31303436302c31303437322c31303438372c31303532322c31303535312c31303536342c31303636352c31303638352c31303730302c31303730362c31303733322c31303734332c31303737322c31303831352c31303833332c31303834332c31303836362c31303839322c31303930382c31303938382c31313033362c31313034312c31313037312c31313038322c31313039322c31313039392c31313130392c31313131352c31313134362c31313139332c31313230302c31313232382c31313232392c31313235342c31313236372c31313238302c31313239332c31313239352c31313331312c31313331382c31313332322c31313334302c31313334342c31313335322c31313335342c31313335352c31313335362c31313338352c31313430322c31313431332c31313433342c31313434322c31313436382c31313437322c31313437372c31313439362c31313439392c31313530362c31313531302c31313532342c31313532372c31313534342c31313538312c31313539322c31313630342c31313633352c31313635382c31313733332c31313733362c31313735342c31313739342c31313831332c31313831392c31313832342c31313832372c31313836392c31313837312c31313931342c31313937302c31313937342c31323031362c31323031392c31323034302c31323034342c31323035342c31323036382c31323037302c31323037372c31323039392c31323130342c31323133302c31323133392c31323135302c31323135392c31323136302c31323137352c31323230302c31323230322c31323232382c31323233392c31323330352c31323336382c31323337352c31323337392c31323338392c31323430372c31323431302c31323433322c31323434302c31323434312c31323437352c31323530362c31323531322c31323531332c31323531372c31323532312c31323533302c31323538302c31323633362c31323636392c31323637322c31323637362c31323637372c31323638332c31323638372c31323730352c31323732342c31323734362c31323734382c31323737362c31323739392c31323838352c31323839392c31323930372c31323933302c31323933322c31323935382c31323939332c31333030332c31333033302c31333036312c31333038302c31333038332c31333130352c31333132372c31333133312c31333136392c31333138312c31333138322c31333138352c3133323231231333236352c31333238362c31333234322cc31333239342c3131333438362c1e233332362c31333333392c31333336352c31333337332c31333338352c31333339392c31333433332c31333435312c31333437382c3","genesis_signature":""}},"default":{"$ref":"#/components/schemas/Error"}},"params":{"type":"object","properties":{"certificate_hash":{"type":"string"}}}},"/mithril/artifact/snapshots":{"response":{"200":{"description":"SnapshotListMessage represents a list of snapshots","type":"array","items":{"description":"Snapshot represents a snapshot file and its metadata","type":"object","additionalProperties":false,"required":["digest","beacon","certificate_hash","size","created_at","locations"],"properties":{"digest":{"description":"Digest that is signed by the signer participants","type":"string","format":"bytes"},"beacon":{"$ref":"#/components/schemas/CardanoDbBeacon"},"certificate_hash":{"description":"Hash of the associated certificate","type":"string","format":"bytes"},"size":{"description":"Size of the snapshot file in Bytes","type":"integer","format":"int64"},"created_at":{"description":"Date and time at which the snapshot was created","type":"string","format":"date-time"},"locations":{"description":"Locations where the binary content of the snapshot can be retrieved","type":"array","items":{"type":"string"}},"compression_algorithm":{"description":"Compression algorithm for the snapshot archive","type":"string"},"cardano_node_version":{"description":"Version of the Cardano node which is used to create snapshot archives.","type":"string"}},"example":{"digest":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","beacon":{"network":"mainnet","epoch":329,"immutable_file_number":7060000},"certificate_hash":"7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572","size":26058531636,"created_at":"2022-07-21T17:32:28Z","locations":["https://mithril-cdn-us.iohk.io/snapshot/6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","https://mithril-cdn-eu.iohk.io/snapshot/6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","magnet:?xt=urn:sha1:YNCKHTQCWBTRNJIV4WNAE52SJUQCZO5C","ipfs:QmPXME1oRtoT627YKaDPDQ3PwA8tdP9rWuAAweLzqSwAWT"],"compression_algorithm":"zstandard","cardano_node_version":"1.0.0"}},"example":[{"digest":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","beacon":{"network":"mainnet","epoch":329,"immutable_file_number":7060000},"certificate_hash":"7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572","size":26058531636,"created_at":"2022-07-21T17:32:28Z","locations":["https://mithril-cdn-us.iohk.io/snapshot/6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","https://mithril-cdn-eu.iohk.io/snapshot/6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","magnet:?xt=urn:sha1:YNCKHTQCWBTRNJIV4WNAE52SJUQCZO5C","ipfs:QmPXME1oRtoT627YKaDPDQ3PwA8tdP9rWuAAweLzqSwAWT"]}]},"default":{"$ref":"#/components/schemas/Error"}}},"/mithril/artifact/snapshot/{digest}":{"response":{"200":{"description":"This message represents a snapshot file and its metadata.","allOf":[{"$ref":"#/components/schemas/Snapshot"}],"example":{"digest":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","beacon":{"network":"mainnet","epoch":329,"immutable_file_number":7060000},"certificate_hash":"7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572","size":26058531636,"created_at":"2022-07-21T17:32:28Z","locations":["https://mithril-cdn-us.iohk.io/snapshot/6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","https://mithril-cdn-eu.iohk.io/snapshot/6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","magnet:?xt=urn:sha1:YNCKHTQCWBTRNJIV4WNAE52SJUQCZO5C","ipfs:QmPXME1oRtoT627YKaDPDQ3PwA8tdP9rWuAAweLzqSwAWT"],"compression_algorithm":"zstandard","cardano_node_version":"1.0.0"}},"default":{"$ref":"#/components/schemas/Error"}},"params":{"type":"object","properties":{"digest":{"type":"string"}}}},"/mithril/artifact/snapshot/{digest}/download":{"response":{"200":{"type":"string","format":"binary"},"default":{"$ref":"#/components/schemas/Error"}},"params":{"type":"object","properties":{"digest":{"type":"string"}}}},"/mithril/artifact/mithril-stake-distributions":{"response":{"200":{"description":"MithrilStakeDistributionListMessage represents a list of Mithril stake distribution","type":"array","items":{"type":"object","additionalProperties":false,"required":["epoch","hash","created_at"],"properties":{"epoch":{"$ref":"#/components/schemas/Epoch"},"hash":{"description":"Hash of the Mithril stake distribution","type":"string","format":"bytes"},"certificate_hash":{"description":"Hash of the associated certificate","type":"string","format":"bytes"},"created_at":{"description":"Date and time at which the Mithril stake distribution was created","type":"string","format":"date-time,"}},"example":{"epoch":123,"hash":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","certificate_hash":"7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572","created_at":"2022-06-14T10:52:31Z"}}},"default":{"$ref":"#/components/schemas/Error"}}},"/mithril/artifact/mithril-stake-distribution/{hash}":{"response":{"200":{"description":"This message represents a Mithril stake distribution.","type":"object","additionalProperties":false,"required":["epoch","hash","signers","created_at","protocol_parameters"],"properties":{"epoch":{"$ref":"#/components/schemas/Epoch"},"hash":{"description":"Hash of the Mithril stake distribution","type":"string","format":"bytes"},"certificate_hash":{"description":"Hash of the associated certificate","type":"string","format":"bytes"},"signers":{"description":"The list of the signers with their stakes and verification keys","type":"array","items":{"$ref":"#/components/schemas/SignerWithStake"}},"created_at":{"description":"Date and time of the entity creation","type":"string","format":"date-time,"},"protocol_parameters":{"$ref":"#/components/schemas/ProtocolParameters"}},"example":{"epoch":123,"hash":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","certificate_hash":"7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572","signers":[{"party_id":"1234567890","verification_key":"7b12766b223a5c342b39302c32392c39392c39382c3131313138342c32252c32352c31353","verification_key_signature":"7b5473693727369676d61223a7b227369676d6d61223a7b261223a9b227369676d61213a","operational_certificate":"5b73136372c38302c37342c3136362c313535b5b3232352c3230332c3235352c313030262c38322c39382c32c39332c3138342c3135362c3136362c32312c3131312c3232312c36332c3137372c3232332c3232332c31392c3537","kes_period":123,"stake":1234},{"party_id":"2345678900","verification_key":"7b392c39392c13131312766b223a5c39382c313342b39302c252c32352c31353328342c32","verification_key_signature":"2c33302c3133312c3138322c34362c3133352c372c3139302c3235322c35352c32322c39","operational_certificate":"3231342c3137372c37312c3232352c3233332c3135335d2c322c3139322c5b3133352c34312c3230332c3131332c3c33352c3234302c3230392c312c32392c3233332c33342c3138382c3134312c3130342c3234382c3231392c3","kes_period":456,"stake":2345}],"created_at":"2022-06-14T10:52:31Z","protocol_parameters":{"k":5,"m":100,"phi_f":0.65}}},"default":{"$ref":"#/components/schemas/Error"}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/mithril/artifact/cardano-transactions":{"response":{"200":{"description":"CardanoTransactionSnapshotListMessage represents a list of Cardano transactions set snapshots","type":"array","items":{"type":"object","additionalProperties":false,"required":["hash","certificate_hash","merkle_root","epoch","block_number","created_at"],"properties":{"hash":{"description":"Hash of the Cardano transactions set","type":"string","format":"bytes"},"certificate_hash":{"description":"Hash of the associated certificate","type":"string","format":"bytes"},"merkle_root":{"description":"Merkle root of the Cardano transactions set","type":"string","format":"bytes"},"epoch":{"$ref":"#/components/schemas/Epoch"},"block_number":{"description":"Cardano block number","type":"integer","format":"int64"},"created_at":{"description":"Date and time at which the Cardano transactions set was created","type":"string","format":"date-time,"}},"example":{"hash":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","certificate_hash":"7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572","merkle_root":"33bfd17bc082ab5dd1fc0788241c70aa5325241c70aa532530d190809c5391bbc307905e8372","epoch":123,"block_number":1234,"created_at":"2022-06-14T10:52:31Z"}}},"default":{"$ref":"#/components/schemas/Error"}}},"/mithril/artifact/cardano-transaction/{hash}":{"response":{"200":{"description":"This message represents a Cardano transactions set snapshot.","type":"object","additionalProperties":false,"required":["hash","certificate_hash","merkle_root","epoch","block_number","created_at"],"properties":{"hash":{"description":"Hash of the Cardano transactions set","type":"string","format":"bytes"},"certificate_hash":{"description":"Hash of the associated certificate","type":"string","format":"bytes"},"merkle_root":{"description":"Merkle root of the Cardano transactions set","type":"string","format":"bytes"},"epoch":{"$ref":"#/components/schemas/Epoch"},"block_number":{"description":"Cardano block number","type":"integer","format":"int64"},"created_at":{"description":"Date and time at which the Cardano transactions set was created","type":"string","format":"date-time,"}},"example":{"hash":"6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","certificate_hash":"7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572","merkle_root":"33bfd17bc082ab5dd1fc0788241c70aa5325241c70aa532530d190809c5391bbc307905e8372","epoch":123,"block_number":1234,"created_at":"2022-06-14T10:52:31Z"}},"default":{"$ref":"#/components/schemas/Error"}},"params":{"type":"object","properties":{"hash":{"type":"string"}}}},"/mithril/proof/cardano-transaction":{"response":{"200":{"description":"This message represents proofs for Cardano Transactions.","type":"object","additionalProperties":false,"required":["certificate_hash","certified_transactions","non_certified_transactions","latest_block_number"],"properties":{"certificate_hash":{"description":"Hash of the certificate that validate the merkle root of this proof","type":"string","format":"bytes"},"certified_transactions":{"description":"Proofs for certified Cardano transactions","type":"array","items":{"type":"object","required":["transactions_hashes","proof"],"properties":{"transactions_hashes":{"type":"array","items":{"description":"Hash of the Cardano transactions","type":"string","format":"bytes"}},"proof":{"description":"Proof for the Cardano transactions","type":"string","format":"bytes"}}}},"non_certified_transactions":{"type":"array","items":{"description":"Hash of the non certified Cardano transactions","type":"string","format":"bytes"}},"latest_block_number":{"description":"Last block number","type":"integer","format":"int64"}},"example":{"certificate_hash":"7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572","certified_transactions":[{"transactions_hashes":["6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732","5d0d1272e6e70736a1ea2cae34015876367ee64517f6328364f6b73930966732"],"proof":"5b73136372c38302c37342c3136362c313535b5b323136362c313535b5b3232352c3230332c3235352c313030262c38322c39382c32c39332c3138342c313532352c3230332c3235352c313030262c33136362c313535b5b3232352c3230332c3235352c313030262c38322c39382c32c39332c3138342c31358322c39382c32c39332c3138342c3135362c3136362c32312c3131312c3232312c36332c3137372c3232332c3232332c31392c3537"}],"non_certified_transactions":["732d0d1272e6e70736367ee6f6328364f6b739309666a1ea2cae34015874517"],"latest_block_number":7060000}},"default":{"$ref":"#/components/schemas/Error"}},"querystring":{"type":"object","properties":{"transaction_hashes":{"type":"array","items":{"type":"string","format":"bytes","example":"6dbb104ed68481ef829a26a20142916d17985e01774d72d72c2f"}}}}},"/mithril/signers/registered/{epoch}":{"response":{"200":{"description":"This message holds the registered signers at a given epoch.\n","type":"object","additionalProperties":false,"properties":{"registered_at":{"$ref":"#/components/schemas/Epoch"},"signing_at":{"$ref":"#/components/schemas/Epoch"},"registrations":{"type":"array","items":{"$ref":"#/components/schemas/SignerRegistrationsListItemMessage"}}},"example":{"registered_at":420,"signing_at":422,"registrations":[{"party_id":"1234567890","stake":1234}]}},"default":{"$ref":"#/components/schemas/Error"}},"params":{"type":"object","properties":{"epoch":{"type":"integer"}}}},"/mithril/signers/tickers":{"response":{"200":{"description":"represents the list of signers known by the aggregator","type":"object","required":["network","signers"],"properties":{"network":{"description":"Cardano network of the aggregator","type":"string","format":"bytes"},"signers":{"description":"Known signers","items":{"$ref":"#/components/schemas/SignerTickerListItemMessage"}}},"example":{"network":"mainnet","signers":[{"party_id":"pool1234567890","pool_ticker":"[Pool_Name]","has_registered":true},{"party_id":"pool0987654321","has_registered":false}]}},"default":{"$ref":"#/components/schemas/Error"}}}} diff --git a/openapi.json b/openapi.json index c008de2f..31cb9f99 100644 --- a/openapi.json +++ b/openapi.json @@ -1,7 +1,7 @@ { "openapi": "3.0.3", "info": { - "version": "0.1.64", + "version": "0.1.65", "title": "Blockfrost.io ~ API Documentation", "x-logo": { "url": "https://staging.blockfrost.io/images/logo.svg", @@ -64,6 +64,9 @@ { "name": "Cardano » Epochs" }, + { + "name": "Cardano » Governance" + }, { "name": "Cardano » Ledger" }, @@ -884,59 +887,60 @@ } } }, - "/epochs/latest": { + "/governance/dreps": { "get": { "tags": [ - "Cardano » Epochs" + "Cardano » Governance" ], - "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" + "summary": "Delegate Representatives (DReps)", + "description": "Return the information about Delegate Representatives (DReps)", + "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." }, - "429": { - "$ref": "#/components/responses/429" + { + "in": "query", + "name": "page", + "required": false, + "schema": { + "type": "integer", + "minimum": 1, + "maximum": 21474836, + "default": 1 + }, + "description": "The page number for listing the results." }, - "500": { - "$ref": "#/components/responses/500" + { + "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,\nnot the page listing itself. By default, we return oldest first, newest last.\nOrdering in this case is based on the time of the first mint transaction.\n" } - } - } - }, - "/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", + "description": "Paginated array with the Delegate Representatives (DReps) data", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/epoch_param_content" + "$ref": "#/components/schemas/dreps" } } } @@ -947,9 +951,6 @@ "403": { "$ref": "#/components/responses/403" }, - "404": { - "$ref": "#/components/responses/404" - }, "418": { "$ref": "#/components/responses/418" }, @@ -962,32 +963,32 @@ } } }, - "/epochs/{number}": { + "/governance/dreps/{drep_id}": { "get": { "tags": [ - "Cardano » Epochs" + "Cardano » Governance" ], - "summary": "Specific epoch", - "description": "Return the content of the requested epoch.", + "summary": "Specific DRep", + "description": "DRep information.", "parameters": [ { "in": "path", - "name": "number", + "name": "drep_id", "required": true, "schema": { - "type": "integer" + "type": "string" }, - "description": "Number of the epoch", - "example": 225 + "description": "Bech32 or hexadecimal DRep ID.", + "example": "drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc" } ], "responses": { "200": { - "description": "Return the epoch data.", + "description": "Return the DRep information content", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/epoch_content" + "$ref": "#/components/schemas/drep" } } } @@ -998,9 +999,6 @@ "403": { "$ref": "#/components/responses/403" }, - "404": { - "$ref": "#/components/responses/404" - }, "418": { "$ref": "#/components/responses/418" }, @@ -1013,23 +1011,23 @@ } } }, - "/epochs/{number}/next": { + "/governance/dreps/{drep_id}/delegators": { "get": { "tags": [ - "Cardano » Epochs" + "Cardano » Governance" ], - "summary": "Listing of next epochs", - "description": "Return the list of epochs following a specific epoch.", + "summary": "DRep delegators", + "description": "List of Drep delegators.", "parameters": [ { "in": "path", - "name": "number", + "name": "drep_id", "required": true, "schema": { - "type": "integer" + "type": "string" }, - "description": "Number of the requested epoch.", - "example": 225 + "description": "Bech32 or hexadecimal drep ID.", + "example": "drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn" }, { "in": "query", @@ -1054,15 +1052,29 @@ "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Return the data about the epoch", + "description": "Return the DRep delegations", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/epoch_content_array" + "$ref": "#/components/schemas/drep_delegators" } } } @@ -1073,9 +1085,6 @@ "403": { "$ref": "#/components/responses/403" }, - "404": { - "$ref": "#/components/responses/404" - }, "418": { "$ref": "#/components/responses/418" }, @@ -1088,56 +1097,32 @@ } } }, - "/epochs/{number}/previous": { + "/governance/dreps/{drep_id}/metadata": { "get": { "tags": [ - "Cardano » Epochs" + "Cardano » Governance" ], - "summary": "Listing of previous epochs", - "description": "Return the list of epochs preceding a specific epoch.", + "summary": "DRep metadata", + "description": "DRep metadata information.", "parameters": [ { "in": "path", - "name": "number", + "name": "drep_id", "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 + "type": "string" }, - "description": "The page number for listing the results" + "description": "Bech32 or hexadecimal DRep ID.", + "example": "drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc" } ], "responses": { "200": { - "description": "Return the epoch data", + "description": "Return the DRep metadata content.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/epoch_content_array" + "$ref": "#/components/schemas/drep_metadata" } } } @@ -1148,9 +1133,6 @@ "403": { "$ref": "#/components/responses/403" }, - "404": { - "$ref": "#/components/responses/404" - }, "418": { "$ref": "#/components/responses/418" }, @@ -1163,23 +1145,23 @@ } } }, - "/epochs/{number}/stakes": { + "/governance/dreps/{drep_id}/updates": { "get": { "tags": [ - "Cardano » Epochs" + "Cardano » Governance" ], - "summary": "Stake distribution", - "description": "Return the active stake distribution for the specified epoch.", + "summary": "DRep updates", + "description": "List of certificate updates to the DRep.", "parameters": [ { "in": "path", - "name": "number", + "name": "drep_id", "required": true, "schema": { - "type": "integer" + "type": "string" }, - "description": "Number of the epoch", - "example": 225 + "description": "Bech32 or hexadecimal DRep ID.", + "example": "drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc" }, { "in": "query", @@ -1204,15 +1186,29 @@ "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Return the data about the epoch", + "description": "Return the Drep updates history", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/epoch_stake_content" + "$ref": "#/components/schemas/drep_updates" } } } @@ -1223,9 +1219,6 @@ "403": { "$ref": "#/components/responses/403" }, - "404": { - "$ref": "#/components/responses/404" - }, "418": { "$ref": "#/components/responses/418" }, @@ -1238,33 +1231,23 @@ } } }, - "/epochs/{number}/stakes/{pool_id}": { + "/governance/dreps/{drep_id}/votes": { "get": { "tags": [ - "Cardano » Epochs" + "Cardano » Governance" ], - "summary": "Stake distribution by pool", - "description": "Return the active stake distribution for the epoch specified by stake pool.", + "summary": "DRep votes", + "description": "History of Drep votes.", "parameters": [ { "in": "path", - "name": "number", - "required": true, - "schema": { - "type": "integer" - }, - "description": "Number of the epoch", - "example": 225 - }, - { - "in": "path", + "name": "drep_id", "required": true, - "name": "pool_id", "schema": { "type": "string" }, - "description": "Stake pool ID to filter", - "example": "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy" + "description": "Bech32 or hexadecimal drep ID.", + "example": "drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn" }, { "in": "query", @@ -1289,15 +1272,29 @@ "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Return the data about the epoch", + "description": "Return the DRep votes", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/epoch_stake_pool_content" + "$ref": "#/components/schemas/drep_votes" } } } @@ -1308,9 +1305,6 @@ "403": { "$ref": "#/components/responses/403" }, - "404": { - "$ref": "#/components/responses/404" - }, "418": { "$ref": "#/components/responses/418" }, @@ -1323,24 +1317,14 @@ } } }, - "/epochs/{number}/blocks": { + "/governance/proposals": { "get": { "tags": [ - "Cardano » Epochs" + "Cardano » Governance" ], - "summary": "Block distribution", - "description": "Return the blocks minted for the epoch specified.", + "summary": "Proposals", + "description": "Return the information about Proposals", "parameters": [ - { - "in": "path", - "name": "number", - "required": true, - "schema": { - "type": "integer" - }, - "description": "Number of the epoch", - "example": 225 - }, { "in": "query", "name": "count", @@ -1377,16 +1361,16 @@ ], "default": "asc" }, - "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\nOrdering in this case is based on the time of the first mint transaction.\n" } ], "responses": { "200": { - "description": "Return the data about the epoch", + "description": "Paginated array with the proposal data", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/epoch_block_content" + "$ref": "#/components/schemas/proposals" } } } @@ -1397,9 +1381,6 @@ "403": { "$ref": "#/components/responses/403" }, - "404": { - "$ref": "#/components/responses/404" - }, "418": { "$ref": "#/components/responses/418" }, @@ -1412,80 +1393,42 @@ } } }, - "/epochs/{number}/blocks/{pool_id}": { + "/governance/proposals/{tx_hash}/{cert_index}": { "get": { "tags": [ - "Cardano » Epochs" + "Cardano » Governance" ], - "summary": "Block distribution by pool", - "description": "Return the block minted for the epoch specified by stake pool.", + "summary": "Specific proposal", + "description": "Proposal information.", "parameters": [ { "in": "path", - "name": "number", + "name": "tx_hash", "required": true, "schema": { - "type": "integer" + "type": "string" }, - "description": "Number of the epoch", - "example": 225 + "description": "Transaction hash.", + "example": "2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531" }, { "in": "path", + "name": "cert_index", "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" + "type": "integer" }, - "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + "description": "Transaction index.", + "example": 1 } ], "responses": { "200": { - "description": "Return the data about the epoch", + "description": "Return the proposal information content", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/epoch_block_content" + "$ref": "#/components/schemas/proposal" } } } @@ -1496,9 +1439,6 @@ "403": { "$ref": "#/components/responses/403" }, - "404": { - "$ref": "#/components/responses/404" - }, "418": { "$ref": "#/components/responses/418" }, @@ -1511,32 +1451,42 @@ } } }, - "/epochs/{number}/parameters": { + "/governance/proposals/{tx_hash}/{cert_index}/parameters": { "get": { "tags": [ - "Cardano » Epochs" + "Cardano » Governance" ], - "summary": "Protocol parameters", - "description": "Return the protocol parameters for the epoch specified.", + "summary": "Specific parameters proposal", + "description": "Parameters proposal details.", "parameters": [ { "in": "path", - "name": "number", + "name": "tx_hash", + "required": true, + "schema": { + "type": "string" + }, + "description": "Transaction hash.", + "example": "2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531" + }, + { + "in": "path", + "name": "cert_index", "required": true, "schema": { "type": "integer" }, - "description": "Number of the epoch", - "example": 225 + "description": "Transaction index.", + "example": 1 } ], "responses": { "200": { - "description": "Return the data about the epoch", + "description": "Return the proposal parameters content", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/epoch_param_content" + "$ref": "#/components/schemas/proposal_parameters" } } } @@ -1562,33 +1512,42 @@ } } }, - "/txs/{hash}": { + "/governance/proposals/{tx_hash}/{cert_index}/withdrawals": { "get": { "tags": [ - "Cardano » Transactions" + "Cardano » Governance" ], - "summary": "Specific transaction", - "description": "Return content of the requested transaction.", + "summary": "Specific withdrawals proposal", + "description": "Parameters withdrawals details.", "parameters": [ { "in": "path", - "name": "hash", + "name": "tx_hash", "required": true, "schema": { - "type": "string", - "format": "64-character case-sensitive hexadecimal string." + "type": "string" }, - "description": "Hash of the requested transaction", - "example": "6e5f825c42c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" + "description": "Transaction hash.", + "example": "2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531" + }, + { + "in": "path", + "name": "cert_index", + "required": true, + "schema": { + "type": "integer" + }, + "description": "Transaction index.", + "example": 1 } ], "responses": { "200": { - "description": "Return the contents of the transaction.", + "description": "Return the proposal withdrawals content", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/tx_content" + "$ref": "#/components/schemas/proposal_withdrawals" } } } @@ -1614,33 +1573,80 @@ } } }, - "/txs/{hash}/utxos": { + "/governance/proposals/{tx_hash}/{cert_index}/votes": { "get": { "tags": [ - "Cardano » Transactions" + "Cardano » Governance" ], - "summary": "Transaction UTXOs", - "description": "Return the inputs and UTXOs of the specific transaction.", + "summary": "Proposal votes", + "description": "History of Proposal votes.", "parameters": [ { "in": "path", - "name": "hash", + "name": "tx_hash", "required": true, + "schema": { + "type": "string" + }, + "description": "Transaction hash.", + "example": "2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531" + }, + { + "in": "path", + "name": "cert_index", + "required": true, + "schema": { + "type": "integer" + }, + "description": "Transaction index.", + "example": 1 + }, + { + "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", - "format": "64-character case-sensitive hexadecimal string" + "enum": [ + "asc", + "desc" + ], + "default": "asc" }, - "description": "Hash of the requested transaction", - "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" + "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Return the contents of the transaction.", + "description": "Return the Proposal votes", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/tx_content_utxo" + "$ref": "#/components/schemas/proposal_votes" } } } @@ -1651,9 +1657,6 @@ "403": { "$ref": "#/components/responses/403" }, - "404": { - "$ref": "#/components/responses/404" - }, "418": { "$ref": "#/components/responses/418" }, @@ -1666,33 +1669,42 @@ } } }, - "/txs/{hash}/stakes": { + "/governance/proposals/{tx_hash}/{cert_index}/metadata": { "get": { "tags": [ - "Cardano » Transactions" + "Cardano » Governance" ], - "summary": "Transaction stake addresses certificates", - "description": "Obtain information about (de)registration of stake addresses within a transaction.\n", + "summary": "Specific proposal metadata", + "description": "Proposal metadata information.", "parameters": [ { "in": "path", - "name": "hash", + "name": "tx_hash", "required": true, "schema": { - "type": "string", - "format": "64-character case-sensitive hexadecimal string." + "type": "string" }, - "description": "Hash of the requested transaction.", - "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" + "description": "Transaction hash of the proposal.", + "example": "2403339d2f344202fb3583353e11a693a82860e59e65939dcb0e2ac72336d631" + }, + { + "in": "path", + "name": "cert_index", + "required": true, + "schema": { + "type": "integer" + }, + "description": "Transaction index of the proposal.", + "example": 0 } ], "responses": { "200": { - "description": "Obtain information about (de)registration of stake addresses within a transaction.\n", + "description": "Return the proposal information content", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/tx_content_stake_addr" + "$ref": "#/components/schemas/proposal_metadata" } } } @@ -1703,9 +1715,6 @@ "403": { "$ref": "#/components/responses/403" }, - "404": { - "$ref": "#/components/responses/404" - }, "418": { "$ref": "#/components/responses/418" }, @@ -1718,33 +1727,20 @@ } } }, - "/txs/{hash}/delegations": { + "/epochs/latest": { "get": { "tags": [ - "Cardano » Transactions" - ], - "summary": "Transaction delegation certificates", - "description": "Obtain information about delegation certificates of a specific transaction.\n", - "parameters": [ - { - "in": "path", - "name": "hash", - "required": true, - "schema": { - "type": "string", - "format": "64-character case-sensitive hexadecimal string" - }, - "description": "Hash of the requested transaction.", - "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" - } + "Cardano » Epochs" ], + "summary": "Latest epoch", + "description": "Return the information about the latest, therefore current, epoch.", "responses": { "200": { - "description": "Obtain information about delegation certificates of a specific transaction", + "description": "Return the data about the epoch", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/tx_content_delegations" + "$ref": "#/components/schemas/epoch_content" } } } @@ -1770,33 +1766,20 @@ } } }, - "/txs/{hash}/withdrawals": { + "/epochs/latest/parameters": { "get": { "tags": [ - "Cardano » Transactions" - ], - "summary": "Transaction withdrawal", - "description": "Obtain information about withdrawals of a specific transaction.", - "parameters": [ - { - "in": "path", - "name": "hash", - "required": true, - "schema": { - "type": "string", - "format": "64-character case-sensitive hexadecimal string" - }, - "description": "Hash of the requested transaction.", - "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" - } + "Cardano » Epochs" ], + "summary": "Latest epoch protocol parameters", + "description": "Return the protocol parameters for the latest epoch.", "responses": { "200": { - "description": "Obtain information about withdrawals of a specific transaction.", + "description": "Return the data about the epoch", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/tx_content_withdrawals" + "$ref": "#/components/schemas/epoch_param_content" } } } @@ -1822,33 +1805,32 @@ } } }, - "/txs/{hash}/mirs": { + "/epochs/{number}": { "get": { "tags": [ - "Cardano » Transactions" + "Cardano » Epochs" ], - "summary": "Transaction MIRs", - "description": "Obtain information about Move Instantaneous Rewards (MIRs) of a specific transaction.", + "summary": "Specific epoch", + "description": "Return the content of the requested epoch.", "parameters": [ { "in": "path", - "name": "hash", + "name": "number", "required": true, "schema": { - "type": "string", - "format": "64-character case-sensitive hexadecimal string" + "type": "integer" }, - "description": "Hash of the requested transaction.", - "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" + "description": "Number of the epoch", + "example": 225 } ], "responses": { "200": { - "description": "Obtain information about Move Instantaneous Rewards (MIRs) of a specific transaction.", + "description": "Return the epoch data.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/tx_content_mirs" + "$ref": "#/components/schemas/epoch_content" } } } @@ -1874,33 +1856,56 @@ } } }, - "/txs/{hash}/pool_updates": { + "/epochs/{number}/next": { "get": { "tags": [ - "Cardano » Transactions" + "Cardano » Epochs" ], - "summary": "Transaction stake pool registration and update certificates", - "description": "Obtain information about stake pool registration and update certificates of a specific transaction.\n", + "summary": "Listing of next epochs", + "description": "Return the list of epochs following a specific epoch.", "parameters": [ { "in": "path", - "name": "hash", + "name": "number", "required": true, "schema": { - "type": "string", - "format": "64-character case-sensitive hexadecimal string" + "type": "integer" }, - "description": "Hash of the requested transaction", - "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" - } - ], - "responses": { - "200": { - "description": "Obtain information about stake pool certificates of a specific transaction", - "content": { + "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/tx_content_pool_certs" + "$ref": "#/components/schemas/epoch_content_array" } } } @@ -1926,33 +1931,56 @@ } } }, - "/txs/{hash}/pool_retires": { + "/epochs/{number}/previous": { "get": { "tags": [ - "Cardano » Transactions" + "Cardano » Epochs" ], - "summary": "Transaction stake pool retirement certificates", - "description": "Obtain information about stake pool retirements within a specific transaction.\n", + "summary": "Listing of previous epochs", + "description": "Return the list of epochs preceding a specific epoch.", "parameters": [ { "in": "path", - "name": "hash", + "name": "number", "required": true, "schema": { - "type": "string", - "format": "64-character case-sensitive hexadecimal string." + "type": "integer" }, - "description": "Hash of the requested transaction", - "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" + "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": "Obtain information about stake pool retirements within a specific transaction.\n", + "description": "Return the epoch data", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/tx_content_pool_retires" + "$ref": "#/components/schemas/epoch_content_array" } } } @@ -1978,33 +2006,56 @@ } } }, - "/txs/{hash}/metadata": { + "/epochs/{number}/stakes": { "get": { "tags": [ - "Cardano » Transactions" + "Cardano » Epochs" ], - "summary": "Transaction metadata", - "description": "Obtain the transaction metadata.", + "summary": "Stake distribution", + "description": "Return the active stake distribution for the specified epoch.", "parameters": [ { "in": "path", - "name": "hash", + "name": "number", "required": true, "schema": { - "type": "string", - "format": "64-character case-sensitive hexadecimal string." + "type": "integer" }, - "description": "Hash of the requested transaction", - "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" + "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": "Obtain metadata information associated with a specific transaction.", + "description": "Return the data about the epoch", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/tx_content_metadata" + "$ref": "#/components/schemas/epoch_stake_content" } } } @@ -2030,33 +2081,66 @@ } } }, - "/txs/{hash}/metadata/cbor": { + "/epochs/{number}/stakes/{pool_id}": { "get": { "tags": [ - "Cardano » Transactions" + "Cardano » Epochs" ], - "summary": "Transaction metadata in CBOR", - "description": "Obtain the transaction metadata in CBOR.", + "summary": "Stake distribution by pool", + "description": "Return the active stake distribution for the epoch specified by stake pool.", "parameters": [ { "in": "path", - "name": "hash", + "name": "number", "required": true, "schema": { - "type": "string", - "format": "64-character case-sensitive hexadecimal string." + "type": "integer" }, - "description": "Hash of the requested transaction", - "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" + "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": "Obtain metadata information associated with a specific transaction.", + "description": "Return the data about the epoch", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/tx_content_metadata_cbor" + "$ref": "#/components/schemas/epoch_stake_pool_content" } } } @@ -2082,33 +2166,70 @@ } } }, - "/txs/{hash}/redeemers": { + "/epochs/{number}/blocks": { "get": { "tags": [ - "Cardano » Transactions" + "Cardano » Epochs" ], - "summary": "Transaction redeemers", - "description": "Obtain the transaction redeemers.", + "summary": "Block distribution", + "description": "Return the blocks minted for the epoch specified.", "parameters": [ { "in": "path", - "name": "hash", + "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", - "format": "64-character case-sensitive hexadecimal string." + "enum": [ + "asc", + "desc" + ], + "default": "asc" }, - "description": "Hash of the requested transaction", - "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" + "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Obtain information about redeemers within a specific transaction.", + "description": "Return the data about the epoch", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/tx_content_redeemers" + "$ref": "#/components/schemas/epoch_block_content" } } } @@ -2134,33 +2255,80 @@ } } }, - "/txs/{hash}/required_signers": { + "/epochs/{number}/blocks/{pool_id}": { "get": { "tags": [ - "Cardano » Transactions" + "Cardano » Epochs" ], - "summary": "Transaction required signers", - "description": "Obtain the extra transaction witnesses.", + "summary": "Block distribution by pool", + "description": "Return the block minted for the epoch specified by stake pool.", "parameters": [ { "in": "path", - "name": "hash", + "name": "number", "required": true, "schema": { - "type": "string", - "format": "64-character case-sensitive hexadecimal string." + "type": "integer" }, - "description": "Hash of the transaction", - "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" - } - ], - "responses": { - "200": { - "description": "Query required signers (extra transaction witnesses)", + "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + } + ], + "responses": { + "200": { + "description": "Return the data about the epoch", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/tx_content_required_signers" + "$ref": "#/components/schemas/epoch_block_content" } } } @@ -2186,33 +2354,32 @@ } } }, - "/txs/{hash}/cbor": { + "/epochs/{number}/parameters": { "get": { "tags": [ - "Cardano » Transactions" + "Cardano » Epochs" ], - "summary": "Transaction CBOR", - "description": "Obtain the CBOR serialized transaction", + "summary": "Protocol parameters", + "description": "Return the protocol parameters for the epoch specified.", "parameters": [ { "in": "path", - "name": "hash", + "name": "number", "required": true, "schema": { - "type": "string", - "format": "64-character case-sensitive hexadecimal string." + "type": "integer" }, - "description": "Hash of the transaction", - "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" + "description": "Number of the epoch", + "example": 225 } ], "responses": { "200": { - "description": "Query transaction CBOR", + "description": "Return the data about the epoch", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/tx_content_cbor" + "$ref": "#/components/schemas/epoch_param_content" } } } @@ -2238,49 +2405,33 @@ } } }, - "/tx/submit": { - "post": { + "/txs/{hash}": { + "get": { "tags": [ "Cardano » Transactions" ], - "summary": "Submit a transaction", - "description": "Submit an already serialized transaction to the network.\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", - "x-codeSamples": [ - { - "lang": "Shell", - "label": "cURL", - "source": "# Assuming `data` is a serialized transaction on the file-system.\ncurl \"https://cardano-mainnet.blockfrost.io/api/v0/tx/submit\" \\\n -X POST \\\n -H \"Content-Type: application/cbor\" \\\n -H \"project_id: $PROJECT_ID\" \\\n --data-binary @./data\n" - }, + "summary": "Specific transaction", + "description": "Return content of the requested transaction.", + "parameters": [ { - "lang": "Shell", - "label": "cardano-cli", - "source": "# Assuming `tx.signed` is signed transaction constructed by cardano-cli\nxxd -r -p <<< $(jq .cborHex tx.signed) > tx.submit-api.raw\ncurl \"https://cardano-mainnet.blockfrost.io/api/v0/tx/submit\" \\\n -X POST \\\n -H \"Content-Type: application/cbor\" \\\n -H \"project_id: $PROJECT_ID\" \\\n --data-binary @./tx.submit-api.raw\n" + "in": "path", + "name": "hash", + "required": true, + "schema": { + "type": "string", + "format": "64-character case-sensitive hexadecimal string." + }, + "description": "Hash of the requested transaction", + "example": "6e5f825c42c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" } ], - "requestBody": { - "description": "The transaction to submit, serialized in CBOR.\n", - "required": true, - "content": { - "application/cbor": { - "schema": { - "type": "string", - "description": "The transaction to submit, serialized in CBOR.\n" - }, - "example": "83a400818258208911f640d452c3be4ff3d89db63b41ce048c056951286e2e28bbf8a51588ab44000181825839009493315cd92eb5d8c4304e67b7e16ae36d61d34502694657811a2c8e32c728d3861e164cab28cb8f006448139c8f1740ffb8e7aa9e5232dc1a10b2531f021a00029519075820cb798b0bce50604eaf2e0dc89367896b18f0a6ef6b32b57e3c9f83f8ee71e608a1008182582073fea80d424276ad0978d4fe5310e8bc2d485f5f6bb3bf87612989f112ad5a7d5840c40425229749a9434763cf01b492057fd56d7091a6372eaa777a1c9b1ca508c914e6a4ee9c0d40fc10952ed668e9ad65378a28b149de6bd4204bd9f095b0a902a11907b0a1667469636b657281a266736f757263656b736f757263655f6e616d656576616c7565736675676961742076656e69616d206d696e7573\n" - } - } - }, "responses": { "200": { - "description": "Return the ID of the submitted transaction.", + "description": "Return the contents of the transaction.", "content": { "application/json": { "schema": { - "type": "string", - "format": "hex", - "minLength": 64, - "maxLength": 64, - "example": "d1662b24fa9fe985fc2dce47455df399cb2e31e1e1819339e885801cc3578908" + "$ref": "#/components/schemas/tx_content" } } } @@ -2297,9 +2448,6 @@ "418": { "$ref": "#/components/responses/418" }, - "425": { - "$ref": "#/components/responses/425" - }, "429": { "$ref": "#/components/responses/429" }, @@ -2309,32 +2457,33 @@ } } }, - "/accounts/{stake_address}": { + "/txs/{hash}/utxos": { "get": { "tags": [ - "Cardano » Accounts" + "Cardano » Transactions" ], - "summary": "Specific account address", - "description": "Obtain information about a specific stake account.\n", + "summary": "Transaction UTXOs", + "description": "Return the inputs and UTXOs of the specific transaction.", "parameters": [ { "in": "path", - "name": "stake_address", + "name": "hash", "required": true, "schema": { - "type": "string" + "type": "string", + "format": "64-character case-sensitive hexadecimal string" }, - "description": "Bech32 stake address.", - "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" + "description": "Hash of the requested transaction", + "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" } ], "responses": { "200": { - "description": "Return the account content.", + "description": "Return the contents of the transaction.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/account_content" + "$ref": "#/components/schemas/tx_content_utxo" } } } @@ -2360,70 +2509,85 @@ } } }, - "/accounts/{stake_address}/rewards": { + "/txs/{hash}/stakes": { "get": { "tags": [ - "Cardano » Accounts" + "Cardano » Transactions" ], - "summary": "Account reward history", - "description": "Obtain information about the reward history of a specific account.\n", + "summary": "Transaction stake addresses certificates", + "description": "Obtain information about (de)registration of stake addresses within a transaction.\n", "parameters": [ { "in": "path", - "name": "stake_address", + "name": "hash", "required": true, "schema": { - "type": "string" + "type": "string", + "format": "64-character case-sensitive hexadecimal string." }, - "description": "Bech32 stake address.", - "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" + "description": "Hash of the requested transaction.", + "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" + } + ], + "responses": { + "200": { + "description": "Obtain information about (de)registration of stake addresses within a transaction.\n", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/tx_content_stake_addr" + } + } + } }, - { - "in": "query", - "name": "count", - "required": false, - "schema": { - "type": "integer", - "minimum": 1, - "maximum": 100, - "default": 100 - }, - "description": "The number of results displayed on one page." + "400": { + "$ref": "#/components/responses/400" }, - { - "in": "query", - "name": "page", - "required": false, - "schema": { - "type": "integer", - "minimum": 1, - "maximum": 21474836, - "default": 1 - }, - "description": "The page number for listing the results." + "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" + } + } + } + }, + "/txs/{hash}/delegations": { + "get": { + "tags": [ + "Cardano » Transactions" + ], + "summary": "Transaction delegation certificates", + "description": "Obtain information about delegation certificates of a specific transaction.\n", + "parameters": [ { - "in": "query", - "name": "order", - "required": false, + "in": "path", + "name": "hash", + "required": true, "schema": { "type": "string", - "enum": [ - "asc", - "desc" - ], - "default": "asc" + "format": "64-character case-sensitive hexadecimal string" }, - "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + "description": "Hash of the requested transaction.", + "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" } ], "responses": { "200": { - "description": "Return the account content.", + "description": "Obtain information about delegation certificates of a specific transaction", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/account_reward_content" + "$ref": "#/components/schemas/tx_content_delegations" } } } @@ -2449,70 +2613,33 @@ } } }, - "/accounts/{stake_address}/history": { + "/txs/{hash}/withdrawals": { "get": { "tags": [ - "Cardano » Accounts" + "Cardano » Transactions" ], - "summary": "Account history", - "description": "Obtain information about the history of a specific account.\n", + "summary": "Transaction withdrawal", + "description": "Obtain information about withdrawals of a specific transaction.", "parameters": [ { "in": "path", - "name": "stake_address", + "name": "hash", "required": true, - "schema": { - "type": "string" - }, - "description": "Bech32 stake address.", - "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" - }, - { - "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" + "format": "64-character case-sensitive hexadecimal string" }, - "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + "description": "Hash of the requested transaction.", + "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" } ], "responses": { "200": { - "description": "Return the account content.", + "description": "Obtain information about withdrawals of a specific transaction.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/account_history_content" + "$ref": "#/components/schemas/tx_content_withdrawals" } } } @@ -2538,70 +2665,33 @@ } } }, - "/accounts/{stake_address}/delegations": { + "/txs/{hash}/mirs": { "get": { "tags": [ - "Cardano » Accounts" + "Cardano » Transactions" ], - "summary": "Account delegation history", - "description": "Obtain information about the delegation of a specific account.", + "summary": "Transaction MIRs", + "description": "Obtain information about Move Instantaneous Rewards (MIRs) of a specific transaction.", "parameters": [ { "in": "path", - "name": "stake_address", + "name": "hash", "required": true, - "schema": { - "type": "string" - }, - "description": "Bech32 stake address.", - "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" - }, - { - "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" + "format": "64-character case-sensitive hexadecimal string" }, - "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + "description": "Hash of the requested transaction.", + "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" } ], "responses": { "200": { - "description": "Return the account delegations content", + "description": "Obtain information about Move Instantaneous Rewards (MIRs) of a specific transaction.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/account_delegation_content" + "$ref": "#/components/schemas/tx_content_mirs" } } } @@ -2627,70 +2717,33 @@ } } }, - "/accounts/{stake_address}/registrations": { + "/txs/{hash}/pool_updates": { "get": { "tags": [ - "Cardano » Accounts" + "Cardano » Transactions" ], - "summary": "Account registration history", - "description": "Obtain information about the registrations and deregistrations of a specific account.\n", + "summary": "Transaction stake pool registration and update certificates", + "description": "Obtain information about stake pool registration and update certificates of a specific transaction.\n", "parameters": [ { "in": "path", - "name": "stake_address", + "name": "hash", "required": true, - "schema": { - "type": "string" - }, - "description": "Bech32 stake address.", - "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" - }, - { - "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" + "format": "64-character case-sensitive hexadecimal string" }, - "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + "description": "Hash of the requested transaction", + "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" } ], "responses": { "200": { - "description": "Return the account registration content.", + "description": "Obtain information about stake pool certificates of a specific transaction", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/account_registration_content" + "$ref": "#/components/schemas/tx_content_pool_certs" } } } @@ -2716,70 +2769,33 @@ } } }, - "/accounts/{stake_address}/withdrawals": { + "/txs/{hash}/pool_retires": { "get": { "tags": [ - "Cardano » Accounts" + "Cardano » Transactions" ], - "summary": "Account withdrawal history", - "description": "Obtain information about the withdrawals of a specific account.\n", + "summary": "Transaction stake pool retirement certificates", + "description": "Obtain information about stake pool retirements within a specific transaction.\n", "parameters": [ { "in": "path", - "name": "stake_address", + "name": "hash", "required": true, - "schema": { - "type": "string" - }, - "description": "Bech32 stake address.", - "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" - }, - { - "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" + "format": "64-character case-sensitive hexadecimal string." }, - "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + "description": "Hash of the requested transaction", + "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" } ], "responses": { "200": { - "description": "Return the account withdrawal content.", + "description": "Obtain information about stake pool retirements within a specific transaction.\n", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/account_withdrawal_content" + "$ref": "#/components/schemas/tx_content_pool_retires" } } } @@ -2805,73 +2821,36 @@ } } }, - "/accounts/{stake_address}/mirs": { + "/txs/{hash}/metadata": { "get": { "tags": [ - "Cardano » Accounts" + "Cardano » Transactions" ], - "summary": "Account MIR history", - "description": "Obtain information about the MIRs of a specific account.\n", + "summary": "Transaction metadata", + "description": "Obtain the transaction metadata.", "parameters": [ { "in": "path", - "name": "stake_address", + "name": "hash", "required": true, "schema": { - "type": "string" + "type": "string", + "format": "64-character case-sensitive hexadecimal string." }, - "description": "Bech32 stake address.", - "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" - }, - { - "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" - } - ], - "responses": { - "200": { - "description": "Return the account MIR content.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/account_mir_content" - } - } - } + "description": "Hash of the requested transaction", + "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" + } + ], + "responses": { + "200": { + "description": "Obtain metadata information associated with a specific transaction.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/tx_content_metadata" + } + } + } }, "400": { "$ref": "#/components/responses/400" @@ -2894,70 +2873,33 @@ } } }, - "/accounts/{stake_address}/addresses": { + "/txs/{hash}/metadata/cbor": { "get": { "tags": [ - "Cardano » Accounts" + "Cardano » Transactions" ], - "summary": "Account associated addresses", - "description": "Obtain information about the addresses of a specific account.\nBe careful, as an account could be part of a mangled address and does not necessarily mean the addresses are owned by user as the account.\n", + "summary": "Transaction metadata in CBOR", + "description": "Obtain the transaction metadata in CBOR.", "parameters": [ { "in": "path", - "name": "stake_address", + "name": "hash", "required": true, - "schema": { - "type": "string" - }, - "description": "Bech32 stake address.", - "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" - }, - { - "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" + "format": "64-character case-sensitive hexadecimal string." }, - "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + "description": "Hash of the requested transaction", + "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" } ], "responses": { "200": { - "description": "Return the account addresses content", + "description": "Obtain metadata information associated with a specific transaction.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/account_addresses_content" + "$ref": "#/components/schemas/tx_content_metadata_cbor" } } } @@ -2983,70 +2925,33 @@ } } }, - "/accounts/{stake_address}/addresses/assets": { + "/txs/{hash}/redeemers": { "get": { "tags": [ - "Cardano » Accounts" + "Cardano » Transactions" ], - "summary": "Assets associated with the account addresses", - "description": "Obtain information about assets associated with addresses of a specific account.\nBe careful, as an account could be part of a mangled address and does not necessarily mean the addresses are owned by user as the account.\n", + "summary": "Transaction redeemers", + "description": "Obtain the transaction redeemers.", "parameters": [ { "in": "path", - "name": "stake_address", + "name": "hash", "required": true, - "schema": { - "type": "string" - }, - "description": "Bech32 stake address.", - "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" - }, - { - "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" + "format": "64-character case-sensitive hexadecimal string." }, - "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + "description": "Hash of the requested transaction", + "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" } ], "responses": { "200": { - "description": "Return the account addresses content", + "description": "Obtain information about redeemers within a specific transaction.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/account_addresses_assets" + "$ref": "#/components/schemas/tx_content_redeemers" } } } @@ -3072,32 +2977,33 @@ } } }, - "/accounts/{stake_address}/addresses/total": { + "/txs/{hash}/required_signers": { "get": { "tags": [ - "Cardano » Accounts" + "Cardano » Transactions" ], - "summary": "Detailed information about account associated addresses", - "description": "Obtain summed details about all addresses associated with a given account.\nBe careful, as an account could be part of a mangled address and does not necessarily mean the addresses are owned by user as the account.\n", + "summary": "Transaction required signers", + "description": "Obtain the extra transaction witnesses.", "parameters": [ { "in": "path", - "name": "stake_address", + "name": "hash", "required": true, "schema": { - "type": "string" + "type": "string", + "format": "64-character case-sensitive hexadecimal string." }, - "description": "Bech32 address.", - "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" + "description": "Hash of the transaction", + "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" } ], "responses": { "200": { - "description": "Return the Address details.", + "description": "Query required signers (extra transaction witnesses)", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/account_addresses_total" + "$ref": "#/components/schemas/tx_content_required_signers" } } } @@ -3123,60 +3029,33 @@ } } }, - "/mempool": { + "/txs/{hash}/cbor": { "get": { "tags": [ - "Cardano » Mempool" + "Cardano » Transactions" ], - "summary": "Mempool", - "description": "Return transactions that are currently stored in Blockfrost mempool,\nwaiting to be included in a newly minted block.\nShows only transactions submitted via Blockfrost.io.\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", + "summary": "Transaction CBOR", + "description": "Obtain the CBOR serialized transaction", "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, + "in": "path", + "name": "hash", + "required": true, "schema": { "type": "string", - "enum": [ - "asc", - "desc" - ], - "default": "asc" + "format": "64-character case-sensitive hexadecimal string." }, - "description": "Ordered by the time of transaction submission.\nBy default, we return oldest first, newest last.\n" + "description": "Hash of the transaction", + "example": "6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" } ], "responses": { "200": { - "description": "Return the contents of the mempool", + "description": "Query transaction CBOR", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/mempool_content" + "$ref": "#/components/schemas/tx_content_cbor" } } } @@ -3202,33 +3081,49 @@ } } }, - "/mempool/{hash}": { - "get": { + "/tx/submit": { + "post": { "tags": [ - "Cardano » Mempool" + "Cardano » Transactions" ], - "summary": "Specific transaction in the mempool", - "description": "Return content of the requested transaction.\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", - "parameters": [ + "summary": "Submit a transaction", + "description": "Submit an already serialized transaction to the network.\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", + "x-codeSamples": [ { - "in": "path", - "name": "hash", - "required": true, - "schema": { - "type": "string", - "format": "64-character case-sensitive hexadecimal string." - }, - "description": "Hash of the requested transaction", - "example": "6e5f825c42c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" - } - ], - "responses": { - "200": { - "description": "Return the contents of the transaction.", - "content": { - "application/json": { + "lang": "Shell", + "label": "cURL", + "source": "# Assuming `data` is a serialized transaction on the file-system.\ncurl \"https://cardano-mainnet.blockfrost.io/api/v0/tx/submit\" \\\n -X POST \\\n -H \"Content-Type: application/cbor\" \\\n -H \"project_id: $PROJECT_ID\" \\\n --data-binary @./data\n" + }, + { + "lang": "Shell", + "label": "cardano-cli", + "source": "# Assuming `tx.signed` is signed transaction constructed by cardano-cli\nxxd -r -p <<< $(jq .cborHex tx.signed) > tx.submit-api.raw\ncurl \"https://cardano-mainnet.blockfrost.io/api/v0/tx/submit\" \\\n -X POST \\\n -H \"Content-Type: application/cbor\" \\\n -H \"project_id: $PROJECT_ID\" \\\n --data-binary @./tx.submit-api.raw\n" + } + ], + "requestBody": { + "description": "The transaction to submit, serialized in CBOR.\n", + "required": true, + "content": { + "application/cbor": { + "schema": { + "type": "string", + "description": "The transaction to submit, serialized in CBOR.\n" + }, + "example": "83a400818258208911f640d452c3be4ff3d89db63b41ce048c056951286e2e28bbf8a51588ab44000181825839009493315cd92eb5d8c4304e67b7e16ae36d61d34502694657811a2c8e32c728d3861e164cab28cb8f006448139c8f1740ffb8e7aa9e5232dc1a10b2531f021a00029519075820cb798b0bce50604eaf2e0dc89367896b18f0a6ef6b32b57e3c9f83f8ee71e608a1008182582073fea80d424276ad0978d4fe5310e8bc2d485f5f6bb3bf87612989f112ad5a7d5840c40425229749a9434763cf01b492057fd56d7091a6372eaa777a1c9b1ca508c914e6a4ee9c0d40fc10952ed668e9ad65378a28b149de6bd4204bd9f095b0a902a11907b0a1667469636b657281a266736f757263656b736f757263655f6e616d656576616c7565736675676961742076656e69616d206d696e7573\n" + } + } + }, + "responses": { + "200": { + "description": "Return the ID of the submitted transaction.", + "content": { + "application/json": { "schema": { - "$ref": "#/components/schemas/mempool_tx_content" + "type": "string", + "format": "hex", + "minLength": 64, + "maxLength": 64, + "example": "d1662b24fa9fe985fc2dce47455df399cb2e31e1e1819339e885801cc3578908" } } } @@ -3245,6 +3140,9 @@ "418": { "$ref": "#/components/responses/418" }, + "425": { + "$ref": "#/components/responses/425" + }, "429": { "$ref": "#/components/responses/429" }, @@ -3254,24 +3152,74 @@ } } }, - "/mempool/addresses/{address}": { + "/accounts/{stake_address}": { "get": { "tags": [ - "Cardano » Mempool" + "Cardano » Accounts" ], - "summary": "Mempool by address", - "description": "List of mempool transactions where at least one of the transaction inputs or outputs belongs to the address.\nShows only transactions submitted via Blockfrost.io.\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", + "summary": "Specific account address", + "description": "Obtain information about a specific stake account.\n", "parameters": [ { "in": "path", - "name": "address", + "name": "stake_address", "required": true, "schema": { - "type": "string", - "format": "64-character case-sensitive hexadecimal string." + "type": "string" }, - "description": "Bech32 address.", - "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" + "description": "Bech32 stake address.", + "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" + } + ], + "responses": { + "200": { + "description": "Return the account content.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/account_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" + } + } + } + }, + "/accounts/{stake_address}/rewards": { + "get": { + "tags": [ + "Cardano » Accounts" + ], + "summary": "Account reward history", + "description": "Obtain information about the reward history of a specific account.\n", + "parameters": [ + { + "in": "path", + "name": "stake_address", + "required": true, + "schema": { + "type": "string" + }, + "description": "Bech32 stake address.", + "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" }, { "in": "query", @@ -3309,16 +3257,16 @@ ], "default": "asc" }, - "description": "Ordered by the time of transaction submission.\nBy default, we return oldest first, newest last.\n" + "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Return the contents of the mempool", + "description": "Return the account content.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/mempool_addresses_content" + "$ref": "#/components/schemas/account_reward_content" } } } @@ -3344,14 +3292,24 @@ } } }, - "/metadata/txs/labels": { + "/accounts/{stake_address}/history": { "get": { "tags": [ - "Cardano » Metadata" + "Cardano » Accounts" ], - "summary": "Transaction metadata labels", - "description": "List of all used transaction metadata labels.\n", + "summary": "Account history", + "description": "Obtain information about the history of a specific account.\n", "parameters": [ + { + "in": "path", + "name": "stake_address", + "required": true, + "schema": { + "type": "string" + }, + "description": "Bech32 stake address.", + "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" + }, { "in": "query", "name": "count", @@ -3393,11 +3351,11 @@ ], "responses": { "200": { - "description": "Return the account metadata content in CBOR", + "description": "Return the account content.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/tx_metadata_labels" + "$ref": "#/components/schemas/account_history_content" } } } @@ -3423,23 +3381,23 @@ } } }, - "/metadata/txs/labels/{label}": { + "/accounts/{stake_address}/delegations": { "get": { "tags": [ - "Cardano » Metadata" + "Cardano » Accounts" ], - "summary": "Transaction metadata content in JSON", - "description": "Transaction metadata per label.", + "summary": "Account delegation history", + "description": "Obtain information about the delegation of a specific account.", "parameters": [ { "in": "path", - "name": "label", + "name": "stake_address", "required": true, "schema": { "type": "string" }, - "description": "Metadata label", - "example": "1990" + "description": "Bech32 stake address.", + "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" }, { "in": "query", @@ -3482,11 +3440,11 @@ ], "responses": { "200": { - "description": "Return the account metadata content", + "description": "Return the account delegations content", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/tx_metadata_label_json" + "$ref": "#/components/schemas/account_delegation_content" } } } @@ -3512,23 +3470,23 @@ } } }, - "/metadata/txs/labels/{label}/cbor": { + "/accounts/{stake_address}/registrations": { "get": { "tags": [ - "Cardano » Metadata" + "Cardano » Accounts" ], - "summary": "Transaction metadata content in CBOR", - "description": "Transaction metadata per label.", + "summary": "Account registration history", + "description": "Obtain information about the registrations and deregistrations of a specific account.\n", "parameters": [ { "in": "path", - "name": "label", + "name": "stake_address", "required": true, "schema": { "type": "string" }, - "description": "Metadata label", - "example": "1990" + "description": "Bech32 stake address.", + "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" }, { "in": "query", @@ -3571,11 +3529,11 @@ ], "responses": { "200": { - "description": "Return the account metadata content in CBOR", + "description": "Return the account registration content.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/tx_metadata_label_cbor" + "$ref": "#/components/schemas/account_registration_content" } } } @@ -3601,32 +3559,70 @@ } } }, - "/addresses/{address}": { + "/accounts/{stake_address}/withdrawals": { "get": { "tags": [ - "Cardano » Addresses" + "Cardano » Accounts" ], - "summary": "Specific address", - "description": "Obtain information about a specific address.", + "summary": "Account withdrawal history", + "description": "Obtain information about the withdrawals of a specific account.\n", "parameters": [ { "in": "path", - "name": "address", + "name": "stake_address", "required": true, "schema": { "type": "string" }, - "description": "Bech32 address.", - "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" + "description": "Bech32 stake address.", + "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" + }, + { + "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Return the address content.", + "description": "Return the account withdrawal content.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/address_content" + "$ref": "#/components/schemas/account_withdrawal_content" } } } @@ -3652,125 +3648,23 @@ } } }, - "/addresses/{address}/extended": { + "/accounts/{stake_address}/mirs": { "get": { "tags": [ - "Cardano » Addresses" + "Cardano » Accounts" ], - "summary": "Extended information of a specific address", - "description": "Obtain extended information about a specific address.\n", + "summary": "Account MIR history", + "description": "Obtain information about the MIRs of a specific account.\n", "parameters": [ { "in": "path", - "name": "address", + "name": "stake_address", "required": true, "schema": { "type": "string" }, - "description": "Bech32 address.", - "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" - } - ], - "responses": { - "200": { - "description": "Return the address content.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/address_content_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" - } - } - } - }, - "/addresses/{address}/total": { - "get": { - "tags": [ - "Cardano » Addresses" - ], - "summary": "Address details", - "description": "Obtain details about an address.", - "parameters": [ - { - "in": "path", - "name": "address", - "required": true, - "schema": { - "type": "string" - }, - "description": "Bech32 address.", - "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" - } - ], - "responses": { - "200": { - "description": "Return the Address details.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/address_content_total" - } - } - } - }, - "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" - } - } - } - }, - "/addresses/{address}/utxos": { - "get": { - "tags": [ - "Cardano » Addresses" - ], - "summary": "Address UTXOs", - "description": "UTXOs of the address.", - "parameters": [ - { - "in": "path", - "name": "address", - "required": true, - "schema": { - "type": "string" - }, - "description": "Bech32 address.", - "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" + "description": "Bech32 stake address.", + "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" }, { "in": "query", @@ -3813,11 +3707,11 @@ ], "responses": { "200": { - "description": "Return the address content", + "description": "Return the account MIR content.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/address_utxo_content" + "$ref": "#/components/schemas/account_mir_content" } } } @@ -3843,33 +3737,23 @@ } } }, - "/addresses/{address}/utxos/{asset}": { + "/accounts/{stake_address}/addresses": { "get": { "tags": [ - "Cardano » Addresses" + "Cardano » Accounts" ], - "summary": "Address UTXOs of a given asset", - "description": "UTXOs of the address.", + "summary": "Account associated addresses", + "description": "Obtain information about the addresses of a specific account.\nBe careful, as an account could be part of a mangled address and does not necessarily mean the addresses are owned by user as the account.\n", "parameters": [ { "in": "path", - "name": "address", - "required": true, - "schema": { - "type": "string" - }, - "description": "Bech32 address.", - "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" - }, - { - "in": "path", - "name": "asset", + "name": "stake_address", "required": true, "schema": { "type": "string" }, - "description": "Concatenation of the policy_id and hex-encoded asset_name", - "example": "b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e" + "description": "Bech32 stake address.", + "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" }, { "in": "query", @@ -3912,11 +3796,11 @@ ], "responses": { "200": { - "description": "Return the address content", + "description": "Return the account addresses content", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/address_utxo_content" + "$ref": "#/components/schemas/account_addresses_content" } } } @@ -3942,24 +3826,23 @@ } } }, - "/addresses/{address}/txs": { + "/accounts/{stake_address}/addresses/assets": { "get": { - "deprecated": true, "tags": [ - "Cardano » Addresses" + "Cardano » Accounts" ], - "summary": "Address txs", - "description": "Transactions on the address.", + "summary": "Assets associated with the account addresses", + "description": "Obtain information about assets associated with addresses of a specific account.\nBe careful, as an account could be part of a mangled address and does not necessarily mean the addresses are owned by user as the account.\n", "parameters": [ { "in": "path", - "name": "address", + "name": "stake_address", "required": true, "schema": { "type": "string" }, - "description": "Bech32 address.", - "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" + "description": "Bech32 stake address.", + "example": "stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc" }, { "in": "query", @@ -3971,7 +3854,7 @@ "maximum": 100, "default": 100 }, - "description": "The number of transactions per page." + "description": "The number of results displayed on one page." }, { "in": "query", @@ -4002,11 +3885,11 @@ ], "responses": { "200": { - "description": "Return the address content", + "description": "Return the account addresses content", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/address_txs_content" + "$ref": "#/components/schemas/account_addresses_assets" } } } @@ -4032,90 +3915,32 @@ } } }, - "/addresses/{address}/transactions": { + "/accounts/{stake_address}/addresses/total": { "get": { "tags": [ - "Cardano » Addresses" + "Cardano » Accounts" ], - "summary": "Address transactions", - "description": "Transactions on the address.", + "summary": "Detailed information about account associated addresses", + "description": "Obtain summed details about all addresses associated with a given account.\nBe careful, as an account could be part of a mangled address and does not necessarily mean the addresses are owned by user as the account.\n", "parameters": [ { "in": "path", - "name": "address", + "name": "stake_address", "required": true, "schema": { "type": "string" }, "description": "Bech32 address.", "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" - }, - { - "in": "query", - "name": "count", - "required": false, - "schema": { - "type": "integer", - "minimum": 1, - "maximum": 100, - "default": 100 - }, - "description": "The number of addresses 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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" - }, - { - "in": "query", - "name": "from", - "required": false, - "schema": { - "type": "string" - }, - "description": "The block number and optionally also index from which (inclusive) to start search for results, concatenated using colon.\nHas to be lower than or equal to `to` parameter.\n", - "example": "8929261" - }, - { - "in": "query", - "name": "to", - "required": false, - "schema": { - "type": "string" - }, - "description": "The block number and optionally also index where (inclusive) to end the search for results, concatenated using colon.\nHas to be higher than or equal to `from` parameter.\n", - "example": "9999269:10" } ], "responses": { "200": { - "description": "Return the address content", + "description": "Return the Address details.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/address_transactions_content" + "$ref": "#/components/schemas/account_addresses_total" } } } @@ -4141,13 +3966,13 @@ } } }, - "/pools": { + "/mempool": { "get": { "tags": [ - "Cardano » Pools" + "Cardano » Mempool" ], - "summary": "List of stake pools", - "description": "List of registered stake pools.", + "summary": "Mempool", + "description": "Return transactions that are currently stored in Blockfrost mempool,\nwaiting to be included in a newly minted block.\nShows only transactions submitted via Blockfrost.io.\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", "parameters": [ { "in": "query", @@ -4159,7 +3984,7 @@ "maximum": 100, "default": 100 }, - "description": "The number of pools per page." + "description": "The number of results displayed on one page." }, { "in": "query", @@ -4185,16 +4010,16 @@ ], "default": "asc" }, - "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + "description": "Ordered by the time of transaction submission.\nBy default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Return the list of pools.", + "description": "Return the contents of the mempool", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/pool_list" + "$ref": "#/components/schemas/mempool_content" } } } @@ -4220,60 +4045,33 @@ } } }, - "/pools/extended": { + "/mempool/{hash}": { "get": { "tags": [ - "Cardano » Pools" + "Cardano » Mempool" ], - "summary": "List of stake pools with additional information", - "description": "List of registered stake pools with additional information.", + "summary": "Specific transaction in the mempool", + "description": "Return content of the requested transaction.\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", "parameters": [ { - "in": "query", - "name": "count", - "required": false, + "in": "path", + "name": "hash", + "required": true, "schema": { - "type": "integer", - "minimum": 1, - "maximum": 100, - "default": 100 + "type": "string", + "format": "64-character case-sensitive hexadecimal string." }, - "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + "description": "Hash of the requested transaction", + "example": "6e5f825c42c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b" } ], "responses": { "200": { - "description": "Return the list of pools.", + "description": "Return the contents of the transaction.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/pool_list_extended" + "$ref": "#/components/schemas/mempool_tx_content" } } } @@ -4299,14 +4097,25 @@ } } }, - "/pools/retired": { + "/mempool/addresses/{address}": { "get": { "tags": [ - "Cardano » Pools" + "Cardano » Mempool" ], - "summary": "List of retired stake pools", - "description": "List of already retired pools.", + "summary": "Mempool by address", + "description": "List of mempool transactions where at least one of the transaction inputs or outputs belongs to the address.\nShows only transactions submitted via Blockfrost.io.\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", "parameters": [ + { + "in": "path", + "name": "address", + "required": true, + "schema": { + "type": "string", + "format": "64-character case-sensitive hexadecimal string." + }, + "description": "Bech32 address.", + "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" + }, { "in": "query", "name": "count", @@ -4317,7 +4126,7 @@ "maximum": 100, "default": 100 }, - "description": "The number of pools per page." + "description": "The number of results displayed on one page." }, { "in": "query", @@ -4343,16 +4152,16 @@ ], "default": "asc" }, - "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + "description": "Ordered by the time of transaction submission.\nBy default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Return the pool information content", + "description": "Return the contents of the mempool", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/pool_list_retire" + "$ref": "#/components/schemas/mempool_addresses_content" } } } @@ -4378,13 +4187,13 @@ } } }, - "/pools/retiring": { + "/metadata/txs/labels": { "get": { "tags": [ - "Cardano » Pools" + "Cardano » Metadata" ], - "summary": "List of retiring stake pools", - "description": "List of stake pools retiring in the upcoming epochs", + "summary": "Transaction metadata labels", + "description": "List of all used transaction metadata labels.\n", "parameters": [ { "in": "query", @@ -4427,11 +4236,11 @@ ], "responses": { "200": { - "description": "Return the pool information content", + "description": "Return the account metadata content in CBOR", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/pool_list_retire" + "$ref": "#/components/schemas/tx_metadata_labels" } } } @@ -4457,32 +4266,70 @@ } } }, - "/pools/{pool_id}": { + "/metadata/txs/labels/{label}": { "get": { "tags": [ - "Cardano » Pools" + "Cardano » Metadata" ], - "summary": "Specific stake pool", - "description": "Pool information.", + "summary": "Transaction metadata content in JSON", + "description": "Transaction metadata per label.", "parameters": [ { "in": "path", - "name": "pool_id", + "name": "label", "required": true, "schema": { "type": "string" }, - "description": "Bech32 or hexadecimal pool ID.", - "example": "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy" + "description": "Metadata label", + "example": "1990" + }, + { + "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Return the pool information content", + "description": "Return the account metadata content", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/pool" + "$ref": "#/components/schemas/tx_metadata_label_json" } } } @@ -4508,23 +4355,23 @@ } } }, - "/pools/{pool_id}/history": { + "/metadata/txs/labels/{label}/cbor": { "get": { "tags": [ - "Cardano » Pools" + "Cardano » Metadata" ], - "summary": "Stake pool history", - "description": "History of stake pool parameters over epochs.\n", + "summary": "Transaction metadata content in CBOR", + "description": "Transaction metadata per label.", "parameters": [ { "in": "path", - "name": "pool_id", + "name": "label", "required": true, "schema": { "type": "string" }, - "description": "Bech32 or hexadecimal pool ID.", - "example": "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy" + "description": "Metadata label", + "example": "1990" }, { "in": "query", @@ -4548,7 +4395,7 @@ "maximum": 21474836, "default": 1 }, - "description": "The page number for listing the results" + "description": "The page number for listing the results." }, { "in": "query", @@ -4567,11 +4414,11 @@ ], "responses": { "200": { - "description": "Return the pool information content.", + "description": "Return the account metadata content in CBOR", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/pool_history" + "$ref": "#/components/schemas/tx_metadata_label_cbor" } } } @@ -4597,39 +4444,32 @@ } } }, - "/pools/{pool_id}/metadata": { + "/addresses/{address}": { "get": { "tags": [ - "Cardano » Pools" + "Cardano » Addresses" ], - "summary": "Stake pool metadata", - "description": "Stake pool registration metadata.\n", + "summary": "Specific address", + "description": "Obtain information about a specific address.", "parameters": [ { "in": "path", - "name": "pool_id", + "name": "address", "required": true, "schema": { "type": "string" }, - "description": "Bech32 or hexadecimal pool ID.", - "example": "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy" + "description": "Bech32 address.", + "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" } ], "responses": { "200": { - "description": "Return the pool metadata content.", + "description": "Return the address content.", "content": { "application/json": { "schema": { - "anyOf": [ - { - "$ref": "#/components/schemas/pool_metadata" - }, - { - "$ref": "#/components/schemas/empty_object" - } - ] + "$ref": "#/components/schemas/address_content" } } } @@ -4655,32 +4495,32 @@ } } }, - "/pools/{pool_id}/relays": { + "/addresses/{address}/extended": { "get": { "tags": [ - "Cardano » Pools" + "Cardano » Addresses" ], - "summary": "Stake pool relays", - "description": "Relays of a stake pool.", + "summary": "Extended information of a specific address", + "description": "Obtain extended information about a specific address.\n", "parameters": [ { "in": "path", - "name": "pool_id", + "name": "address", "required": true, "schema": { "type": "string" }, - "description": "Bech32 or hexadecimal pool ID.", - "example": "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy" + "description": "Bech32 address.", + "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" } ], "responses": { "200": { - "description": "Return the pool relays information content.", + "description": "Return the address content.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/pool_relays" + "$ref": "#/components/schemas/address_content_extended" } } } @@ -4706,70 +4546,32 @@ } } }, - "/pools/{pool_id}/delegators": { + "/addresses/{address}/total": { "get": { "tags": [ - "Cardano » Pools" + "Cardano » Addresses" ], - "summary": "Stake pool delegators", - "description": "List of current stake pools delegators.", + "summary": "Address details", + "description": "Obtain details about an address.", "parameters": [ { "in": "path", - "name": "pool_id", + "name": "address", "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + "description": "Bech32 address.", + "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" } ], "responses": { "200": { - "description": "Return the pool delegations.", + "description": "Return the Address details.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/pool_delegators" + "$ref": "#/components/schemas/address_content_total" } } } @@ -4795,23 +4597,23 @@ } } }, - "/pools/{pool_id}/blocks": { + "/addresses/{address}/utxos": { "get": { "tags": [ - "Cardano » Pools" + "Cardano » Addresses" ], - "summary": "Stake pool blocks", - "description": "List of stake pools blocks.", + "summary": "Address UTXOs", + "description": "UTXOs of the address.", "parameters": [ { "in": "path", - "name": "pool_id", + "name": "address", "required": true, "schema": { "type": "string" }, - "description": "Bech32 or hexadecimal pool ID.", - "example": "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy" + "description": "Bech32 address.", + "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" }, { "in": "query", @@ -4854,11 +4656,11 @@ ], "responses": { "200": { - "description": "Return the pool block list", + "description": "Return the address content", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/pool_blocks" + "$ref": "#/components/schemas/address_utxo_content" } } } @@ -4884,23 +4686,33 @@ } } }, - "/pools/{pool_id}/updates": { + "/addresses/{address}/utxos/{asset}": { "get": { "tags": [ - "Cardano » Pools" + "Cardano » Addresses" ], - "summary": "Stake pool updates", - "description": "List of certificate updates to the stake pool.", + "summary": "Address UTXOs of a given asset", + "description": "UTXOs of the address.", "parameters": [ { "in": "path", - "name": "pool_id", + "name": "address", "required": true, "schema": { "type": "string" }, - "description": "Bech32 or hexadecimal pool ID.", - "example": "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy" + "description": "Bech32 address.", + "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" + }, + { + "in": "path", + "name": "asset", + "required": true, + "schema": { + "type": "string" + }, + "description": "Concatenation of the policy_id and hex-encoded asset_name", + "example": "b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e" }, { "in": "query", @@ -4943,11 +4755,11 @@ ], "responses": { "200": { - "description": "Return the pool updates history", + "description": "Return the address content", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/pool_updates" + "$ref": "#/components/schemas/address_utxo_content" } } } @@ -4973,14 +4785,25 @@ } } }, - "/assets": { + "/addresses/{address}/txs": { "get": { + "deprecated": true, "tags": [ - "Cardano » Assets" + "Cardano » Addresses" ], - "summary": "Assets", - "description": "List of assets. If an asset is completely burned,\nit will stay on the list with quantity 0 (order of assets is immutable).\n", + "summary": "Address txs", + "description": "Transactions on the address.", "parameters": [ + { + "in": "path", + "name": "address", + "required": true, + "schema": { + "type": "string" + }, + "description": "Bech32 address.", + "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" + }, { "in": "query", "name": "count", @@ -4991,7 +4814,7 @@ "maximum": 100, "default": 100 }, - "description": "The number of results displayed on one page." + "description": "The number of transactions per page." }, { "in": "query", @@ -5017,67 +4840,16 @@ ], "default": "asc" }, - "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\nOrdering in this case is based on the time of the first mint transaction.\n" - } - ], - "responses": { - "200": { - "description": "Return list of assets", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/assets" - } - } - } - }, - "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" - } - } - } - }, - "/assets/{asset}": { - "get": { - "tags": [ - "Cardano » Assets" - ], - "summary": "Specific asset", - "description": "Information about a specific asset", - "parameters": [ - { - "in": "path", - "name": "asset", - "required": true, - "schema": { - "type": "string" - }, - "description": "Concatenation of the policy_id and hex-encoded asset_name", - "example": "b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e" + "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Return the information about a specific asset", + "description": "Return the address content", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/asset" + "$ref": "#/components/schemas/address_txs_content" } } } @@ -5103,23 +4875,23 @@ } } }, - "/assets/{asset}/history": { + "/addresses/{address}/transactions": { "get": { "tags": [ - "Cardano » Assets" + "Cardano » Addresses" ], - "summary": "Asset history", - "description": "History of a specific asset", + "summary": "Address transactions", + "description": "Transactions on the address.", "parameters": [ { "in": "path", - "name": "asset", + "name": "address", "required": true, "schema": { "type": "string" }, - "description": "Concatenation of the policy_id and hex-encoded asset_name", - "example": "b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e" + "description": "Bech32 address.", + "example": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz" }, { "in": "query", @@ -5131,7 +4903,7 @@ "maximum": 100, "default": 100 }, - "description": "The number of results displayed on one page." + "description": "The number of addresses per page." }, { "in": "query", @@ -5158,15 +4930,35 @@ "default": "asc" }, "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + }, + { + "in": "query", + "name": "from", + "required": false, + "schema": { + "type": "string" + }, + "description": "The block number and optionally also index from which (inclusive) to start search for results, concatenated using colon.\nHas to be lower than or equal to `to` parameter.\n", + "example": "8929261" + }, + { + "in": "query", + "name": "to", + "required": false, + "schema": { + "type": "string" + }, + "description": "The block number and optionally also index where (inclusive) to end the search for results, concatenated using colon.\nHas to be higher than or equal to `from` parameter.\n", + "example": "9999269:10" } ], "responses": { "200": { - "description": "Return the information about the history of a specific asset", + "description": "Return the address content", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/asset_history" + "$ref": "#/components/schemas/address_transactions_content" } } } @@ -5192,25 +4984,14 @@ } } }, - "/assets/{asset}/txs": { + "/pools": { "get": { - "deprecated": true, "tags": [ - "Cardano » Assets" + "Cardano » Pools" ], - "summary": "Asset txs", - "description": "List of a specific asset transactions", + "summary": "List of stake pools", + "description": "List of registered stake pools.", "parameters": [ - { - "in": "path", - "name": "asset", - "required": true, - "schema": { - "type": "string" - }, - "description": "Concatenation of the policy_id and hex-encoded asset_name", - "example": "b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e" - }, { "in": "query", "name": "count", @@ -5221,7 +5002,7 @@ "maximum": 100, "default": 100 }, - "description": "The number of results displayed on one page." + "description": "The number of pools per page." }, { "in": "query", @@ -5252,11 +5033,11 @@ ], "responses": { "200": { - "description": "Return the information about the history of a specific asset", + "description": "Return the list of pools.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/asset_txs" + "$ref": "#/components/schemas/pool_list" } } } @@ -5282,24 +5063,14 @@ } } }, - "/assets/{asset}/transactions": { + "/pools/extended": { "get": { "tags": [ - "Cardano » Assets" + "Cardano » Pools" ], - "summary": "Asset transactions", - "description": "List of a specific asset transactions", + "summary": "List of stake pools with additional information", + "description": "List of registered stake pools with additional information.", "parameters": [ - { - "in": "path", - "name": "asset", - "required": true, - "schema": { - "type": "string" - }, - "description": "Concatenation of the policy_id and hex-encoded asset_name", - "example": "b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e" - }, { "in": "query", "name": "count", @@ -5310,7 +5081,7 @@ "maximum": 100, "default": 100 }, - "description": "The number of results displayed on one page." + "description": "The number of pools per page." }, { "in": "query", @@ -5341,11 +5112,11 @@ ], "responses": { "200": { - "description": "Return the information about the history of a specific asset", + "description": "Return the list of pools.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/asset_transactions" + "$ref": "#/components/schemas/pool_list_extended" } } } @@ -5371,24 +5142,14 @@ } } }, - "/assets/{asset}/addresses": { + "/pools/retired": { "get": { "tags": [ - "Cardano » Assets" + "Cardano » Pools" ], - "summary": "Asset addresses", - "description": "List of a addresses containing a specific asset", + "summary": "List of retired stake pools", + "description": "List of already retired pools.", "parameters": [ - { - "in": "path", - "name": "asset", - "required": true, - "schema": { - "type": "string" - }, - "description": "Concatenation of the policy_id and hex-encoded asset_name", - "example": "b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e" - }, { "in": "query", "name": "count", @@ -5399,7 +5160,7 @@ "maximum": 100, "default": 100 }, - "description": "The number of results displayed on one page." + "description": "The number of pools per page." }, { "in": "query", @@ -5430,11 +5191,11 @@ ], "responses": { "200": { - "description": "Return the information about the history of a specific asset", + "description": "Return the pool information content", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/asset_addresses" + "$ref": "#/components/schemas/pool_list_retire" } } } @@ -5460,24 +5221,14 @@ } } }, - "/assets/policy/{policy_id}": { + "/pools/retiring": { "get": { "tags": [ - "Cardano » Assets" + "Cardano » Pools" ], - "summary": "Assets of a specific policy", - "description": "List of asset minted under a specific policy", + "summary": "List of retiring stake pools", + "description": "List of stake pools retiring in the upcoming epochs", "parameters": [ - { - "in": "path", - "name": "policy_id", - "required": true, - "schema": { - "type": "string" - }, - "description": "Specific policy_id", - "example": "476039a0949cf0b22f6a800f56780184c44533887ca6e821007840c3" - }, { "in": "query", "name": "count", @@ -5519,11 +5270,11 @@ ], "responses": { "200": { - "description": "Return the information about a specific asset", + "description": "Return the pool information content", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/asset_policy" + "$ref": "#/components/schemas/pool_list_retire" } } } @@ -5549,21 +5300,82 @@ } } }, - "/scripts": { + "/pools/{pool_id}": { "get": { "tags": [ - "Cardano » Scripts" + "Cardano » Pools" ], - "summary": "Scripts", - "description": "List of scripts.", + "summary": "Specific stake pool", + "description": "Pool information.", "parameters": [ { - "in": "query", - "name": "count", - "required": false, + "in": "path", + "name": "pool_id", + "required": true, "schema": { - "type": "integer", - "minimum": 1, + "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.\n", + "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 }, @@ -5579,7 +5391,7 @@ "maximum": 21474836, "default": 1 }, - "description": "The page number for listing the results." + "description": "The page number for listing the results" }, { "in": "query", @@ -5598,11 +5410,11 @@ ], "responses": { "200": { - "description": "Return list of scripts", + "description": "Return the pool information content.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/scripts" + "$ref": "#/components/schemas/pool_history" } } } @@ -5628,32 +5440,39 @@ } } }, - "/scripts/{script_hash}": { + "/pools/{pool_id}/metadata": { "get": { "tags": [ - "Cardano » Scripts" + "Cardano » Pools" ], - "summary": "Specific script", - "description": "Information about a specific script", + "summary": "Stake pool metadata", + "description": "Stake pool registration metadata.\n", "parameters": [ { "in": "path", - "name": "script_hash", + "name": "pool_id", "required": true, "schema": { "type": "string" }, - "description": "Hash of the script", - "example": "e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e" + "description": "Bech32 or hexadecimal pool ID.", + "example": "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy" } ], "responses": { "200": { - "description": "Return the information about a specific script", + "description": "Return the pool metadata content.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/script" + "anyOf": [ + { + "$ref": "#/components/schemas/pool_metadata" + }, + { + "$ref": "#/components/schemas/empty_object" + } + ] } } } @@ -5679,32 +5498,32 @@ } } }, - "/scripts/{script_hash}/json": { + "/pools/{pool_id}/relays": { "get": { "tags": [ - "Cardano » Scripts" + "Cardano » Pools" ], - "summary": "Script JSON", - "description": "JSON representation of a `timelock` script", + "summary": "Stake pool relays", + "description": "Relays of a stake pool.", "parameters": [ { "in": "path", - "name": "script_hash", + "name": "pool_id", "required": true, "schema": { "type": "string" }, - "description": "Hash of the script", - "example": "e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e" + "description": "Bech32 or hexadecimal pool ID.", + "example": "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy" } ], "responses": { "200": { - "description": "Return the JSON representation of a `timelock` script", + "description": "Return the pool relays information content.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/script_json" + "$ref": "#/components/schemas/pool_relays" } } } @@ -5730,32 +5549,70 @@ } } }, - "/scripts/{script_hash}/cbor": { + "/pools/{pool_id}/delegators": { "get": { "tags": [ - "Cardano » Scripts" + "Cardano » Pools" ], - "summary": "Script CBOR", - "description": "CBOR representation of a `plutus` script", + "summary": "Stake pool delegators", + "description": "List of current stake pools delegators.", "parameters": [ { "in": "path", - "name": "script_hash", + "name": "pool_id", "required": true, "schema": { "type": "string" }, - "description": "Hash of the script", - "example": "e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e" + "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Return the CBOR representation of a `plutus` script", + "description": "Return the pool delegations.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/script_cbor" + "$ref": "#/components/schemas/pool_delegators" } } } @@ -5781,23 +5638,23 @@ } } }, - "/scripts/{script_hash}/redeemers": { + "/pools/{pool_id}/blocks": { "get": { "tags": [ - "Cardano » Scripts" + "Cardano » Pools" ], - "summary": "Redeemers of a specific script", - "description": "List of redeemers of a specific script", + "summary": "Stake pool blocks", + "description": "List of stake pools blocks.", "parameters": [ { "in": "path", - "name": "script_hash", + "name": "pool_id", "required": true, "schema": { "type": "string" }, - "description": "Hash of the script", - "example": "e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e" + "description": "Bech32 or hexadecimal pool ID.", + "example": "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy" }, { "in": "query", @@ -5840,11 +5697,11 @@ ], "responses": { "200": { - "description": "Return the information about redeemers of a specific script", + "description": "Return the pool block list", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/script_redeemers" + "$ref": "#/components/schemas/pool_blocks" } } } @@ -5870,32 +5727,70 @@ } } }, - "/scripts/datum/{datum_hash}": { + "/pools/{pool_id}/updates": { "get": { "tags": [ - "Cardano » Scripts" + "Cardano » Pools" ], - "summary": "Datum value", - "description": "Query JSON value of a datum by its hash", + "summary": "Stake pool updates", + "description": "List of certificate updates to the stake pool.", "parameters": [ { "in": "path", - "name": "datum_hash", + "name": "pool_id", "required": true, "schema": { "type": "string" }, - "description": "Hash of the datum", - "example": "db583ad85881a96c73fbb26ab9e24d1120bb38f45385664bb9c797a2ea8d9a2d" + "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Return the datum value", + "description": "Return the pool updates history", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/script_datum" + "$ref": "#/components/schemas/pool_updates" } } } @@ -5921,32 +5816,70 @@ } } }, - "/scripts/datum/{datum_hash}/cbor": { + "/pools/{pool_id}/votes": { "get": { "tags": [ - "Cardano » Scripts" + "Cardano » Pools" ], - "summary": "Datum CBOR value", - "description": "Query CBOR serialised datum by its hash", + "summary": "Stake pool votes", + "description": "History of stake pools votes.", "parameters": [ { "in": "path", - "name": "datum_hash", + "name": "pool_id", "required": true, "schema": { "type": "string" }, - "description": "Hash of the datum", - "example": "db583ad85881a96c73fbb26ab9e24d1120bb38f45385664bb9c797a2ea8d9a2d" - } - ], - "responses": { - "200": { - "description": "Return the CBOR serialised datum value", + "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + } + ], + "responses": { + "200": { + "description": "Return the pool votes.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/script_datum_cbor" + "$ref": "#/components/schemas/pool_votes" } } } @@ -5972,52 +5905,60 @@ } } }, - "/utils/addresses/xpub/{xpub}/{role}/{index}": { + "/assets": { "get": { "tags": [ - "Cardano » Utilities" + "Cardano » Assets" ], - "summary": "Derive an address", - "description": "Derive Shelley address from an xpub", + "summary": "Assets", + "description": "List of assets. If an asset is completely burned,\nit will stay on the list with quantity 0 (order of assets is immutable).\n", "parameters": [ { - "in": "path", - "name": "xpub", - "required": true, + "in": "query", + "name": "count", + "required": false, "schema": { - "type": "string" + "type": "integer", + "minimum": 1, + "maximum": 100, + "default": 100 }, - "description": "Hex xpub", - "example": "d507c8f866691bd96e131334c355188b1a1d0b2fa0ab11545075aab332d77d9eb19657ad13ee581b56b0f8d744d66ca356b93d42fe176b3de007d53e9c4c4e7a" + "description": "The number of results displayed on one page." }, { - "in": "path", - "name": "role", - "required": true, + "in": "query", + "name": "page", + "required": false, "schema": { - "type": "integer" + "type": "integer", + "minimum": 1, + "maximum": 21474836, + "default": 1 }, - "description": "Account role", - "example": 0 + "description": "The page number for listing the results." }, { - "in": "path", - "name": "index", - "required": true, + "in": "query", + "name": "order", + "required": false, "schema": { - "type": "integer" + "type": "string", + "enum": [ + "asc", + "desc" + ], + "default": "asc" }, - "description": "Address index", - "example": 2 + "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\nOrdering in this case is based on the time of the first mint transaction.\n" } ], "responses": { "200": { - "description": "Return derivated Shelley address", + "description": "Return list of assets", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/utils_addresses_xpub" + "$ref": "#/components/schemas/assets" } } } @@ -6043,54 +5984,32 @@ } } }, - "/utils/txs/evaluate": { - "post": { + "/assets/{asset}": { + "get": { "tags": [ - "Cardano » Utilities" + "Cardano » Assets" ], - "summary": "Submit a transaction for execution units evaluation", - "description": "Submit an already serialized transaction to evaluate how much execution units it requires.\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", + "summary": "Specific asset", + "description": "Information about a specific asset", "parameters": [ { - "in": "header", - "name": "Content-Type", + "in": "path", + "name": "asset", "required": true, "schema": { - "type": "string", - "enum": [ - "application/cbor" - ] - } - } - ], - "x-codeSamples": [ - { - "lang": "Shell", - "label": "cURL", - "source": "# Assuming `tx.data` is a CBOR serialized transaction on the file-system.\n# (encoded using base16 or base64)\ncurl \"https://cardano-mainnet.blockfrost.io/api/v0/utils/txs/evaluate\" \\\n -X POST \\\n -H \"Content-Type: application/cbor\" \\\n -H \"project_id: $PROJECT_ID\" \\\n --data @./tx.data\n" + "type": "string" + }, + "description": "Concatenation of the policy_id and hex-encoded asset_name", + "example": "b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e" } ], - "requestBody": { - "description": "The transaction to submit, serialized in CBOR.\n", - "required": true, - "content": { - "application/cbor": { - "schema": { - "type": "string", - "description": "The transaction to submit, serialized in CBOR.\n" - }, - "example": "83a400818258208911f640d452c3be4ff3d89db63b41ce048c056951286e2e28bbf8a51588ab44000181825839009493315cd92eb5d8c4304e67b7e16ae36d61d34502694657811a2c8e32c728d3861e164cab28cb8f006448139c8f1740ffb8e7aa9e5232dc1a10b2531f021a00029519075820cb798b0bce50604eaf2e0dc89367896b18f0a6ef6b32b57e3c9f83f8ee71e608a1008182582073fea80d424276ad0978d4fe5310e8bc2d485f5f6bb3bf87612989f112ad5a7d5840c40425229749a9434763cf01b492057fd56d7091a6372eaa777a1c9b1ca508c914e6a4ee9c0d40fc10952ed668e9ad65378a28b149de6bd4204bd9f095b0a902a11907b0a1667469636b657281a266736f757263656b736f757263655f6e616d656576616c7565736675676961742076656e69616d206d696e7573\n" - } - } - }, "responses": { "200": { - "description": "\n
\n Hosted Endpoint only available for hosted variant.\n
\n", + "summary": "Asset history", + "description": "History of a specific asset", "parameters": [ { - "in": "header", - "name": "Content-Type", + "in": "path", + "name": "asset", "required": true, + "schema": { + "type": "string" + }, + "description": "Concatenation of the policy_id and hex-encoded asset_name", + "example": "b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e" + }, + { + "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": [ - "application/json" - ] + "asc", + "desc" + ], + "default": "asc" + }, + "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + } + ], + "responses": { + "200": { + "description": "Return the information about the history of a specific asset", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/asset_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" } + } + } + }, + "/assets/{asset}/txs": { + "get": { + "deprecated": true, + "tags": [ + "Cardano » Assets" ], - "requestBody": { - "description": "JSON payload", - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "cbor": { - "type": "string", - "description": "Transaction CBOR (encoded using base64 or base16)." - }, - "additionalUtxoSet": { - "type": "array", - "description": "Additional UTXO as an array of tuples [TxIn, TxOut]. See https://ogmios.dev/mini-protocols/local-tx-submission/#additional-utxo-set.", - "items": { - "type": "array", - "minItems": 2, - "maxItems": 2, - "items": { - "anyOf": [ - { - "type": "object", - "description": "TxIn", - "properties": { - "txId": { - "type": "string", - "description": "Transaction hash for the input" - }, - "index": { - "type": "number", - "description": "Index of the output within the transaction" - } - } - }, - { - "type": "object", - "description": "TxOut", - "properties": { - "address": { - "type": "string", - "description": "Output address" - }, - "value": { - "type": "object", - "properties": { - "coins": { - "type": "number", - "description": "Lovelace amount" - }, - "assets": { - "type": "object", - "description": "Assets amount", - "additionalProperties": { - "type": "number" - } - } - }, - "required": [ - "coins" - ] - }, - "datum_hash": { - "type": "string" - }, - "datum": { - "type": "object", - "additionalProperties": true - }, - "script": { - "type": "object", - "additionalProperties": true - } - }, - "required": [ - "address", - "value" - ] - } - ] - } - } - } - }, - "required": [ - "cbor" - ] - } - } - } - }, - "x-codeSamples": [ + "summary": "Asset txs", + "description": "List of a specific asset transactions", + "parameters": [ { - "lang": "Shell", - "label": "cURL", - "source": "# Assuming TxCbor is a CBOR serialized transaction encoded using base16 or base64\n# For a structure of additional UTXO set see https://ogmios.dev/mini-protocols/local-tx-submission/#additional-utxo-set\ncurl \"https://cardano-mainnet.blockfrost.io/api/v0/utils/txs/evaluate/utxos\" \\\n -X POST \\\n -H \"Content-Type: application/json\" \\\n -H \"project_id: $PROJECT_ID\" \\\n -d '{\"cbor\":\"\n
\n Hosted Endpoint only available for hosted variant.\n
\n", - "x-codeSamples": [ + "summary": "Asset transactions", + "description": "List of a specific asset transactions", + "parameters": [ { - "lang": "Shell", - "label": "cURL", - "source": "curl \"https://ipfs.blockfrost.io/api/v0/ipfs/add\" \\\n -X POST \\\n -H \"project_id: $PROJECT_ID\" \\\n -F \"file=@./README.md\"\n" + "in": "path", + "name": "asset", + "required": true, + "schema": { + "type": "string" + }, + "description": "Concatenation of the policy_id and hex-encoded asset_name", + "example": "b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e" + }, + { + "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "type": "object", - "properties": { - "file": { - "type": "string", - "format": "binary" - } - } - } - } - } - }, "responses": { "200": { - "description": "Returns information about added IPFS object", + "description": "Return the information about the history of a specific asset", "content": { "application/json": { "schema": { - "type": "object", - "properties": { - "name": { - "type": "string", - "example": "README.md", - "description": "Name of the file" - }, - "ipfs_hash": { - "type": "string", - "example": "QmZbHqiCxKEVX7QfijzJTkZiSi3WEVTcvANgNAWzDYgZDr", - "description": "IPFS hash of the file" - }, - "size": { - "type": "string", - "example": "125297", - "description": "IPFS node size in Bytes" - } - }, - "required": [ - "name", - "ipfs_hash", - "size" - ] + "$ref": "#/components/schemas/asset_transactions" } } } @@ -6362,37 +6303,70 @@ } } }, - "/ipfs/gateway/{IPFS_path}": { - "servers": [ - { - "url": "https://ipfs.blockfrost.io/api/v0" - } - ], + "/assets/{asset}/addresses": { "get": { "tags": [ - "IPFS » Gateway" + "Cardano » Assets" ], - "summary": "Relay to an IPFS gateway", - "description": "Retrieve an object from the IPFS gateway (useful if you do not want to rely on a public gateway, such as `ipfs.blockfrost.dev`).\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", + "summary": "Asset addresses", + "description": "List of a addresses containing a specific asset", "parameters": [ { "in": "path", + "name": "asset", "required": true, - "name": "IPFS_path", + "schema": { + "type": "string" + }, + "description": "Concatenation of the policy_id and hex-encoded asset_name", + "example": "b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e" + }, + { + "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", - "description": "Path to the IPFS object" - } + "enum": [ + "asc", + "desc" + ], + "default": "asc" + }, + "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Returns the object content", + "description": "Return the information about the history of a specific asset", "content": { - "application/octet-stream": { + "application/json": { "schema": { - "type": "string", - "format": "binary" + "$ref": "#/components/schemas/asset_addresses" } } } @@ -6418,55 +6392,70 @@ } } }, - "/ipfs/pin/add/{IPFS_path}": { - "servers": [ - { - "url": "https://ipfs.blockfrost.io/api/v0" - } - ], - "post": { + "/assets/policy/{policy_id}": { + "get": { "tags": [ - "IPFS » Pins" + "Cardano » Assets" ], - "summary": "Pin an object", - "description": "Pinning is necessary to avoid regular garbage collection (deletion) of IPFS objects. Non-pinned objects are regularly being removed without prior notice. Pinned objects are counted in your user storage quota.", + "summary": "Assets of a specific policy", + "description": "List of asset minted under a specific policy", "parameters": [ { "in": "path", + "name": "policy_id", "required": true, - "name": "IPFS_path", + "schema": { + "type": "string" + }, + "description": "Specific policy_id", + "example": "476039a0949cf0b22f6a800f56780184c44533887ca6e821007840c3" + }, + { + "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", - "description": "Path to the IPFS object" - } + "enum": [ + "asc", + "desc" + ], + "default": "asc" + }, + "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Returns pinned object", + "description": "Return the information about a specific asset", "content": { "application/json": { "schema": { - "type": "object", - "properties": { - "ipfs_hash": { - "type": "string", - "example": "QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8", - "description": "IPFS hash of the pinned object" - }, - "state": { - "type": "string", - "enum": [ - "queued|pinned|unpinned|failed|gc" - ], - "example": "queued", - "description": "State of the pin action" - } - }, - "required": [ - "ipfs_hash", - "state" - ] + "$ref": "#/components/schemas/asset_policy" } } } @@ -6483,9 +6472,6 @@ "418": { "$ref": "#/components/responses/418" }, - "425": { - "$ref": "#/components/responses/425-2" - }, "429": { "$ref": "#/components/responses/429" }, @@ -6495,18 +6481,13 @@ } } }, - "/ipfs/pin/list": { - "servers": [ - { - "url": "https://ipfs.blockfrost.io/api/v0" - } - ], + "/scripts": { "get": { "tags": [ - "IPFS » Pins" + "Cardano » Scripts" ], - "summary": "List pinned objects", - "description": "List objects pinned to local storage\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", + "summary": "Scripts", + "description": "List of scripts.", "parameters": [ { "in": "query", @@ -6549,51 +6530,11 @@ ], "responses": { "200": { - "description": "Returns pinned objects", + "description": "Return list of scripts", "content": { "application/json": { "schema": { - "type": "array", - "items": { - "type": "object", - "properties": { - "time_created": { - "type": "integer", - "description": "Creation time of the IPFS object on our backends", - "example": 1615551024 - }, - "time_pinned": { - "type": "integer", - "description": "Pin time of the IPFS object on our backends", - "example": 1615551024 - }, - "ipfs_hash": { - "type": "string", - "description": "IPFS hash of the pinned object", - "example": "QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx" - }, - "size": { - "type": "string", - "description": "Size of the object in Bytes", - "example": "1615551024" - }, - "state": { - "type": "string", - "enum": [ - "queued|pinned|unpinned|failed|gc" - ], - "description": "State of the pinned object, which is `queued` when we are retriving object. If this\nis successful the state is changed to `pinned` or `failed` if not. The state `gc` means the\npinned item has been garbage collected due to account being over storage quota or after it has\nbeen moved to `unpinned` state by removing the object pin.\n", - "example": "pinned" - } - }, - "required": [ - "time_created", - "time_pinned", - "ipfs_hash", - "size", - "state" - ] - } + "$ref": "#/components/schemas/scripts" } } } @@ -6619,73 +6560,32 @@ } } }, - "/ipfs/pin/list/{IPFS_path}": { - "servers": [ - { - "url": "https://ipfs.blockfrost.io/api/v0" - } - ], + "/scripts/{script_hash}": { "get": { "tags": [ - "IPFS » Pins" + "Cardano » Scripts" ], - "summary": "Get details about pinned object", - "description": "Get information about locally pinned IPFS object\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", + "summary": "Specific script", + "description": "Information about a specific script", "parameters": [ { "in": "path", + "name": "script_hash", "required": true, - "name": "IPFS_path", "schema": { - "type": "string", - "description": "The path to the IPFS object" - } + "type": "string" + }, + "description": "Hash of the script", + "example": "e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e" } ], "responses": { "200": { - "description": "Returns the pins pinned", + "description": "Return the information about a specific script", "content": { "application/json": { "schema": { - "type": "object", - "properties": { - "time_created": { - "type": "integer", - "description": "Time of the creation of the IPFS object on our backends", - "example": 1615551024 - }, - "time_pinned": { - "type": "integer", - "description": "Time of the pin of the IPFS object on our backends", - "example": 1615551024 - }, - "ipfs_hash": { - "type": "string", - "description": "IPFS hash of the pinned object", - "example": "QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx" - }, - "size": { - "type": "string", - "description": "Size of the object in Bytes", - "example": "1615551024" - }, - "state": { - "type": "string", - "enum": [ - "queued|pinned|unpinned|failed|gc" - ], - "description": "State of the pinned object. We define 5 states: `queued`, `pinned`, `unpinned`, `failed`, `gc`.\nWhen the object is pending retrieval (i.e. after `/ipfs/pin/add/{IPFS_path}`), the state is `queued`.\nIf the object is already successfully retrieved, state is changed to `pinned` or `failed` otherwise.\nWhen object is unpinned (i.e. after `/ipfs/pin/remove/{IPFS_path}`) it is marked for garbage collection.\nState `gc` means that a previously `unpinned` item has been garbage collected due to account being over storage quota.\n", - "example": "pinned" - } - }, - "required": [ - "time_created", - "time_pinned", - "ipfs_hash", - "size", - "state" - ] + "$ref": "#/components/schemas/script" } } } @@ -6711,55 +6611,32 @@ } } }, - "/ipfs/pin/remove/{IPFS_path}": { - "servers": [ - { - "url": "https://ipfs.blockfrost.io/api/v0" - } - ], - "post": { + "/scripts/{script_hash}/json": { + "get": { "tags": [ - "IPFS » Pins" + "Cardano » Scripts" ], - "summary": "Remove a IPFS pin", - "description": "Remove pinned objects from local storage\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", + "summary": "Script JSON", + "description": "JSON representation of a `timelock` script", "parameters": [ { "in": "path", + "name": "script_hash", "required": true, - "name": "IPFS_path", "schema": { - "type": "string", - "description": "The path to the IPFS object" - } + "type": "string" + }, + "description": "Hash of the script", + "example": "e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e" } ], "responses": { "200": { - "description": "Returns the pins removed", + "description": "Return the JSON representation of a `timelock` script", "content": { "application/json": { "schema": { - "type": "object", - "properties": { - "ipfs_hash": { - "type": "string", - "example": "QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8", - "description": "IPFS hash of the pinned object" - }, - "state": { - "type": "string", - "enum": [ - "queued|pinned|unpinned|failed|gc" - ], - "example": "unpinned", - "description": "State of the pin action" - } - }, - "required": [ - "ipfs_hash", - "state" - ] + "$ref": "#/components/schemas/script_json" } } } @@ -6785,20 +6662,32 @@ } } }, - "/metrics": { + "/scripts/{script_hash}/cbor": { "get": { "tags": [ - "Metrics" + "Cardano » Scripts" + ], + "summary": "Script CBOR", + "description": "CBOR representation of a `plutus` script", + "parameters": [ + { + "in": "path", + "name": "script_hash", + "required": true, + "schema": { + "type": "string" + }, + "description": "Hash of the script", + "example": "e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e" + } ], - "summary": "Blockfrost usage metrics", - "description": "History of your Blockfrost usage metrics in the past 30 days.", "responses": { "200": { - "description": "Return the last 30 days of metrics", + "description": "Return the CBOR representation of a `plutus` script", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/metrics" + "$ref": "#/components/schemas/script_cbor" } } } @@ -6824,20 +6713,70 @@ } } }, - "/metrics/endpoints": { + "/scripts/{script_hash}/redeemers": { "get": { "tags": [ - "Metrics" + "Cardano » Scripts" + ], + "summary": "Redeemers of a specific script", + "description": "List of redeemers of a specific script", + "parameters": [ + { + "in": "path", + "name": "script_hash", + "required": true, + "schema": { + "type": "string" + }, + "description": "Hash of the script", + "example": "e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e" + }, + { + "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + } ], - "summary": "Blockfrost endpoint usage metrics", - "description": "History of your Blockfrost usage metrics per endpoint in the past 30 days.\n", "responses": { "200": { - "description": "Return the last 30 days of metrics", + "description": "Return the information about redeemers of a specific script", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/metrics_endpoints" + "$ref": "#/components/schemas/script_redeemers" } } } @@ -6863,20 +6802,32 @@ } } }, - "/network": { + "/scripts/datum/{datum_hash}": { "get": { "tags": [ - "Cardano » Network" + "Cardano » Scripts" + ], + "summary": "Datum value", + "description": "Query JSON value of a datum by its hash", + "parameters": [ + { + "in": "path", + "name": "datum_hash", + "required": true, + "schema": { + "type": "string" + }, + "description": "Hash of the datum", + "example": "db583ad85881a96c73fbb26ab9e24d1120bb38f45385664bb9c797a2ea8d9a2d" + } ], - "summary": "Network information", - "description": "Return detailed network information.", "responses": { "200": { - "description": "Return detailed network information.", + "description": "Return the datum value", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/network" + "$ref": "#/components/schemas/script_datum" } } } @@ -6902,20 +6853,32 @@ } } }, - "/network/eras": { + "/scripts/datum/{datum_hash}/cbor": { "get": { "tags": [ - "Cardano » Network" + "Cardano » Scripts" + ], + "summary": "Datum CBOR value", + "description": "Query CBOR serialised datum by its hash", + "parameters": [ + { + "in": "path", + "name": "datum_hash", + "required": true, + "schema": { + "type": "string" + }, + "description": "Hash of the datum", + "example": "db583ad85881a96c73fbb26ab9e24d1120bb38f45385664bb9c797a2ea8d9a2d" + } ], - "summary": "Query summary of blockchain eras", - "description": "Returns start and end of each era along with\nparameters that can vary between hard forks.\n", "responses": { "200": { - "description": "Returns era summaries content.", + "description": "Return the CBOR serialised datum value", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/network-eras" + "$ref": "#/components/schemas/script_datum_cbor" } } } @@ -6932,9 +6895,6 @@ "418": { "$ref": "#/components/responses/418" }, - "425": { - "$ref": "#/components/responses/425" - }, "429": { "$ref": "#/components/responses/429" }, @@ -6944,31 +6904,52 @@ } } }, - "/nutlink/{address}": { + "/utils/addresses/xpub/{xpub}/{role}/{index}": { "get": { "tags": [ - "Nut.link" + "Cardano » Utilities" ], - "summary": "Specific nut.link address", - "description": "List metadata about specific address", + "summary": "Derive an address", + "description": "Derive Shelley address from an xpub", "parameters": [ { "in": "path", + "name": "xpub", "required": true, - "name": "address", "schema": { - "type": "string", - "description": "Address of a metadata oracle" - } + "type": "string" + }, + "description": "Hex xpub", + "example": "d507c8f866691bd96e131334c355188b1a1d0b2fa0ab11545075aab332d77d9eb19657ad13ee581b56b0f8d744d66ca356b93d42fe176b3de007d53e9c4c4e7a" + }, + { + "in": "path", + "name": "role", + "required": true, + "schema": { + "type": "integer" + }, + "description": "Account role", + "example": 0 + }, + { + "in": "path", + "name": "index", + "required": true, + "schema": { + "type": "integer" + }, + "description": "Address index", + "example": 2 } ], "responses": { "200": { - "description": "Return the metadata about metadata oracle", + "description": "Return derivated Shelley address", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/nutlink_address" + "$ref": "#/components/schemas/utils_addresses_xpub" } } } @@ -6994,69 +6975,54 @@ } } }, - "/nutlink/{address}/tickers": { - "get": { + "/utils/txs/evaluate": { + "post": { "tags": [ - "Nut.link" + "Cardano » Utilities" ], - "summary": "List of tickers of an oracle", - "description": "List of records of a specific oracle", + "summary": "Submit a transaction for execution units evaluation", + "description": "Submit an already serialized transaction to evaluate how much execution units it requires.\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", "parameters": [ { - "in": "path", + "in": "header", + "name": "Content-Type", "required": true, - "name": "address", "schema": { "type": "string", - "description": "Address of a metadata oracle" + "enum": [ + "application/cbor" + ] } - }, + } + ], + "x-codeSamples": [ { - "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + "lang": "Shell", + "label": "cURL", + "source": "# Assuming `tx.data` is a CBOR serialized transaction on the file-system.\n# (encoded using base16 or base64)\ncurl \"https://cardano-mainnet.blockfrost.io/api/v0/utils/txs/evaluate\" \\\n -X POST \\\n -H \"Content-Type: application/cbor\" \\\n -H \"project_id: $PROJECT_ID\" \\\n --data @./tx.data\n" } ], + "requestBody": { + "description": "The transaction to submit, serialized in CBOR.\n", + "required": true, + "content": { + "application/cbor": { + "schema": { + "type": "string", + "description": "The transaction to submit, serialized in CBOR.\n" + }, + "example": "83a400818258208911f640d452c3be4ff3d89db63b41ce048c056951286e2e28bbf8a51588ab44000181825839009493315cd92eb5d8c4304e67b7e16ae36d61d34502694657811a2c8e32c728d3861e164cab28cb8f006448139c8f1740ffb8e7aa9e5232dc1a10b2531f021a00029519075820cb798b0bce50604eaf2e0dc89367896b18f0a6ef6b32b57e3c9f83f8ee71e608a1008182582073fea80d424276ad0978d4fe5310e8bc2d485f5f6bb3bf87612989f112ad5a7d5840c40425229749a9434763cf01b492057fd56d7091a6372eaa777a1c9b1ca508c914e6a4ee9c0d40fc10952ed668e9ad65378a28b149de6bd4204bd9f095b0a902a11907b0a1667469636b657281a266736f757263656b736f757263655f6e616d656576616c7565736675676961742076656e69616d206d696e7573\n" + } + } + }, "responses": { "200": { - "description": "Return the tickers provided by the metadata oracle", + "description": "\n
\n Hosted Endpoint only available for hosted variant.\n
\n", "parameters": [ { - "in": "path", + "in": "header", + "name": "Content-Type", "required": true, - "name": "address", "schema": { "type": "string", - "description": "Address of a metadata oracle" + "enum": [ + "application/json" + ] } - }, - { - "in": "path", - "required": true, - "name": "ticker", - "schema": { - "type": "string", - "description": "Ticker for the pool record" + } + ], + "requestBody": { + "description": "JSON payload", + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "cbor": { + "type": "string", + "description": "Transaction CBOR (encoded using base64 or base16)." + }, + "additionalUtxoSet": { + "type": "array", + "description": "Additional UTXO as an array of tuples [TxIn, TxOut]. See https://ogmios.dev/mini-protocols/local-tx-submission/#additional-utxo-set.", + "items": { + "type": "array", + "minItems": 2, + "maxItems": 2, + "items": { + "anyOf": [ + { + "type": "object", + "description": "TxIn", + "properties": { + "txId": { + "type": "string", + "description": "Transaction hash for the input" + }, + "index": { + "type": "number", + "description": "Index of the output within the transaction" + } + } + }, + { + "type": "object", + "description": "TxOut", + "properties": { + "address": { + "type": "string", + "description": "Output address" + }, + "value": { + "type": "object", + "properties": { + "coins": { + "type": "number", + "description": "Lovelace amount" + }, + "assets": { + "type": "object", + "description": "Assets amount", + "additionalProperties": { + "type": "number" + } + } + }, + "required": [ + "coins" + ] + }, + "datum_hash": { + "type": "string" + }, + "datum": { + "type": "object", + "additionalProperties": true + }, + "script": { + "type": "object", + "additionalProperties": true + } + }, + "required": [ + "address", + "value" + ] + } + ] + } + } + } + }, + "required": [ + "cbor" + ] + } } - }, - { - "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." - }, + } + }, + "x-codeSamples": [ { - "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + "lang": "Shell", + "label": "cURL", + "source": "# Assuming TxCbor is a CBOR serialized transaction encoded using base16 or base64\n# For a structure of additional UTXO set see https://ogmios.dev/mini-protocols/local-tx-submission/#additional-utxo-set\ncurl \"https://cardano-mainnet.blockfrost.io/api/v0/utils/txs/evaluate/utxos\" \\\n -X POST \\\n -H \"Content-Type: application/json\" \\\n -H \"project_id: $PROJECT_ID\" \\\n -d '{\"cbor\":\"\n
\n Hosted Endpoint only available for hosted variant.\n
\n", + "x-codeSamples": [ { - "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + "lang": "Shell", + "label": "cURL", + "source": "curl \"https://ipfs.blockfrost.io/api/v0/ipfs/add\" \\\n -X POST \\\n -H \"project_id: $PROJECT_ID\" \\\n -F \"file=@./README.md\"\n" } ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "file": { + "type": "string", + "format": "binary" + } + } + } + } + } + }, "responses": { "200": { - "description": "Return the tickers provided by the metadata oracle", + "description": "Returns information about added IPFS object", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/nutlink_tickers_ticker" + "type": "object", + "properties": { + "name": { + "type": "string", + "example": "README.md", + "description": "Name of the file" + }, + "ipfs_hash": { + "type": "string", + "example": "QmZbHqiCxKEVX7QfijzJTkZiSi3WEVTcvANgNAWzDYgZDr", + "description": "IPFS hash of the file" + }, + "size": { + "type": "string", + "example": "125297", + "description": "IPFS node size in Bytes" + } + }, + "required": [ + "name", + "ipfs_hash", + "size" + ] } } } @@ -7267,907 +7294,2858 @@ } } }, - "/mithril/": { + "/ipfs/gateway/{IPFS_path}": { + "servers": [ + { + "url": "https://ipfs.blockfrost.io/api/v0" + } + ], "get": { "tags": [ - "Cardano » Mithril" + "IPFS » Gateway" ], - "summary": "Get public specifications about the aggregator", - "description": "Returns the specifications related to the aggregator:\n * Open API version\n * URL of Mithril documentation\n * Capabilities of the aggregator\n * Cardano transactions prover capabilities\n", - "responses": { - "200": { - "description": "root found", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AggregatorFeaturesMessage" - } - } - } - }, - "412": { - "description": "API version mismatch" - }, - "default": { - "description": "root error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } + "summary": "Relay to an IPFS gateway", + "description": "Retrieve an object from the IPFS gateway (useful if you do not want to rely on a public gateway, such as `ipfs.blockfrost.dev`).\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", + "parameters": [ + { + "in": "path", + "required": true, + "name": "IPFS_path", + "schema": { + "type": "string", + "description": "Path to the IPFS object" } } - } - } - }, - "/mithril/epoch-settings": { - "get": { - "tags": [ - "Cardano » Mithril" ], - "summary": "Get current epoch settings", - "description": "Returns the information related to the current epoch:\n * protocol parameters for current epoch\n * protocol parameters for next epoch (to setup cryptography, allowing signers to register)\n", "responses": { "200": { - "description": "epoch settings found", + "description": "Returns the object content", "content": { - "application/json": { + "application/octet-stream": { "schema": { - "$ref": "#/components/schemas/EpochSettingsMessage" + "type": "string", + "format": "binary" } } } }, - "412": { - "description": "API version mismatch" + "400": { + "$ref": "#/components/responses/400" }, - "default": { - "description": "epoch settings error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "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" } } } }, - "/mithril/certificate-pending": { - "get": { + "/ipfs/pin/add/{IPFS_path}": { + "servers": [ + { + "url": "https://ipfs.blockfrost.io/api/v0" + } + ], + "post": { "tags": [ - "Cardano » Mithril" + "IPFS » Pins" + ], + "summary": "Pin an object", + "description": "Pinning is necessary to avoid regular garbage collection (deletion) of IPFS objects. Non-pinned objects are regularly being removed without prior notice. Pinned objects are counted in your user storage quota.", + "parameters": [ + { + "in": "path", + "required": true, + "name": "IPFS_path", + "schema": { + "type": "string", + "description": "Path to the IPFS object" + } + } ], - "summary": "Get current pending certificate information", - "description": "Returns the information related to the current pending certificate:\n * protocol parameters, for current and next epoch (to setup cryptography)\n * beacon information (where on the chain the pending certificate should be triggered)\n * entity type of the message that must be signed\n * verification keys of the signers, for current and next epoch\n", "responses": { "200": { - "description": "pending certificate found", + "description": "Returns pinned object", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/CertificatePendingMessage" + "type": "object", + "properties": { + "ipfs_hash": { + "type": "string", + "example": "QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8", + "description": "IPFS hash of the pinned object" + }, + "state": { + "type": "string", + "enum": [ + "queued|pinned|unpinned|failed|gc" + ], + "example": "queued", + "description": "State of the pin action" + } + }, + "required": [ + "ipfs_hash", + "state" + ] } } } }, - "204": { - "description": "no pending certificate available" + "400": { + "$ref": "#/components/responses/400" }, - "412": { - "description": "API version mismatch" + "403": { + "$ref": "#/components/responses/403" }, - "default": { - "description": "pending certificate error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "404": { + "$ref": "#/components/responses/404" + }, + "418": { + "$ref": "#/components/responses/418" + }, + "425": { + "$ref": "#/components/responses/425-2" + }, + "429": { + "$ref": "#/components/responses/429" + }, + "500": { + "$ref": "#/components/responses/500" } } } }, - "/mithril/certificates": { + "/ipfs/pin/list": { + "servers": [ + { + "url": "https://ipfs.blockfrost.io/api/v0" + } + ], "get": { "tags": [ - "Cardano » Mithril" + "IPFS » Pins" ], - "summary": "Get most recent certificates", - "description": "Returns the list of the most recent certificates\n", - "responses": { - "200": { - "description": "certificates found", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CertificateListMessage" - } - } - } + "summary": "List pinned objects", + "description": "List objects pinned to local storage\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", + "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." }, - "412": { - "description": "API version mismatch" + { + "in": "query", + "name": "page", + "required": false, + "schema": { + "type": "integer", + "minimum": 1, + "maximum": 21474836, + "default": 1 + }, + "description": "The page number for listing the results." }, - "default": { - "description": "certificates retrieval error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } - } - } - }, - "/mithril/certificate/{certificate_hash}": { - "get": { - "tags": [ - "Cardano » Mithril" - ], - "summary": "Get certificate by hash", - "description": "Returns the certificate identified by its hash\n", - "parameters": [ { - "name": "certificate_hash", - "in": "path", - "description": "Hash of the certificate to retrieve", - "required": true, + "in": "query", + "name": "order", + "required": false, "schema": { "type": "string", - "format": "bytes" + "enum": [ + "asc", + "desc" + ], + "default": "asc" }, - "example": "7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572" + "description": "The ordering of items from the point of view of the blockchain,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "certificate found", + "description": "Returns pinned objects", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/CertificateMessage" + "type": "array", + "items": { + "type": "object", + "properties": { + "time_created": { + "type": "integer", + "description": "Creation time of the IPFS object on our backends", + "example": 1615551024 + }, + "time_pinned": { + "type": "integer", + "description": "Pin time of the IPFS object on our backends", + "example": 1615551024 + }, + "ipfs_hash": { + "type": "string", + "description": "IPFS hash of the pinned object", + "example": "QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx" + }, + "size": { + "type": "string", + "description": "Size of the object in Bytes", + "example": "1615551024" + }, + "state": { + "type": "string", + "enum": [ + "queued|pinned|unpinned|failed|gc" + ], + "description": "State of the pinned object, which is `queued` when we are retriving object. If this\nis successful the state is changed to `pinned` or `failed` if not. The state `gc` means the\npinned item has been garbage collected due to account being over storage quota or after it has\nbeen moved to `unpinned` state by removing the object pin.\n", + "example": "pinned" + } + }, + "required": [ + "time_created", + "time_pinned", + "ipfs_hash", + "size", + "state" + ] + } } } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "403": { + "$ref": "#/components/responses/403" + }, "404": { - "description": "certificate not found" + "$ref": "#/components/responses/404" }, - "412": { - "description": "API version mismatch" + "418": { + "$ref": "#/components/responses/418" }, - "default": { - "description": "pending certificate error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "429": { + "$ref": "#/components/responses/429" + }, + "500": { + "$ref": "#/components/responses/500" } } } }, - "/mithril/artifact/snapshots": { + "/ipfs/pin/list/{IPFS_path}": { + "servers": [ + { + "url": "https://ipfs.blockfrost.io/api/v0" + } + ], "get": { "tags": [ - "Cardano » Mithril" + "IPFS » Pins" + ], + "summary": "Get details about pinned object", + "description": "Get information about locally pinned IPFS object\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", + "parameters": [ + { + "in": "path", + "required": true, + "name": "IPFS_path", + "schema": { + "type": "string", + "description": "The path to the IPFS object" + } + } ], - "summary": "Get most recent snapshots", - "description": "Returns the list of the most recent snapshots\n", "responses": { "200": { - "description": "snapshots found", + "description": "Returns the pins pinned", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SnapshotListMessage" + "type": "object", + "properties": { + "time_created": { + "type": "integer", + "description": "Time of the creation of the IPFS object on our backends", + "example": 1615551024 + }, + "time_pinned": { + "type": "integer", + "description": "Time of the pin of the IPFS object on our backends", + "example": 1615551024 + }, + "ipfs_hash": { + "type": "string", + "description": "IPFS hash of the pinned object", + "example": "QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx" + }, + "size": { + "type": "string", + "description": "Size of the object in Bytes", + "example": "1615551024" + }, + "state": { + "type": "string", + "enum": [ + "queued|pinned|unpinned|failed|gc" + ], + "description": "State of the pinned object. We define 5 states: `queued`, `pinned`, `unpinned`, `failed`, `gc`.\nWhen the object is pending retrieval (i.e. after `/ipfs/pin/add/{IPFS_path}`), the state is `queued`.\nIf the object is already successfully retrieved, state is changed to `pinned` or `failed` otherwise.\nWhen object is unpinned (i.e. after `/ipfs/pin/remove/{IPFS_path}`) it is marked for garbage collection.\nState `gc` means that a previously `unpinned` item has been garbage collected due to account being over storage quota.\n", + "example": "pinned" + } + }, + "required": [ + "time_created", + "time_pinned", + "ipfs_hash", + "size", + "state" + ] } } } }, - "412": { - "description": "API version mismatch" + "400": { + "$ref": "#/components/responses/400" }, - "default": { - "description": "snapshots retrieval error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "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" } } } }, - "/mithril/artifact/snapshot/{digest}": { - "get": { + "/ipfs/pin/remove/{IPFS_path}": { + "servers": [ + { + "url": "https://ipfs.blockfrost.io/api/v0" + } + ], + "post": { "tags": [ - "Cardano » Mithril" + "IPFS » Pins" ], - "summary": "Get snapshot information", - "description": "Returns the information of a snapshot and where to retrieve its binary content\n", + "summary": "Remove a IPFS pin", + "description": "Remove pinned objects from local storage\n\n\n Hosted Endpoint only available for hosted variant.\n
\n", "parameters": [ { - "name": "digest", "in": "path", - "description": "Digest of the snapshot to retrieve", "required": true, + "name": "IPFS_path", "schema": { "type": "string", - "format": "bytes" - }, - "example": "6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732" + "description": "The path to the IPFS object" + } } ], "responses": { "200": { - "description": "snapshot found", + "description": "Returns the pins removed", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SnapshotMessage" + "type": "object", + "properties": { + "ipfs_hash": { + "type": "string", + "example": "QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8", + "description": "IPFS hash of the pinned object" + }, + "state": { + "type": "string", + "enum": [ + "queued|pinned|unpinned|failed|gc" + ], + "example": "unpinned", + "description": "State of the pin action" + } + }, + "required": [ + "ipfs_hash", + "state" + ] } } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "403": { + "$ref": "#/components/responses/403" + }, "404": { - "description": "snapshot not found" + "$ref": "#/components/responses/404" }, - "412": { - "description": "API version mismatch" + "418": { + "$ref": "#/components/responses/418" }, - "default": { - "description": "snapshot retrieval error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "429": { + "$ref": "#/components/responses/429" + }, + "500": { + "$ref": "#/components/responses/500" } } } }, - "/mithril/artifact/snapshot/{digest}/download": { + "/metrics": { "get": { "tags": [ - "Cardano » Mithril" - ], - "summary": "Download the snapshot", - "description": "Returns the snapshot archive binary content\n", - "parameters": [ - { - "name": "digest", - "in": "path", - "description": "Digest of the snapshot to download", - "required": true, - "schema": { - "type": "string", - "format": "bytes" - }, - "example": "6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732" - } + "Metrics" ], + "summary": "Blockfrost usage metrics", + "description": "History of your Blockfrost usage metrics in the past 30 days.", "responses": { "200": { - "description": "snapshot found", + "description": "Return the last 30 days of metrics", "content": { - "application/gzip": { + "application/json": { "schema": { - "type": "string", - "format": "binary" + "$ref": "#/components/schemas/metrics" } } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "403": { + "$ref": "#/components/responses/403" + }, "404": { - "description": "snapshot not found" + "$ref": "#/components/responses/404" }, - "412": { - "description": "API version mismatch" + "418": { + "$ref": "#/components/responses/418" }, - "default": { - "description": "snapshot retrieval error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "429": { + "$ref": "#/components/responses/429" + }, + "500": { + "$ref": "#/components/responses/500" } } } }, - "/mithril/artifact/mithril-stake-distributions": { + "/metrics/endpoints": { "get": { "tags": [ - "Cardano » Mithril" + "Metrics" ], - "summary": "Get most recent Mithril stake distributions", - "description": "Returns the list of the most recent Mithril stake distributions\n", + "summary": "Blockfrost endpoint usage metrics", + "description": "History of your Blockfrost usage metrics per endpoint in the past 30 days.\n", "responses": { "200": { - "description": "Mithril stake distribution found", + "description": "Return the last 30 days of metrics", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/MithrilStakeDistributionListMessage" + "$ref": "#/components/schemas/metrics_endpoints" } } } }, - "412": { - "description": "API version mismatch" + "400": { + "$ref": "#/components/responses/400" }, - "default": { - "description": "Mithril stake distribution retrieval error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "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" } } } }, - "/mithril/artifact/mithril-stake-distribution/{hash}": { + "/network": { "get": { "tags": [ - "Cardano » Mithril" - ], - "summary": "Get Mithril stake distribution information", - "description": "Returns the information of a Mithril stake distribution\n", - "parameters": [ - { - "name": "hash", - "in": "path", - "description": "Hash of the Mithril stake distribution to retrieve", - "required": true, - "schema": { - "type": "string", - "format": "bytes" - }, - "example": "6da2b104ed68481ef829d72d72c2f6a20142916d17985e01774b14ed49f0fea1" - } + "Cardano » Network" ], + "summary": "Network information", + "description": "Return detailed network information.", "responses": { "200": { - "description": "Mithril stake distribution found", + "description": "Return detailed network information.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/MithrilStakeDistributionMessage" + "$ref": "#/components/schemas/network" } } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "403": { + "$ref": "#/components/responses/403" + }, "404": { - "description": "Mithril stake distribution not found" + "$ref": "#/components/responses/404" }, - "412": { - "description": "API version mismatch" + "418": { + "$ref": "#/components/responses/418" }, - "default": { - "description": "Mithril stake distribution retrieval error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "429": { + "$ref": "#/components/responses/429" + }, + "500": { + "$ref": "#/components/responses/500" } } } }, - "/mithril/artifact/cardano-transactions": { + "/network/eras": { "get": { "tags": [ - "Cardano » Mithril" + "Cardano » Network" ], - "summary": "Get most recent Cardano transactions set snapshots", - "description": "Returns the list of the most recent Cardano transactions set snapshots\n", + "summary": "Query summary of blockchain eras", + "description": "Returns start and end of each era along with\nparameters that can vary between hard forks.\n", "responses": { "200": { - "description": "Cardano transactions set snapshots found", + "description": "Returns era summaries content.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/CardanoTransactionSnapshotListMessage" + "$ref": "#/components/schemas/network-eras" } } } }, - "412": { - "description": "API version mismatch" + "400": { + "$ref": "#/components/responses/400" }, - "default": { - "description": "Cardano transactions set snapshots retrieval error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "418": { + "$ref": "#/components/responses/418" + }, + "425": { + "$ref": "#/components/responses/425" + }, + "429": { + "$ref": "#/components/responses/429" + }, + "500": { + "$ref": "#/components/responses/500" } } } }, - "/mithril/artifact/cardano-transaction/{hash}": { + "/nutlink/{address}": { "get": { "tags": [ - "Cardano » Mithril" + "Nut.link" ], - "summary": "Get Cardano transactions set snapshot information", - "description": "Returns the information of a Cardano transactions set snapshot\n", + "summary": "Specific nut.link address", + "description": "List metadata about specific address", "parameters": [ { - "name": "hash", "in": "path", - "description": "Hash of the Cardano transactions set snapshot to retrieve", "required": true, + "name": "address", "schema": { "type": "string", - "format": "bytes" - }, - "example": "6da2b104ed68481ef829d72d72c2f6a20142916d17985e01774b14ed49f0fea1" + "description": "Address of a metadata oracle" + } } ], "responses": { "200": { - "description": "Cardano transactions set snapshot found", + "description": "Return the metadata about metadata oracle", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/CardanoTransactionSnapshotMessage" + "$ref": "#/components/schemas/nutlink_address" } } } }, - "404": { - "description": "Cardano transactions set snapshot not found" + "400": { + "$ref": "#/components/responses/400" }, - "412": { - "description": "API version mismatch" + "403": { + "$ref": "#/components/responses/403" }, - "default": { - "description": "Cardano transactions set snapshot retrieval error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "404": { + "$ref": "#/components/responses/404" + }, + "418": { + "$ref": "#/components/responses/418" + }, + "429": { + "$ref": "#/components/responses/429" + }, + "500": { + "$ref": "#/components/responses/500" } } } }, - "/mithril/proof/cardano-transaction": { + "/nutlink/{address}/tickers": { "get": { "tags": [ - "Cardano » Mithril" + "Nut.link" ], - "summary": "Get the proofs of a Cardano transaction list", - "description": "Returns the transaction hashes and the corresponding proofs\n", + "summary": "List of tickers of an oracle", + "description": "List of records of a specific oracle", "parameters": [ { - "name": "transaction_hashes", - "in": "query", - "description": "Hashes of the Cardano transactions to retrieve proofs for", + "in": "path", "required": true, + "name": "address", "schema": { - "type": "array", - "items": { - "type": "string", - "format": "bytes", - "example": "6dbb104ed68481ef829a26a20142916d17985e01774d72d72c2f" - } + "type": "string", + "description": "Address of a metadata oracle" + } + }, + { + "in": "query", + "name": "count", + "required": false, + "schema": { + "type": "integer", + "minimum": 1, + "maximum": 100, + "default": 100 }, - "explode": false + "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Cardano transaction proofs found", + "description": "Return the tickers provided by the metadata oracle", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/CardanoTransactionProofMessage" + "$ref": "#/components/schemas/nutlink_address_tickers" } } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "403": { + "$ref": "#/components/responses/403" + }, "404": { - "description": "No Cardano transactions were ever signed" + "$ref": "#/components/responses/404" }, - "412": { - "description": "API version mismatch" + "418": { + "$ref": "#/components/responses/418" }, - "default": { - "description": "Cardano transaction proofs retrieval error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "429": { + "$ref": "#/components/responses/429" + }, + "500": { + "$ref": "#/components/responses/500" } } } }, - "/mithril/signers/registered/{epoch}": { + "/nutlink/{address}/tickers/{ticker}": { "get": { "tags": [ - "Cardano » Mithril" + "Nut.link" ], - "summary": "Get registered signers for an epoch", - "description": "Returns the signers that registered at a given Epoch\n", + "summary": "Specific ticker for an address", + "description": "List of records of a specific ticker", "parameters": [ { - "name": "epoch", "in": "path", - "description": "Cardano Epoch at which the signer registrations are registered", "required": true, + "name": "address", + "schema": { + "type": "string", + "description": "Address of a metadata oracle" + } + }, + { + "in": "path", + "required": true, + "name": "ticker", + "schema": { + "type": "string", + "description": "Ticker for the pool record" + } + }, + { + "in": "query", + "name": "count", + "required": false, "schema": { "type": "integer", - "format": "int64" + "minimum": 1, + "maximum": 100, + "default": 100 }, - "example": 419 + "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" } ], "responses": { "200": { - "description": "Registered Signers found", + "description": "Return the tickers provided by the metadata oracle", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/SignerRegistrationsMessage" + "$ref": "#/components/schemas/nutlink_address_ticker" } } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "403": { + "$ref": "#/components/responses/403" + }, "404": { - "description": "Registered Signers not found" + "$ref": "#/components/responses/404" }, - "412": { - "description": "API version mismatch" + "418": { + "$ref": "#/components/responses/418" }, - "default": { - "description": "Registered Signers retrieval error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "429": { + "$ref": "#/components/responses/429" + }, + "500": { + "$ref": "#/components/responses/500" } } } }, - "/mithril/signers/tickers": { + "/nutlink/tickers/{ticker}": { "get": { "tags": [ - "Cardano » Mithril" + "Nut.link" ], - "summary": "Get the signers known by the aggregator", - "description": "Returns the signers party id and, if available, their pool ticker\n", - "responses": { - "200": { - "description": "Signers found", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SignersTickersMessage" - } - } + "summary": "Specific ticker", + "description": "List of records of a specific ticker", + "parameters": [ + { + "in": "path", + "required": true, + "name": "ticker", + "schema": { + "type": "string", + "description": "Ticker for the pool record" } }, - "412": { - "description": "API version mismatch" + { + "in": "query", + "name": "count", + "required": false, + "schema": { + "type": "integer", + "minimum": 1, + "maximum": 100, + "default": 100 + }, + "description": "The number of results displayed on one page." }, - "default": { - "description": "Signers retrieval error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } + { + "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,\nnot the page listing itself. By default, we return oldest first, newest last.\n" + } + ], + "responses": { + "200": { + "description": "Return the tickers provided by the metadata oracle", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/nutlink_tickers_ticker" + } + } + } + }, + "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" + } + } + } + }, + "/mithril/": { + "get": { + "tags": [ + "Cardano » Mithril" + ], + "summary": "Get public specifications about the aggregator", + "description": "Returns the specifications related to the aggregator:\n * Open API version\n * URL of Mithril documentation\n * Capabilities of the aggregator\n * Cardano transactions prover capabilities\n", + "responses": { + "200": { + "description": "root found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AggregatorFeaturesMessage" + } + } + } + }, + "412": { + "description": "API version mismatch" + }, + "default": { + "description": "root error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + } + } + }, + "/mithril/epoch-settings": { + "get": { + "tags": [ + "Cardano » Mithril" + ], + "summary": "Get current epoch settings", + "description": "Returns the information related to the current epoch:\n * protocol parameters for current epoch\n * protocol parameters for next epoch (to setup cryptography, allowing signers to register)\n", + "responses": { + "200": { + "description": "epoch settings found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EpochSettingsMessage" + } + } + } + }, + "412": { + "description": "API version mismatch" + }, + "default": { + "description": "epoch settings error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + } + } + }, + "/mithril/certificate-pending": { + "get": { + "tags": [ + "Cardano » Mithril" + ], + "summary": "Get current pending certificate information", + "description": "Returns the information related to the current pending certificate:\n * protocol parameters, for current and next epoch (to setup cryptography)\n * beacon information (where on the chain the pending certificate should be triggered)\n * entity type of the message that must be signed\n * verification keys of the signers, for current and next epoch\n", + "responses": { + "200": { + "description": "pending certificate found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CertificatePendingMessage" + } + } + } + }, + "204": { + "description": "no pending certificate available" + }, + "412": { + "description": "API version mismatch" + }, + "default": { + "description": "pending certificate error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + } + } + }, + "/mithril/certificates": { + "get": { + "tags": [ + "Cardano » Mithril" + ], + "summary": "Get most recent certificates", + "description": "Returns the list of the most recent certificates\n", + "responses": { + "200": { + "description": "certificates found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CertificateListMessage" + } + } + } + }, + "412": { + "description": "API version mismatch" + }, + "default": { + "description": "certificates retrieval error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + } + } + }, + "/mithril/certificate/{certificate_hash}": { + "get": { + "tags": [ + "Cardano » Mithril" + ], + "summary": "Get certificate by hash", + "description": "Returns the certificate identified by its hash\n", + "parameters": [ + { + "name": "certificate_hash", + "in": "path", + "description": "Hash of the certificate to retrieve", + "required": true, + "schema": { + "type": "string", + "format": "bytes" + }, + "example": "7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572" + } + ], + "responses": { + "200": { + "description": "certificate found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CertificateMessage" + } + } + } + }, + "404": { + "description": "certificate not found" + }, + "412": { + "description": "API version mismatch" + }, + "default": { + "description": "pending certificate error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + } + } + }, + "/mithril/artifact/snapshots": { + "get": { + "tags": [ + "Cardano » Mithril" + ], + "summary": "Get most recent snapshots", + "description": "Returns the list of the most recent snapshots\n", + "responses": { + "200": { + "description": "snapshots found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SnapshotListMessage" + } + } + } + }, + "412": { + "description": "API version mismatch" + }, + "default": { + "description": "snapshots retrieval error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + } + } + }, + "/mithril/artifact/snapshot/{digest}": { + "get": { + "tags": [ + "Cardano » Mithril" + ], + "summary": "Get snapshot information", + "description": "Returns the information of a snapshot and where to retrieve its binary content\n", + "parameters": [ + { + "name": "digest", + "in": "path", + "description": "Digest of the snapshot to retrieve", + "required": true, + "schema": { + "type": "string", + "format": "bytes" + }, + "example": "6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732" + } + ], + "responses": { + "200": { + "description": "snapshot found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SnapshotMessage" + } + } + } + }, + "404": { + "description": "snapshot not found" + }, + "412": { + "description": "API version mismatch" + }, + "default": { + "description": "snapshot retrieval error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + } + } + }, + "/mithril/artifact/snapshot/{digest}/download": { + "get": { + "tags": [ + "Cardano » Mithril" + ], + "summary": "Download the snapshot", + "description": "Returns the snapshot archive binary content\n", + "parameters": [ + { + "name": "digest", + "in": "path", + "description": "Digest of the snapshot to download", + "required": true, + "schema": { + "type": "string", + "format": "bytes" + }, + "example": "6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732" + } + ], + "responses": { + "200": { + "description": "snapshot found", + "content": { + "application/gzip": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + }, + "404": { + "description": "snapshot not found" + }, + "412": { + "description": "API version mismatch" + }, + "default": { + "description": "snapshot retrieval error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + } + } + }, + "/mithril/artifact/mithril-stake-distributions": { + "get": { + "tags": [ + "Cardano » Mithril" + ], + "summary": "Get most recent Mithril stake distributions", + "description": "Returns the list of the most recent Mithril stake distributions\n", + "responses": { + "200": { + "description": "Mithril stake distribution found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MithrilStakeDistributionListMessage" + } + } + } + }, + "412": { + "description": "API version mismatch" + }, + "default": { + "description": "Mithril stake distribution retrieval error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + } + } + }, + "/mithril/artifact/mithril-stake-distribution/{hash}": { + "get": { + "tags": [ + "Cardano » Mithril" + ], + "summary": "Get Mithril stake distribution information", + "description": "Returns the information of a Mithril stake distribution\n", + "parameters": [ + { + "name": "hash", + "in": "path", + "description": "Hash of the Mithril stake distribution to retrieve", + "required": true, + "schema": { + "type": "string", + "format": "bytes" + }, + "example": "6da2b104ed68481ef829d72d72c2f6a20142916d17985e01774b14ed49f0fea1" + } + ], + "responses": { + "200": { + "description": "Mithril stake distribution found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MithrilStakeDistributionMessage" + } + } + } + }, + "404": { + "description": "Mithril stake distribution not found" + }, + "412": { + "description": "API version mismatch" + }, + "default": { + "description": "Mithril stake distribution retrieval error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + } + } + }, + "/mithril/artifact/cardano-transactions": { + "get": { + "tags": [ + "Cardano » Mithril" + ], + "summary": "Get most recent Cardano transactions set snapshots", + "description": "Returns the list of the most recent Cardano transactions set snapshots\n", + "responses": { + "200": { + "description": "Cardano transactions set snapshots found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CardanoTransactionSnapshotListMessage" + } + } + } + }, + "412": { + "description": "API version mismatch" + }, + "default": { + "description": "Cardano transactions set snapshots retrieval error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + } + } + }, + "/mithril/artifact/cardano-transaction/{hash}": { + "get": { + "tags": [ + "Cardano » Mithril" + ], + "summary": "Get Cardano transactions set snapshot information", + "description": "Returns the information of a Cardano transactions set snapshot\n", + "parameters": [ + { + "name": "hash", + "in": "path", + "description": "Hash of the Cardano transactions set snapshot to retrieve", + "required": true, + "schema": { + "type": "string", + "format": "bytes" + }, + "example": "6da2b104ed68481ef829d72d72c2f6a20142916d17985e01774b14ed49f0fea1" + } + ], + "responses": { + "200": { + "description": "Cardano transactions set snapshot found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CardanoTransactionSnapshotMessage" + } + } + } + }, + "404": { + "description": "Cardano transactions set snapshot not found" + }, + "412": { + "description": "API version mismatch" + }, + "default": { + "description": "Cardano transactions set snapshot retrieval error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + } + } + }, + "/mithril/proof/cardano-transaction": { + "get": { + "tags": [ + "Cardano » Mithril" + ], + "summary": "Get the proofs of a Cardano transaction list", + "description": "Returns the transaction hashes and the corresponding proofs\n", + "parameters": [ + { + "name": "transaction_hashes", + "in": "query", + "description": "Hashes of the Cardano transactions to retrieve proofs for", + "required": true, + "schema": { + "type": "array", + "items": { + "type": "string", + "format": "bytes", + "example": "6dbb104ed68481ef829a26a20142916d17985e01774d72d72c2f" + } + }, + "explode": false + } + ], + "responses": { + "200": { + "description": "Cardano transaction proofs found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CardanoTransactionProofMessage" + } + } + } + }, + "404": { + "description": "No Cardano transactions were ever signed" + }, + "412": { + "description": "API version mismatch" + }, + "default": { + "description": "Cardano transaction proofs retrieval error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + } + } + }, + "/mithril/signers/registered/{epoch}": { + "get": { + "tags": [ + "Cardano » Mithril" + ], + "summary": "Get registered signers for an epoch", + "description": "Returns the signers that registered at a given Epoch\n", + "parameters": [ + { + "name": "epoch", + "in": "path", + "description": "Cardano Epoch at which the signer registrations are registered", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + }, + "example": 419 + } + ], + "responses": { + "200": { + "description": "Registered Signers found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SignerRegistrationsMessage" + } + } + } + }, + "404": { + "description": "Registered Signers not found" + }, + "412": { + "description": "API version mismatch" + }, + "default": { + "description": "Registered Signers retrieval error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + } + } + }, + "/mithril/signers/tickers": { + "get": { + "tags": [ + "Cardano » Mithril" + ], + "summary": "Get the signers known by the aggregator", + "description": "Returns the signers party id and, if available, their pool ticker\n", + "responses": { + "200": { + "description": "Signers found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SignersTickersMessage" + } + } + } + }, + "412": { + "description": "API version mismatch" + }, + "default": { + "description": "Signers retrieval error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + } + } + } + }, + "components": { + "schemas": { + "onchain_metadata_cip25": { + "$ref": "#/components/schemas/asset_onchain_metadata_cip25" + }, + "onchain_metadata_cip68_ft_333": { + "$ref": "#/components/schemas/asset_onchain_metadata_cip68_ft_333" + }, + "onchain_metadata_cip68_nft_222": { + "$ref": "#/components/schemas/asset_onchain_metadata_cip68_nft_222" + }, + "onchain_metadata_cip68_rft_444": { + "$ref": "#/components/schemas/asset_onchain_metadata_cip68_rft_444" + }, + "block_content": { + "type": "object", + "properties": { + "time": { + "type": "integer", + "example": 1641338934, + "description": "Block creation time in UNIX time" + }, + "height": { + "type": "integer", + "nullable": true, + "example": 15243593, + "description": "Block number" + }, + "hash": { + "type": "string", + "example": "4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a", + "description": "Hash of the block" + }, + "slot": { + "type": "integer", + "nullable": true, + "example": 412162133, + "description": "Slot number" + }, + "epoch": { + "type": "integer", + "nullable": true, + "example": 425, + "description": "Epoch number" + }, + "epoch_slot": { + "type": "integer", + "nullable": true, + "example": 12, + "description": "Slot within the epoch" + }, + "slot_leader": { + "type": "string", + "example": "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy", + "description": "Bech32 ID of the slot leader or specific block description in case there is no slot leader" + }, + "size": { + "type": "integer", + "example": 3, + "description": "Block size in Bytes" + }, + "tx_count": { + "type": "integer", + "example": 1, + "description": "Number of transactions in the block" + }, + "output": { + "type": "string", + "nullable": true, + "example": "128314491794", + "description": "Total output within the block in Lovelaces" + }, + "fees": { + "type": "string", + "nullable": true, + "example": "592661", + "description": "Total fees within the block in Lovelaces" + }, + "block_vrf": { + "type": "string", + "nullable": true, + "example": "vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty", + "description": "VRF key of the block", + "minLength": 65, + "maxLength": 65 + }, + "op_cert": { + "type": "string", + "nullable": true, + "example": "da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c", + "description": "The hash of the operational certificate of the block producer" + }, + "op_cert_counter": { + "type": "string", + "nullable": true, + "example": "18", + "description": "The value of the counter used to produce the operational certificate" + }, + "previous_block": { + "type": "string", + "nullable": true, + "example": "43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05", + "description": "Hash of the previous block" + }, + "next_block": { + "type": "string", + "nullable": true, + "example": "8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa", + "description": "Hash of the next block" + }, + "confirmations": { + "type": "integer", + "example": 4698, + "description": "Number of block confirmations" + } + }, + "required": [ + "time", + "height", + "hash", + "slot", + "epoch", + "epoch_slot", + "slot_leader", + "size", + "tx_count", + "output", + "fees", + "block_vrf", + "op_cert", + "op_cert_counter", + "previous_block", + "next_block", + "confirmations" + ] + }, + "block_content_txs": { + "type": "array", + "items": { + "type": "string", + "description": "Hash of the transaction" + }, + "example": [ + "8788591983aa73981fc92d6cddbbe643959f5a784e84b8bee0db15823f575a5b", + "4eef6bb7755d8afbeac526b799f3e32a624691d166657e9d862aaeb66682c036", + "52e748c4dec58b687b90b0b40d383b9fe1f24c1a833b7395cdf07dd67859f46f", + "e8073fd5318ff43eca18a852527166aa8008bee9ee9e891f585612b7e4ba700b" + ] + }, + "block_content_array": { + "type": "array", + "items": { + "$ref": "#/components/schemas/block_content" + } + }, + "block_content_addresses": { + "type": "array", + "items": { + "type": "object", + "properties": { + "address": { + "type": "string", + "description": "Address that was affected in the specified block" + }, + "transactions": { + "type": "array", + "description": "List of transactions containing the address either in their inputs or outputs. Sorted by transaction index within a block, ascending.", + "items": { + "type": "object", + "properties": { + "tx_hash": { + "type": "string" + } + }, + "required": [ + "tx_hash" + ] + } + } + }, + "required": [ + "address", + "transactions" + ] + }, + "example": [ + { + "address": "addr1q9ld26v2lv8wvrxxmvg90pn8n8n5k6tdst06q2s856rwmvnueldzuuqmnsye359fqrk8hwvenjnqultn7djtrlft7jnq7dy7wv", + "transactions": [ + { + "tx_hash": "1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0" + } + ] + }, + { + "address": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz", + "transactions": [ + { + "tx_hash": "1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157d0" + } + ] + } + ] + }, + "genesis_content": { + "type": "object", + "properties": { + "active_slots_coefficient": { + "type": "number", + "example": 0.05, + "description": "The proportion of slots in which blocks should be issued" + }, + "update_quorum": { + "type": "integer", + "example": 5, + "description": "Determines the quorum needed for votes on the protocol parameter updates" + }, + "max_lovelace_supply": { + "type": "string", + "example": "45000000000000000", + "description": "The total number of lovelace in the system" + }, + "network_magic": { + "type": "integer", + "example": 764824073, + "description": "Network identifier" + }, + "epoch_length": { + "type": "integer", + "example": 432000, + "description": "Number of slots in an epoch" + }, + "system_start": { + "type": "integer", + "example": 1506203091, + "description": "Time of slot 0 in UNIX time" + }, + "slots_per_kes_period": { + "type": "integer", + "example": 129600, + "description": "Number of slots in an KES period" + }, + "slot_length": { + "type": "integer", + "example": 1, + "description": "Duration of one slot in seconds" + }, + "max_kes_evolutions": { + "type": "integer", + "example": 62, + "description": "The maximum number of time a KES key can be evolved before a pool operator must create a new operational certificate" + }, + "security_param": { + "type": "integer", + "example": 2160, + "description": "Security parameter k" + } + }, + "required": [ + "active_slots_coefficient", + "update_quorum", + "max_lovelace_supply", + "network_magic", + "epoch_length", + "system_start", + "slots_per_kes_period", + "slot_length", + "max_kes_evolutions", + "security_param" + ] + }, + "dreps": { + "type": "array", + "items": { + "type": "object", + "properties": { + "drep_id": { + "type": "string", + "description": "The Bech32 encoded DRep address" + }, + "hex": { + "type": "string", + "description": "The raw bytes of the DRep" + } + }, + "required": [ + "drep_id", + "hex" + ] + }, + "example": [ + { + "drep_id": "drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn", + "hex": "db1bc3c3f99ce68977ceaf27ab4dd917123ef9e73f85c304236eab23" + }, + { + "drep_id": "drep1cxayn4fgy27yaucvhamsvqj3v6835mh3tjjx6x8hdnr4", + "hex": "c1ba49d52822bc4ef30cbf77060251668f1a6ef15ca46d18f76cc758" + } + ] + }, + "drep": { + "type": "object", + "properties": { + "drep_id": { + "type": "string", + "description": "Bech32 encoded DRep address" + }, + "hex": { + "type": "string", + "description": "The raw bytes of the DRep" + }, + "amount": { + "type": "string", + "description": "The total amount of voting power this DRep is delegated." + }, + "active": { + "type": "boolean", + "description": "Registration state of the DRep" + }, + "active_epoch": { + "type": "integer", + "nullable": true, + "description": "Epoch of the most recent action - registration or deregistration" + }, + "has_script": { + "type": "boolean", + "description": "Flag which shows if this DRep credentials are a script hash" + } + }, + "required": [ + "drep_id", + "hex", + "amount", + "active", + "active_epoch", + "has_script" + ], + "example": { + "drep_id": "drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc", + "hex": "a61261172624e8333ceff098648d90f8e404e2e36d5b5f5985cbd35d", + "amount": "2000000", + "active": true, + "active_epoch": 420, + "has_script": true + } + }, + "drep_delegators": { + "type": "array", + "items": { + "type": "object", + "properties": { + "address": { + "type": "string", + "description": "Bech32 encoded stake addresses" + }, + "amount": { + "type": "string", + "description": "Currently delegated amount" + } + }, + "required": [ + "address", + "amount" + ] + }, + "example": [ + { + "address": "stake1ux4vspfvwuus9uwyp5p3f0ky7a30jq5j80jxse0fr7pa56sgn8kha", + "amount": "1137959159981411" + }, + { + "address": "stake1uylayej7esmarzd4mk4aru37zh9yz0luj3g9fsvgpfaxulq564r5u", + "amount": "16958865648" + }, + { + "address": "stake1u8lr2pnrgf8f7vrs9lt79hc3sxm8s2w4rwvgpncks3axx6q93d4ck", + "amount": "18605647" + } + ] + }, + "drep_metadata": { + "type": "object", + "properties": { + "drep_id": { + "type": "string", + "description": "Bech32 encoded addresses" + }, + "hex": { + "type": "string", + "description": "The raw bytes of the DRep" + }, + "url": { + "type": "string", + "nullable": true, + "example": "https://stakenuts.com/drep.json", + "description": "URL to the drep metadata" + }, + "hash": { + "type": "string", + "nullable": true, + "example": "69c0c68cb57f4a5b4a87bad896fc274678e7aea98e200fa14a1cb40c0cab1d8c\"", + "description": "Hash of the metadata file" + }, + "json_metadata": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object", + "additionalProperties": true + }, + { + "type": "array", + "items": {} + }, + { + "type": "integer" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "description": "Content of the JSON metadata (validated CIP-119)" + }, + "bytes": { + "type": "string", + "description": "Content of the metadata (raw)" + } + }, + "required": [ + "drep_id", + "hex", + "url", + "hash", + "json_metadata", + "bytes" + ], + "example": { + "drep_id": "drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc", + "hex": "a61261172624e8333ceff098648d90f8e404e2e36d5b5f5985cbd35d", + "url": "https://aaa.xyz/drep.json", + "hash": "a14a5ad4f36bddc00f92ddb39fd9ac633c0fd43f8bfa57758f9163d10ef916de", + "json_metadata": { + "@context": { + "CIP100": "https://github.com/cardano-foundation/CIPs/blob/master/CIP-0100/README.md#", + "CIP119": "https://github.com/cardano-foundation/CIPs/blob/master/CIP-0119/README.md#", + "hashAlgorithm": "CIP100:hashAlgorithm", + "body": { + "@id": "CIP119:body", + "@context": { + "references": { + "@id": "CIP119:references", + "@container": "@set", + "@context": { + "GovernanceMetadata": "CIP100:GovernanceMetadataReference", + "Other": "CIP100:OtherReference", + "label": "CIP100:reference-label", + "uri": "CIP100:reference-uri" + } + }, + "paymentAddress": "CIP119:paymentAddress", + "givenName": "CIP119:givenName", + "image": { + "@id": "CIP119:image", + "@context": { + "ImageObject": "https://schema.org/ImageObject" + } + }, + "objectives": "CIP119:objectives", + "motivations": "CIP119:motivations", + "qualifications": "CIP119:qualifications" + } + } + }, + "hahsAlgorithm": "blake2b-256", + "body": { + "paymentAddress": "addr1q86dnpkva4mm859c8ur7tjxn57zgsu6vg8pdetkdve3fsacnq7twy06u2ev5759vutpjgzfryx0ud8hzedhzerava35qwh3x34", + "givenName": "Ryan Williams", + "image": { + "@type": "ImageObject", + "contentUrl": "https://avatars.githubusercontent.com/u/44342099?v=4", + "sha256": "2a21e4f7b20c8c72f573707b068fb8fc6d8c64d5035c4e18ecae287947fe2b2e" + }, + "objectives": "Buy myself an island.", + "motivations": "I really would like to own an island.", + "qualifications": "I have my 100m swimming badge, so I would be qualified to be able to swim around island.", + "references": [ + { + "@type": "Other", + "label": "A cool island for Ryan", + "uri": "https://www.google.com/maps/place/World's+only+5th+order+recursive+island/@62.6511465,-97.7946829,15.75z/data=!4m14!1m7!3m6!1s0x5216a167810cee39:0x11431abdfe4c7421!2sWorld's+only+5th+order+recursive+island!8m2!3d62.651114!4d-97.7872244!16s%2Fg%2F11spwk2b6n!3m5!1s0x5216a167810cee39:0x11431abdfe4c7421!8m2!3d62.651114!4d-97.7872244!16s%2Fg%2F11spwk2b6n?authuser=0&entry=ttu" + }, + { + "@type": "Link", + "label": "Ryan's Twitter", + "uri": "https://twitter.com/Ryun1_" + } + ] + } + }, + "bytes": "\\x7b0a20202240636f6e74657874223a207b0a2020202022406c616e6775616765223a2022656e2d7573222c0a2020202022434950313030223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130302f524541444d452e6" } - } - } - }, - "components": { - "schemas": { - "onchain_metadata_cip25": { - "$ref": "#/components/schemas/asset_onchain_metadata_cip25" }, - "onchain_metadata_cip68_ft_333": { - "$ref": "#/components/schemas/asset_onchain_metadata_cip68_ft_333" + "drep_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": "f4097fbdb87ab7c7ab44b30d4e2b81713a058488975d1ab8b05c381dd946a393", + "cert_index": 0, + "action": "registered" + }, + { + "tx_hash": "dd3243af975be4b5bedce4e5f5b483b2386d5ad207d05e0289c1df0eb261447e", + "cert_index": 0, + "action": "deregistered" + } + ] }, - "onchain_metadata_cip68_nft_222": { - "$ref": "#/components/schemas/asset_onchain_metadata_cip68_nft_222" + "drep_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" + }, + { + "tx_hash": "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5", + "cert_index": 3, + "vote": "abstain" + } + ] }, - "onchain_metadata_cip68_rft_444": { - "$ref": "#/components/schemas/asset_onchain_metadata_cip68_rft_444" + "proposals": { + "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." + }, + "governance_type": { + "type": "string", + "enum": [ + "hard_fork_initiation", + "new_committee", + "new_constitution", + "info_action", + "no_confidence", + "parameter_change", + "treasury_withdrawals" + ], + "description": "Type of proposal." + } + }, + "required": [ + "tx_hash", + "cert_index", + "governance_type" + ] + }, + "example": [ + { + "tx_hash": "2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531", + "cert_index": 1, + "governance_type": "treasury_withdrawals" + }, + { + "tx_hash": "71317e951b20aa46e9fbf45a46a6e950d5723a481225519655bf6c60", + "cert_index": 4, + "governance_type": "no_confidence" + } + ] }, - "block_content": { + "proposal": { "type": "object", "properties": { - "time": { + "tx_hash": { + "type": "string", + "description": "Hash of the proposal transaction." + }, + "cert_index": { "type": "integer", - "example": 1641338934, - "description": "Block creation time in UNIX time" + "description": "Index of the certificate within the proposal transaction." + }, + "governance_type": { + "type": "string", + "enum": [ + "hard_fork_initiation", + "new_committee", + "new_constitution", + "info_action", + "no_confidence", + "parameter_change", + "treasury_withdrawals" + ], + "description": "Type of proposal." + }, + "governance_description": { + "additionalProperties": true, + "type": "object", + "nullable": true, + "description": "An object describing the content of this GovActionProposal in a readable way." + }, + "deposit": { + "type": "string", + "description": "The deposit amount paid for this proposal." + }, + "return_address": { + "type": "string", + "description": "Bech32 stake address of the reward address to receive the deposit when it is repaid." + }, + "ratified_epoch": { + "type": "integer", + "nullable": true + }, + "enacted_epoch": { + "type": "integer", + "nullable": true + }, + "dropped_epoch": { + "type": "integer", + "nullable": true + }, + "expired_epoch": { + "type": "integer", + "nullable": true + }, + "expiration": { + "type": "integer", + "description": "Shows the epoch at which this governance action will expire." + }, + "anchor_url": { + "type": "string", + "nullable": true, + "description": "The URL of the offchain anchor data." + }, + "anchor_hash": { + "type": "string", + "nullable": true, + "description": "The hash of the offchain anchor data." + } + }, + "required": [ + "tx_hash", + "cert_index", + "governance_type", + "deposit", + "return_address", + "governance_description", + "ratified_epoch", + "enacted_epoch", + "dropped_epoch", + "expired_epoch", + "expiration", + "anchor_url", + "anchor_hash" + ], + "example": { + "tx_hash": "2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531", + "cert_index": 1, + "governance_type": "treasury_withdrawals", + "deposit": 12000, + "return_address": "stake_test1urd3hs7rlxwwdzthe6hj026dmyt3y0heuulctscyydh2kgck6nkmz", + "governance_description": "TreasuryWithdrawals (fromList [(RewardAcnt {getRwdNetwork = Testnet, getRwdCred = KeyHashObj (KeyHash \"71317e951b20aa46e9fbf45a46a6e950d5723a481225519655bf6c60\")},Coin 20000000)])", + "ratified_epoch": null, + "enacted_epoch": 123, + "dropped_epoch": null, + "expired_epoch": null, + "expiration": 120, + "anchor_url": "https://gist.github.com/123", + "anchor_hash": "50b340624d49823720505e3f0095be0d6cd8f26501e094a6ab9068dd" + } + }, + "proposal_parameters": { + "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" }, - "height": { + "protocol_minor_ver": { "type": "integer", - "nullable": true, - "example": 15243593, - "description": "Block number" + "example": 0, + "description": "Accepted protocol minor version" }, - "hash": { + "min_utxo": { "type": "string", - "example": "4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a", - "description": "Hash of the block" + "example": "1000000", + "description": "Minimum UTXO value" }, - "slot": { - "type": "integer", + "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, - "example": 412162133, - "description": "Slot number" + "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" }, - "epoch": { - "type": "integer", + "price_mem": { + "type": "number", "nullable": true, - "example": 425, - "description": "Epoch number" + "example": 0.0577, + "description": "The per word cost of script memory usage" }, - "epoch_slot": { - "type": "integer", + "price_step": { + "type": "number", "nullable": true, - "example": 12, - "description": "Slot within the epoch" + "example": 0.0000721, + "description": "The cost of script execution step usage" }, - "slot_leader": { + "max_tx_ex_mem": { "type": "string", - "example": "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy", - "description": "Bech32 ID of the slot leader or specific block description in case there is no slot leader" - }, - "size": { - "type": "integer", - "example": 3, - "description": "Block size in Bytes" - }, - "tx_count": { - "type": "integer", - "example": 1, - "description": "Number of transactions in the block" + "nullable": true, + "example": "10000000", + "description": "The maximum number of execution memory allowed to be used in a single transaction" }, - "output": { + "max_tx_ex_steps": { "type": "string", "nullable": true, - "example": "128314491794", - "description": "Total output within the block in Lovelaces" + "example": "10000000000", + "description": "The maximum number of execution steps allowed to be used in a single transaction" }, - "fees": { + "max_block_ex_mem": { "type": "string", "nullable": true, - "example": "592661", - "description": "Total fees within the block in Lovelaces" + "example": "50000000", + "description": "The maximum number of execution memory allowed to be used in a single block" }, - "block_vrf": { + "max_block_ex_steps": { "type": "string", "nullable": true, - "example": "vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty", - "description": "VRF key of the block", - "minLength": 65, - "maxLength": 65 + "example": "40000000000", + "description": "The maximum number of execution steps allowed to be used in a single block" }, - "op_cert": { + "max_val_size": { "type": "string", "nullable": true, - "example": "da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c", - "description": "The hash of the operational certificate of the block producer" + "example": "5000", + "description": "The maximum Val size" }, - "op_cert_counter": { - "type": "string", + "collateral_percent": { + "type": "integer", "nullable": true, - "example": "18", - "description": "The value of the counter used to produce the operational certificate" + "example": 150, + "description": "The percentage of the transactions fee which must be provided as collateral when including non-native scripts" }, - "previous_block": { + "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": "43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05", - "description": "Hash of the previous block" + "example": "34482", + "description": "Cost per UTxO word for Alonzo. Cost per UTxO byte for Babbage and later." }, - "next_block": { + "coins_per_utxo_word": { "type": "string", "nullable": true, - "example": "8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa", - "description": "Hash of the next block" + "example": "34482", + "deprecated": true, + "description": "Cost per UTxO word for Alonzo. Cost per UTxO byte for Babbage and later." }, - "confirmations": { + "cost_model_id": { "type": "integer", - "example": 4698, - "description": "Number of block confirmations" + "format": "int64", + "description": "The CostModel table index for the proposal." + }, + "pvt_motion_no_confidence": { + "type": "number", + "description": "Pool Voting threshold for motion of no-confidence. New in 13.2-Conway." + }, + "pvt_committee_normal": { + "type": "number", + "description": "Pool Voting threshold for new committee/threshold (normal state). New in 13.2-Conway." + }, + "pvt_committee_no_confidence": { + "type": "number", + "description": "Pool Voting threshold for new committee/threshold (state of no-confidence). New in 13.2-Conway." + }, + "pvt_hard_fork_initiation": { + "type": "number", + "description": "Pool Voting threshold for hard-fork initiation. New in 13.2-Conway." + }, + "dvt_motion_no_confidence": { + "type": "number", + "description": "DRep Vote threshold for motion of no-confidence. New in 13.2-Conway." + }, + "dvt_committee_normal": { + "type": "number", + "description": "DRep Vote threshold for new committee/threshold (normal state). New in 13.2-Conway." + }, + "dvt_committee_no_confidence": { + "type": "number", + "description": "DRep Vote threshold for new committee/threshold (state of no-confidence). New in 13.2-Conway." + }, + "dvt_update_to_constitution": { + "type": "number", + "description": "DRep Vote threshold for update to the Constitution. New in 13.2-Conway." + }, + "dvt_hard_fork_initiation": { + "type": "number", + "description": "DRep Vote threshold for hard-fork initiation. New in 13.2-Conway." + }, + "dvt_p_p_network_group": { + "type": "number", + "description": "DRep Vote threshold for protocol parameter changes, network group. New in 13.2-Conway." + }, + "dvt_p_p_economic_group": { + "type": "number", + "description": "DRep Vote threshold for protocol parameter changes, economic group. New in 13.2-Conway." + }, + "dvt_p_p_technical_group": { + "type": "number", + "description": "DRep Vote threshold for protocol parameter changes, technical group. New in 13.2-Conway." + }, + "dvt_p_p_gov_group": { + "type": "number", + "description": "DRep Vote threshold for protocol parameter changes, governance group. New in 13.2-Conway." + }, + "dvt_treasury_withdrawal": { + "type": "number", + "description": "DRep Vote threshold for treasury withdrawal. New in 13.2-Conway." + }, + "committee_min_size": { + "type": "string", + "format": "word64type", + "description": "Minimal constitutional committee size. New in 13.2-Conway." + }, + "committee_max_term_length": { + "type": "string", + "format": "word64type", + "description": "Constitutional committee term limits. New in 13.2-Conway." + }, + "gov_action_lifetime": { + "type": "string", + "format": "word64type", + "description": "Governance action expiration. New in 13.2-Conway." + }, + "gov_action_deposit": { + "type": "string", + "format": "word64type", + "description": "Governance action deposit. New in 13.2-Conway." + }, + "drep_deposit": { + "type": "string", + "format": "word64type", + "description": "DRep deposit amount. New in 13.2-Conway." + }, + "drep_activity": { + "type": "string", + "format": "word64type", + "description": "DRep activity period. New in 13.2-Conway." + }, + "pvtpp_security_group": { + "type": "number", + "nullable": true + }, + "min_fee_ref_script_cost_per_byte": { + "type": "number", + "nullable": true } }, "required": [ - "time", - "height", - "hash", - "slot", - "epoch", - "epoch_slot", - "slot_leader", - "size", - "tx_count", - "output", - "fees", - "block_vrf", - "op_cert", - "op_cert_counter", - "previous_block", - "next_block", - "confirmations" + "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", + "cost_model_id", + "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", + "min_fee_ref_script_cost_per_byte" ] }, - "block_content_txs": { + "proposal_withdrawals": { "type": "array", "items": { - "type": "string", - "description": "Hash of the transaction" + "type": "object", + "properties": { + "stake_address": { + "type": "string", + "example": "stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7", + "description": "Bech32 stake address" + }, + "amount": { + "type": "string", + "description": "Withdrawal amount in Lovelaces" + } + }, + "required": [ + "stake_address", + "amount" + ] }, "example": [ - "8788591983aa73981fc92d6cddbbe643959f5a784e84b8bee0db15823f575a5b", - "4eef6bb7755d8afbeac526b799f3e32a624691d166657e9d862aaeb66682c036", - "52e748c4dec58b687b90b0b40d383b9fe1f24c1a833b7395cdf07dd67859f46f", - "e8073fd5318ff43eca18a852527166aa8008bee9ee9e891f585612b7e4ba700b" - ] - }, - "block_content_array": { - "type": "array", - "items": { - "$ref": "#/components/schemas/block_content" - } + { + "stake_address": "stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7", + "amount": "454541212442" + }, + { + "stake_address": "stake1xx2g2c9dx2nhhehyrezyxpkstoppcqmu9hk63qgfkccw5rqttygt2", + "amount": "97846969" + } + ] }, - "block_content_addresses": { + "proposal_votes": { "type": "array", "items": { "type": "object", "properties": { - "address": { + "tx_hash": { "type": "string", - "description": "Address that was affected in the specified block" + "description": "Hash of the voting transaction." }, - "transactions": { - "type": "array", - "description": "List of transactions containing the address either in their inputs or outputs. Sorted by transaction index within a block, ascending.", - "items": { - "type": "object", - "properties": { - "tx_hash": { - "type": "string" - } - }, - "required": [ - "tx_hash" - ] - } + "cert_index": { + "type": "integer", + "description": "Index of the certificate within the voting transaction." + }, + "voter_role": { + "type": "string", + "enum": [ + "constitutional_committee", + "drep", + "spo" + ], + "description": "The role of the voter. Can be one of constitutional_committee, drep, spo." + }, + "voter": { + "type": "string", + "description": "The actual voter." + }, + "vote": { + "type": "string", + "enum": [ + "yes", + "no", + "abstain" + ], + "description": "The Vote. Can be one of yes, no, abstain." } }, "required": [ - "address", - "transactions" + "tx_hash", + "cert_index", + "voter_role", + "voter", + "vote" ] }, "example": [ { - "address": "addr1q9ld26v2lv8wvrxxmvg90pn8n8n5k6tdst06q2s856rwmvnueldzuuqmnsye359fqrk8hwvenjnqultn7djtrlft7jnq7dy7wv", - "transactions": [ - { - "tx_hash": "1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0" - } - ] + "tx_hash": "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5", + "cert_index": 2, + "voter_role": "drep", + "voter": "drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn", + "vote": "yes" }, { - "address": "addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz", - "transactions": [ - { - "tx_hash": "1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157d0" - } - ] + "tx_hash": "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5", + "cert_index": 3, + "voter_role": "constitutional_committee", + "voter": "53a42debdc7ffd90085ab7fd9800b63e6d1c9ac481ba6eb7b6a844e4", + "vote": "abstain" } ] }, - "genesis_content": { + "proposal_metadata": { "type": "object", "properties": { - "active_slots_coefficient": { - "type": "number", - "example": 0.05, - "description": "The proportion of slots in which blocks should be issued" - }, - "update_quorum": { - "type": "integer", - "example": 5, - "description": "Determines the quorum needed for votes on the protocol parameter updates" - }, - "max_lovelace_supply": { + "tx_hash": { "type": "string", - "example": "45000000000000000", - "description": "The total number of lovelace in the system" - }, - "network_magic": { - "type": "integer", - "example": 764824073, - "description": "Network identifier" - }, - "epoch_length": { - "type": "integer", - "example": 432000, - "description": "Number of slots in an epoch" - }, - "system_start": { - "type": "integer", - "example": 1506203091, - "description": "Time of slot 0 in UNIX time" + "description": "Off-chain metadata of a proposal with a specific transaction hash" }, - "slots_per_kes_period": { + "cert_index": { "type": "integer", - "example": 129600, - "description": "Number of slots in an KES period" + "description": "Off-chain metadata of a proposal with a specific transaction cert_index" }, - "slot_length": { - "type": "integer", - "example": 1, - "description": "Duration of one slot in seconds" + "url": { + "type": "string", + "nullable": true, + "example": "https://abc.xyz/gov.json", + "description": "URL to the proposal metadata" }, - "max_kes_evolutions": { - "type": "integer", - "example": 62, - "description": "The maximum number of time a KES key can be evolved before a pool operator must create a new operational certificate" + "hash": { + "type": "string", + "nullable": true, + "example": "69c0c68cb57f4a5b4a87bad896fc274678e7aea98e200fa14a1cb40c0cab1d8c\"", + "description": "Hash of the metadata file" }, - "security_param": { - "type": "integer", - "example": 2160, - "description": "Security parameter k" + "json_metadata": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object", + "additionalProperties": true + }, + { + "type": "array", + "items": {} + }, + { + "type": "integer" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "description": "Content of the JSON metadata (validated CIP-108)" } }, "required": [ - "active_slots_coefficient", - "update_quorum", - "max_lovelace_supply", - "network_magic", - "epoch_length", - "system_start", - "slots_per_kes_period", - "slot_length", - "max_kes_evolutions", - "security_param" - ] + "tx_hash", + "cert_index", + "url", + "hash", + "json_metadata", + "bytes" + ], + "example": { + "tx_hash": "257d75c8ddb0434e9b63e29ebb6241add2b835a307aa33aedba2effe09ed4ec8", + "cert_index": 2, + "url": "https://raw.githubusercontent.com/carloslodelar/proposals/main/pv10.json", + "hash": "ffa226f3863aca006172d559cf46bb8b883a47233962ae2fc94c158d7de6fa81", + "json_metadata": { + "body": { + "title": "Hardfork to Protocol version 10", + "abstract": "Let's have sanchoNet in full governance as soon as possible", + "rationale": "Let's keep testing stuff", + "motivation": "PV9 is not as fun as PV10", + "references": [ + { + "uri": "", + "@type": "Other", + "label": "Hardfork to PV10" + } + ] + }, + "authors": [ + { + "name": "Carlos", + "witness": { + "publicKey": "7ea09a34aebb13c9841c71397b1cabfec5ddf950405293dee496cac2f437480a", + "signature": "a476985b4cc0d457f247797611799a6f6a80fc8cb7ec9dcb5a8223888d0618e30de165f3d869c4a0d9107d8a5b612ad7c5e42441907f5b91796f0d7187d64a01", + "witnessAlgorithm": "ed25519" + } + } + ], + "@context": { + "body": { + "@id": "CIP108:body", + "@context": { + "title": "CIP108:title", + "abstract": "CIP108:abstract", + "rationale": "CIP108:rationale", + "motivation": "CIP108:motivation", + "references": { + "@id": "CIP108:references", + "@context": { + "uri": "CIP100:reference-uri", + "Other": "CIP100:OtherReference", + "label": "CIP100:reference-label", + "referenceHash": { + "@id": "CIP108:referenceHash", + "@context": { + "hashDigest": "CIP108:hashDigest", + "hashAlgorithm": "CIP100:hashAlgorithm" + } + }, + "GovernanceMetadata": "CIP100:GovernanceMetadataReference" + }, + "@container": "@set" + } + } + }, + "CIP100": "https://github.com/cardano-foundation/CIPs/blob/master/CIP-0100/README.md#", + "CIP108": "https://github.com/cardano-foundation/CIPs/blob/master/CIP-0108/README.md#", + "authors": { + "@id": "CIP100:authors", + "@context": { + "name": "http://xmlns.com/foaf/0.1/name", + "witness": { + "@id": "CIP100:witness", + "@context": { + "publicKey": "CIP100:publicKey", + "signature": "CIP100:signature", + "witnessAlgorithm": "CIP100:witnessAlgorithm" + } + } + }, + "@container": "@set" + }, + "@language": "en-us", + "hashAlgorithm": "CIP100:hashAlgorithm" + }, + "hashAlgorithm": "blake2b-256" + }, + "bytes": "\\x7b0a20202240636f6e74657874223a207b0a2020202022406c616e6775616765223a2022656e2d7573222c0a2020202022434950313030223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130302f524541444d452e6d6423222c0a2020202022434950313038223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130382f524541444d452e6d6423222c0a202020202268617368416c676f726974686d223a20224349503130303a68617368416c676f726974686d222c0a2020202022626f6479223a207b0a20202020202022406964223a20224349503130383a626f6479222c0a2020202020202240636f6e74657874223a207b0a2020202020202020227265666572656e636573223a207b0a2020202020202020202022406964223a20224349503130383a7265666572656e636573222c0a202020202020202020202240636f6e7461696e6572223a202240736574222c0a202020202020202020202240636f6e74657874223a207b0a20202020202020202020202022476f7665726e616e63654d65746164617461223a20224349503130303a476f7665726e616e63654d657461646174615265666572656e6365222c0a202020202020202020202020224f74686572223a20224349503130303a4f746865725265666572656e6365222c0a202020202020202020202020226c6162656c223a20224349503130303a7265666572656e63652d6c6162656c222c0a20202020202020202020202022757269223a20224349503130303a7265666572656e63652d757269222c0a202020202020202020202020227265666572656e636548617368223a207b0a202020202020202020202020202022406964223a20224349503130383a7265666572656e636548617368222c0a20202020202020202020202020202240636f6e74657874223a207b0a202020202020202020202020202020202268617368446967657374223a20224349503130383a68617368446967657374222c0a202020202020202020202020202020202268617368416c676f726974686d223a20224349503130303a68617368416c676f726974686d220a20202020202020202020202020207d0a2020202020202020202020207d0a202020202020202020207d0a20202020202020207d2c0a2020202020202020227469746c65223a20224349503130383a7469746c65222c0a2020202020202020226162737472616374223a20224349503130383a6162737472616374222c0a2020202020202020226d6f7469766174696f6e223a20224349503130383a6d6f7469766174696f6e222c0a202020202020202022726174696f6e616c65223a20224349503130383a726174696f6e616c65220a2020202020207d0a202020207d2c0a2020202022617574686f7273223a207b0a20202020202022406964223a20224349503130303a617574686f7273222c0a2020202020202240636f6e7461696e6572223a202240736574222c0a2020202020202240636f6e74657874223a207b0a2020202020202020226e616d65223a2022687474703a2f2f786d6c6e732e636f6d2f666f61662f302e312f6e616d65222c0a2020202020202020227769746e657373223a207b0a2020202020202020202022406964223a20224349503130303a7769746e657373222c0a202020202020202020202240636f6e74657874223a207b0a202020202020202020202020227769746e657373416c676f726974686d223a20224349503130303a7769746e657373416c676f726974686d222c0a202020202020202020202020227075626c69634b6579223a20224349503130303a7075626c69634b6579222c0a202020202020202020202020227369676e6174757265223a20224349503130303a7369676e6174757265220a202020202020202020207d0a20202020202020207d0a2020202020207d0a202020207d0a20207d2c0a20202268617368416c676f726974686d223a2022626c616b6532622d323536222c0a202022626f6479223a207b0a20202020227469746c65223a202248617264666f726b20746f2050726f746f636f6c2076657273696f6e203130222c0a20202020226162737472616374223a20224c6574277320686176652073616e63686f4e657420696e2066756c6c20676f7665726e616e636520617320736f6f6e20617320706f737369626c65222c0a20202020226d6f7469766174696f6e223a2022505639206973206e6f742061732066756e2061732050563130222c0a2020202022726174696f6e616c65223a20224c65742773206b6565702074657374696e67207374756666222c0a20202020227265666572656e636573223a205b0a2020202020207b0a2020202020202020224074797065223a20224f74686572222c0a2020202020202020226c6162656c223a202248617264666f726b20746f2050563130222c0a202020202020202022757269223a2022220a2020202020207d0a202020205d0a20207d2c0a202022617574686f7273223a205b0a202020207b0a202020202020226e616d65223a20224361726c6f73222c0a202020202020227769746e657373223a207b0a2020202020202020227769746e657373416c676f726974686d223a202265643235353139222c0a2020202020202020227075626c69634b6579223a202237656130396133346165626231336339383431633731333937623163616266656335646466393530343035323933646565343936636163326634333734383061222c0a2020202020202020227369676e6174757265223a20226134373639383562346363306434353766323437373937363131373939613666366138306663386362376563396463623561383232333838386430363138653330646531363566336438363963346130643931303764386135623631326164376335653432343431393037663562393137393666306437313837643634613031220a2020202020207d0a202020207d0a20205d0a7d" + } }, "epoch_content": { "type": "object", @@ -8422,8 +10400,116 @@ "type": "string", "nullable": true, "example": "34482", - "description": "Cost per UTxO word for Alonzo. Cost per UTxO byte for Babbage and later.", - "deprecated": true + "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 + }, + "min_fee_ref_script_cost_per_byte": { + "type": "number", + "nullable": true } }, "required": [ @@ -8458,7 +10544,29 @@ "collateral_percent", "max_collateral_inputs", "coins_per_utxo_size", - "coins_per_utxo_word" + "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", + "min_fee_ref_script_cost_per_byte" ] }, "epoch_content_array": { @@ -9440,7 +11548,13 @@ "type": "string", "nullable": true, "example": "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy", - "description": "Bech32 pool ID that owns the account" + "description": "Bech32 pool ID to which this account is delegated" + }, + "drep_id": { + "type": "string", + "nullable": true, + "example": "drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc", + "description": "Bech32 drep ID to which this account is delegated" } }, "required": [ @@ -9453,7 +11567,8 @@ "reserves_sum", "treasury_sum", "withdrawable_amount", - "pool_id" + "pool_id", + "drep_id" ] }, "account_reward_content": { @@ -11275,6 +13390,43 @@ } ] }, + "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" + } + ] + }, "assets": { "type": "array", "items": { diff --git a/openapi.yaml b/openapi.yaml index eb1f2795..3c03e40b 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -1,6 +1,6 @@ openapi: 3.0.3 info: - version: 0.1.64 + version: 0.1.65 title: Blockfrost.io ~ API Documentation x-logo: url: 'https://staging.blockfrost.io/images/logo.svg' @@ -336,6 +336,7 @@ tags: - name: Cardano » Assets - name: Cardano » Blocks - name: Cardano » Epochs + - name: Cardano » Governance - name: Cardano » Ledger - name: Cardano » Mempool - name: Cardano » Metadata @@ -929,103 +930,110 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /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: + /governance/dreps: get: tags: - - Cardano » Epochs - summary: Latest epoch protocol parameters - description: Return the protocol parameters for the latest epoch. + - Cardano » Governance + summary: Delegate Representatives (DReps) + description: Return the information about Delegate Representatives (DReps) + 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. + + Ordering in this case is based on the time of the first mint + transaction. responses: '200': - description: Return the data about the epoch + description: Paginated array with the Delegate Representatives (DReps) data content: application/json: schema: - $ref: '#/components/schemas/epoch_param_content' + $ref: '#/components/schemas/dreps' '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}': + '/governance/dreps/{drep_id}': get: tags: - - Cardano » Epochs - summary: Specific epoch - description: Return the content of the requested epoch. + - Cardano » Governance + summary: Specific DRep + description: DRep information. parameters: - in: path - name: number + name: drep_id required: true schema: - type: integer - description: Number of the epoch - example: 225 + type: string + description: Bech32 or hexadecimal DRep ID. + example: drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc responses: '200': - description: Return the epoch data. + description: Return the DRep information content content: application/json: schema: - $ref: '#/components/schemas/epoch_content' + $ref: '#/components/schemas/drep' '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': + '/governance/dreps/{drep_id}/delegators': get: tags: - - Cardano » Epochs - summary: Listing of next epochs - description: Return the list of epochs following a specific epoch. + - Cardano » Governance + summary: DRep delegators + description: List of Drep delegators. parameters: - in: path - name: number + name: drep_id required: true schema: - type: integer - description: Number of the requested epoch. - example: 225 + type: string + description: Bech32 or hexadecimal drep ID. + example: drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn - in: query name: count required: false @@ -1044,150 +1052,82 @@ paths: 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 + name: order required: false schema: - type: integer - minimum: 1 - maximum: 21474836 - default: 1 - description: The page number for listing the results + 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 epoch data + description: Return the DRep delegations content: application/json: schema: - $ref: '#/components/schemas/epoch_content_array' + $ref: '#/components/schemas/drep_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' - '/epochs/{number}/stakes': + '/governance/dreps/{drep_id}/metadata': get: tags: - - Cardano » Epochs - summary: Stake distribution - description: Return the active stake distribution for the specified epoch. + - Cardano » Governance + summary: DRep metadata + description: DRep metadata information. parameters: - in: path - name: number + name: drep_id 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. + type: string + description: Bech32 or hexadecimal DRep ID. + example: drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc responses: '200': - description: Return the data about the epoch + description: Return the DRep metadata content. content: application/json: schema: - $ref: '#/components/schemas/epoch_stake_content' + $ref: '#/components/schemas/drep_metadata' '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}': + '/governance/dreps/{drep_id}/updates': get: tags: - - Cardano » Epochs - summary: Stake distribution by pool - description: >- - Return the active stake distribution for the epoch specified by stake - pool. + - Cardano » Governance + summary: DRep updates + description: List of certificate updates to the DRep. parameters: - in: path - name: number - required: true - schema: - type: integer - description: Number of the epoch - example: 225 - - in: path + name: drep_id required: true - name: pool_id schema: type: string - description: Stake pool ID to filter - example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + description: Bech32 or hexadecimal DRep ID. + example: drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc - in: query name: count required: false @@ -1206,39 +1146,51 @@ paths: 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 + description: Return the Drep updates history content: application/json: schema: - $ref: '#/components/schemas/epoch_stake_pool_content' + $ref: '#/components/schemas/drep_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' - '/epochs/{number}/blocks': + '/governance/dreps/{drep_id}/votes': get: tags: - - Cardano » Epochs - summary: Block distribution - description: Return the blocks minted for the epoch specified. + - Cardano » Governance + summary: DRep votes + description: History of Drep votes. parameters: - in: path - name: number + name: drep_id required: true schema: - type: integer - description: Number of the epoch - example: 225 + type: string + description: Bech32 or hexadecimal drep ID. + example: drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn - in: query name: count required: false @@ -1273,44 +1225,28 @@ paths: newest last. responses: '200': - description: Return the data about the epoch + description: Return the DRep votes content: application/json: schema: - $ref: '#/components/schemas/epoch_block_content' + $ref: '#/components/schemas/drep_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' - '/epochs/{number}/blocks/{pool_id}': + /governance/proposals: get: tags: - - Cardano » Epochs - summary: Block distribution by pool - description: Return the block minted for the epoch specified by stake pool. + - Cardano » Governance + summary: Proposals + description: Return the information about Proposals 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 @@ -1343,80 +1279,92 @@ paths: not the page listing itself. By default, we return oldest first, newest last. + + Ordering in this case is based on the time of the first mint + transaction. responses: '200': - description: Return the data about the epoch + description: Paginated array with the proposal data content: application/json: schema: - $ref: '#/components/schemas/epoch_block_content' + $ref: '#/components/schemas/proposals' '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': + '/governance/proposals/{tx_hash}/{cert_index}': get: tags: - - Cardano » Epochs - summary: Protocol parameters - description: Return the protocol parameters for the epoch specified. + - Cardano » Governance + summary: Specific proposal + description: Proposal information. parameters: - in: path - name: number + name: tx_hash + required: true + schema: + type: string + description: Transaction hash. + example: 2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531 + - in: path + name: cert_index required: true schema: type: integer - description: Number of the epoch - example: 225 + description: Transaction index. + example: 1 responses: '200': - description: Return the data about the epoch + description: Return the proposal information content content: application/json: schema: - $ref: '#/components/schemas/epoch_param_content' + $ref: '#/components/schemas/proposal' '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' - '/txs/{hash}': + '/governance/proposals/{tx_hash}/{cert_index}/parameters': get: tags: - - Cardano » Transactions - summary: Specific transaction - description: Return content of the requested transaction. + - Cardano » Governance + summary: Specific parameters proposal + description: Parameters proposal details. parameters: - in: path - name: hash + name: tx_hash required: true schema: type: string - format: 64-character case-sensitive hexadecimal string. - description: Hash of the requested transaction - example: 6e5f825c42c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + description: Transaction hash. + example: 2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531 + - in: path + name: cert_index + required: true + schema: + type: integer + description: Transaction index. + example: 1 responses: '200': - description: Return the contents of the transaction. + description: Return the proposal parameters content content: application/json: schema: - $ref: '#/components/schemas/tx_content' + $ref: '#/components/schemas/proposal_parameters' '400': $ref: '#/components/responses/400' '403': @@ -1429,28 +1377,34 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/txs/{hash}/utxos': + '/governance/proposals/{tx_hash}/{cert_index}/withdrawals': get: tags: - - Cardano » Transactions - summary: Transaction UTXOs - description: Return the inputs and UTXOs of the specific transaction. + - Cardano » Governance + summary: Specific withdrawals proposal + description: Parameters withdrawals details. parameters: - in: path - name: hash + name: tx_hash required: true schema: type: string - format: 64-character case-sensitive hexadecimal string - description: Hash of the requested transaction - example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + description: Transaction hash. + example: 2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531 + - in: path + name: cert_index + required: true + schema: + type: integer + description: Transaction index. + example: 1 responses: '200': - description: Return the contents of the transaction. + description: Return the proposal withdrawals content content: application/json: schema: - $ref: '#/components/schemas/tx_content_utxo' + $ref: '#/components/schemas/proposal_withdrawals' '400': $ref: '#/components/responses/400' '403': @@ -1463,104 +1417,127 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/txs/{hash}/stakes': + '/governance/proposals/{tx_hash}/{cert_index}/votes': get: tags: - - Cardano » Transactions - summary: Transaction stake addresses certificates - description: > - Obtain information about (de)registration of stake addresses within a - transaction. + - Cardano » Governance + summary: Proposal votes + description: History of Proposal votes. parameters: - in: path - name: hash + name: tx_hash required: true schema: type: string - format: 64-character case-sensitive hexadecimal string. - description: Hash of the requested transaction. - example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + description: Transaction hash. + example: 2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531 + - in: path + name: cert_index + required: true + schema: + type: integer + description: Transaction index. + example: 1 + - 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: > - Obtain information about (de)registration of stake addresses within - a transaction. + description: Return the Proposal votes content: application/json: schema: - $ref: '#/components/schemas/tx_content_stake_addr' + $ref: '#/components/schemas/proposal_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' - '/txs/{hash}/delegations': + '/governance/proposals/{tx_hash}/{cert_index}/metadata': get: tags: - - Cardano » Transactions - summary: Transaction delegation certificates - description: > - Obtain information about delegation certificates of a specific - transaction. + - Cardano » Governance + summary: Specific proposal metadata + description: Proposal metadata information. parameters: - in: path - name: hash + name: tx_hash required: true schema: type: string - format: 64-character case-sensitive hexadecimal string - description: Hash of the requested transaction. - example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + description: Transaction hash of the proposal. + example: 2403339d2f344202fb3583353e11a693a82860e59e65939dcb0e2ac72336d631 + - in: path + name: cert_index + required: true + schema: + type: integer + description: Transaction index of the proposal. + example: 0 responses: '200': - description: >- - Obtain information about delegation certificates of a specific - transaction + description: Return the proposal information content content: application/json: schema: - $ref: '#/components/schemas/tx_content_delegations' + $ref: '#/components/schemas/proposal_metadata' '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' - '/txs/{hash}/withdrawals': + /epochs/latest: get: tags: - - Cardano » Transactions - summary: Transaction withdrawal - description: Obtain information about withdrawals of a specific transaction. - parameters: - - in: path - name: hash - required: true - schema: - type: string - format: 64-character case-sensitive hexadecimal string - description: Hash of the requested transaction. - example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + - Cardano » Epochs + summary: Latest epoch + description: 'Return the information about the latest, therefore current, epoch.' responses: '200': - description: Obtain information about withdrawals of a specific transaction. + description: Return the data about the epoch content: application/json: schema: - $ref: '#/components/schemas/tx_content_withdrawals' + $ref: '#/components/schemas/epoch_content' '400': $ref: '#/components/responses/400' '403': @@ -1573,32 +1550,19 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/txs/{hash}/mirs': + /epochs/latest/parameters: get: tags: - - Cardano » Transactions - summary: Transaction MIRs - description: >- - Obtain information about Move Instantaneous Rewards (MIRs) of a specific - transaction. - parameters: - - in: path - name: hash - required: true - schema: - type: string - format: 64-character case-sensitive hexadecimal string - description: Hash of the requested transaction. - example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + - Cardano » Epochs + summary: Latest epoch protocol parameters + description: Return the protocol parameters for the latest epoch. responses: '200': - description: >- - Obtain information about Move Instantaneous Rewards (MIRs) of a - specific transaction. + description: Return the data about the epoch content: application/json: schema: - $ref: '#/components/schemas/tx_content_mirs' + $ref: '#/components/schemas/epoch_param_content' '400': $ref: '#/components/responses/400' '403': @@ -1611,32 +1575,27 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/txs/{hash}/pool_updates': + '/epochs/{number}': get: tags: - - Cardano » Transactions - summary: Transaction stake pool registration and update certificates - description: > - Obtain information about stake pool registration and update certificates - of a specific transaction. + - Cardano » Epochs + summary: Specific epoch + description: Return the content of the requested epoch. parameters: - in: path - name: hash + name: number required: true schema: - type: string - format: 64-character case-sensitive hexadecimal string - description: Hash of the requested transaction - example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + type: integer + description: Number of the epoch + example: 225 responses: '200': - description: >- - Obtain information about stake pool certificates of a specific - transaction + description: Return the epoch data. content: application/json: schema: - $ref: '#/components/schemas/tx_content_pool_certs' + $ref: '#/components/schemas/epoch_content' '400': $ref: '#/components/responses/400' '403': @@ -1649,32 +1608,45 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/txs/{hash}/pool_retires': + '/epochs/{number}/next': get: tags: - - Cardano » Transactions - summary: Transaction stake pool retirement certificates - description: > - Obtain information about stake pool retirements within a specific - transaction. + - Cardano » Epochs + summary: Listing of next epochs + description: Return the list of epochs following a specific epoch. parameters: - in: path - name: hash + name: number required: true schema: - type: string - format: 64-character case-sensitive hexadecimal string. - description: Hash of the requested transaction - example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + 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: > - Obtain information about stake pool retirements within a specific - transaction. + description: Return the data about the epoch content: application/json: schema: - $ref: '#/components/schemas/tx_content_pool_retires' + $ref: '#/components/schemas/epoch_content_array' '400': $ref: '#/components/responses/400' '403': @@ -1687,28 +1659,45 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/txs/{hash}/metadata': + '/epochs/{number}/previous': get: tags: - - Cardano » Transactions - summary: Transaction metadata - description: Obtain the transaction metadata. + - Cardano » Epochs + summary: Listing of previous epochs + description: Return the list of epochs preceding a specific epoch. parameters: - in: path - name: hash + name: number required: true schema: - type: string - format: 64-character case-sensitive hexadecimal string. - description: Hash of the requested transaction - example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b - responses: - '200': - description: Obtain metadata information associated with a specific transaction. - content: - application/json: - schema: - $ref: '#/components/schemas/tx_content_metadata' + 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': @@ -1721,28 +1710,45 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/txs/{hash}/metadata/cbor': + '/epochs/{number}/stakes': get: tags: - - Cardano » Transactions - summary: Transaction metadata in CBOR - description: Obtain the transaction metadata in CBOR. + - Cardano » Epochs + summary: Stake distribution + description: Return the active stake distribution for the specified epoch. parameters: - in: path - name: hash + name: number required: true schema: - type: string - format: 64-character case-sensitive hexadecimal string. - description: Hash of the requested transaction - example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + 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: Obtain metadata information associated with a specific transaction. + description: Return the data about the epoch content: application/json: schema: - $ref: '#/components/schemas/tx_content_metadata_cbor' + $ref: '#/components/schemas/epoch_stake_content' '400': $ref: '#/components/responses/400' '403': @@ -1755,28 +1761,54 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/txs/{hash}/redeemers': + '/epochs/{number}/stakes/{pool_id}': get: tags: - - Cardano » Transactions - summary: Transaction redeemers - description: Obtain the transaction redeemers. + - Cardano » Epochs + summary: Stake distribution by pool + description: >- + Return the active stake distribution for the epoch specified by stake + pool. parameters: - in: path - name: hash + name: number + required: true + schema: + type: integer + description: Number of the epoch + example: 225 + - in: path required: true + name: pool_id schema: type: string - format: 64-character case-sensitive hexadecimal string. - description: Hash of the requested transaction - example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + 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: Obtain information about redeemers within a specific transaction. + description: Return the data about the epoch content: application/json: schema: - $ref: '#/components/schemas/tx_content_redeemers' + $ref: '#/components/schemas/epoch_stake_pool_content' '400': $ref: '#/components/responses/400' '403': @@ -1789,28 +1821,59 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/txs/{hash}/required_signers': + '/epochs/{number}/blocks': get: tags: - - Cardano » Transactions - summary: Transaction required signers - description: Obtain the extra transaction witnesses. + - Cardano » Epochs + summary: Block distribution + description: Return the blocks minted for the epoch specified. parameters: - in: path - name: hash + 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 - format: 64-character case-sensitive hexadecimal string. - description: Hash of the transaction - example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + 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: Query required signers (extra transaction witnesses) + description: Return the data about the epoch content: application/json: schema: - $ref: '#/components/schemas/tx_content_required_signers' + $ref: '#/components/schemas/epoch_block_content' '400': $ref: '#/components/responses/400' '403': @@ -1823,28 +1886,66 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/txs/{hash}/cbor': + '/epochs/{number}/blocks/{pool_id}': get: tags: - - Cardano » Transactions - summary: Transaction CBOR - description: Obtain the CBOR serialized transaction + - Cardano » Epochs + summary: Block distribution by pool + description: Return the block minted for the epoch specified by stake pool. parameters: - in: path - name: hash + name: number + required: true + schema: + type: integer + description: Number of the epoch + example: 225 + - in: path required: true + name: pool_id schema: type: string - format: 64-character case-sensitive hexadecimal string. - description: Hash of the transaction - example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + 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: Query transaction CBOR + description: Return the data about the epoch content: application/json: schema: - $ref: '#/components/schemas/tx_content_cbor' + $ref: '#/components/schemas/epoch_block_content' '400': $ref: '#/components/responses/400' '403': @@ -1857,64 +1958,27 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /tx/submit: - post: + '/epochs/{number}/parameters': + get: tags: - - Cardano » Transactions - summary: Submit a transaction - description: | - Submit an already serialized transaction to the network. - -- Hosted Endpoint only available for hosted variant. -
- x-codeSamples: - - lang: Shell - label: cURL - source: | - # Assuming `data` is a serialized transaction on the file-system. - curl "https://cardano-mainnet.blockfrost.io/api/v0/tx/submit" \ - -X POST \ - -H "Content-Type: application/cbor" \ - -H "project_id: $PROJECT_ID" \ - --data-binary @./data - - lang: Shell - label: cardano-cli - source: > - # Assuming `tx.signed` is signed transaction constructed by - cardano-cli - - xxd -r -p <<< $(jq .cborHex tx.signed) > tx.submit-api.raw - - curl "https://cardano-mainnet.blockfrost.io/api/v0/tx/submit" \ - -X POST \ - -H "Content-Type: application/cbor" \ - -H "project_id: $PROJECT_ID" \ - --data-binary @./tx.submit-api.raw - requestBody: - description: | - The transaction to submit, serialized in CBOR. - required: true - content: - application/cbor: - schema: - type: string - description: | - The transaction to submit, serialized in CBOR. - example: > - 83a400818258208911f640d452c3be4ff3d89db63b41ce048c056951286e2e28bbf8a51588ab44000181825839009493315cd92eb5d8c4304e67b7e16ae36d61d34502694657811a2c8e32c728d3861e164cab28cb8f006448139c8f1740ffb8e7aa9e5232dc1a10b2531f021a00029519075820cb798b0bce50604eaf2e0dc89367896b18f0a6ef6b32b57e3c9f83f8ee71e608a1008182582073fea80d424276ad0978d4fe5310e8bc2d485f5f6bb3bf87612989f112ad5a7d5840c40425229749a9434763cf01b492057fd56d7091a6372eaa777a1c9b1ca508c914e6a4ee9c0d40fc10952ed668e9ad65378a28b149de6bd4204bd9f095b0a902a11907b0a1667469636b657281a266736f757263656b736f757263655f6e616d656576616c7565736675676961742076656e69616d206d696e7573 + - 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 ID of the submitted transaction. + description: Return the data about the epoch content: application/json: schema: - type: string - format: hex - minLength: 64 - maxLength: 64 - example: >- - d1662b24fa9fe985fc2dce47455df399cb2e31e1e1819339e885801cc3578908 + $ref: '#/components/schemas/epoch_param_content' '400': $ref: '#/components/responses/400' '403': @@ -1923,34 +1987,32 @@ paths: $ref: '#/components/responses/404' '418': $ref: '#/components/responses/418' - '425': - $ref: '#/components/responses/425' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/accounts/{stake_address}': + '/txs/{hash}': get: tags: - - Cardano » Accounts - summary: Specific account address - description: | - Obtain information about a specific stake account. + - Cardano » Transactions + summary: Specific transaction + description: Return content of the requested transaction. parameters: - in: path - name: stake_address + name: hash required: true schema: type: string - description: Bech32 stake address. - example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc + format: 64-character case-sensitive hexadecimal string. + description: Hash of the requested transaction + example: 6e5f825c42c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b responses: '200': - description: Return the account content. + description: Return the contents of the transaction. content: application/json: schema: - $ref: '#/components/schemas/account_content' + $ref: '#/components/schemas/tx_content' '400': $ref: '#/components/responses/400' '403': @@ -1963,60 +2025,28 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/accounts/{stake_address}/rewards': + '/txs/{hash}/utxos': get: tags: - - Cardano » Accounts - summary: Account reward history - description: | - Obtain information about the reward history of a specific account. + - Cardano » Transactions + summary: Transaction UTXOs + description: Return the inputs and UTXOs of the specific transaction. parameters: - in: path - name: stake_address + name: hash required: true schema: type: string - description: Bech32 stake address. - example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc - - 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. + format: 64-character case-sensitive hexadecimal string + description: Hash of the requested transaction + example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b responses: '200': - description: Return the account content. + description: Return the contents of the transaction. content: application/json: schema: - $ref: '#/components/schemas/account_reward_content' + $ref: '#/components/schemas/tx_content_utxo' '400': $ref: '#/components/responses/400' '403': @@ -2029,60 +2059,32 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/accounts/{stake_address}/history': + '/txs/{hash}/stakes': get: tags: - - Cardano » Accounts - summary: Account history - description: | - Obtain information about the history of a specific account. + - Cardano » Transactions + summary: Transaction stake addresses certificates + description: > + Obtain information about (de)registration of stake addresses within a + transaction. parameters: - in: path - name: stake_address + name: hash required: true schema: type: string - description: Bech32 stake address. - example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc - - 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. + format: 64-character case-sensitive hexadecimal string. + description: Hash of the requested transaction. + example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b responses: '200': - description: Return the account content. + description: > + Obtain information about (de)registration of stake addresses within + a transaction. content: application/json: schema: - $ref: '#/components/schemas/account_history_content' + $ref: '#/components/schemas/tx_content_stake_addr' '400': $ref: '#/components/responses/400' '403': @@ -2095,59 +2097,32 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/accounts/{stake_address}/delegations': + '/txs/{hash}/delegations': get: tags: - - Cardano » Accounts - summary: Account delegation history - description: Obtain information about the delegation of a specific account. + - Cardano » Transactions + summary: Transaction delegation certificates + description: > + Obtain information about delegation certificates of a specific + transaction. parameters: - in: path - name: stake_address + name: hash required: true schema: type: string - description: Bech32 stake address. - example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc - - 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. + format: 64-character case-sensitive hexadecimal string + description: Hash of the requested transaction. + example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b responses: '200': - description: Return the account delegations content + description: >- + Obtain information about delegation certificates of a specific + transaction content: application/json: schema: - $ref: '#/components/schemas/account_delegation_content' + $ref: '#/components/schemas/tx_content_delegations' '400': $ref: '#/components/responses/400' '403': @@ -2160,61 +2135,28 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/accounts/{stake_address}/registrations': + '/txs/{hash}/withdrawals': get: tags: - - Cardano » Accounts - summary: Account registration history - description: > - Obtain information about the registrations and deregistrations of a - specific account. + - Cardano » Transactions + summary: Transaction withdrawal + description: Obtain information about withdrawals of a specific transaction. parameters: - in: path - name: stake_address + name: hash required: true schema: type: string - description: Bech32 stake address. - example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc - - 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. + format: 64-character case-sensitive hexadecimal string + description: Hash of the requested transaction. + example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b responses: '200': - description: Return the account registration content. + description: Obtain information about withdrawals of a specific transaction. content: application/json: schema: - $ref: '#/components/schemas/account_registration_content' + $ref: '#/components/schemas/tx_content_withdrawals' '400': $ref: '#/components/responses/400' '403': @@ -2227,60 +2169,32 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/accounts/{stake_address}/withdrawals': + '/txs/{hash}/mirs': get: tags: - - Cardano » Accounts - summary: Account withdrawal history - description: | - Obtain information about the withdrawals of a specific account. + - Cardano » Transactions + summary: Transaction MIRs + description: >- + Obtain information about Move Instantaneous Rewards (MIRs) of a specific + transaction. parameters: - in: path - name: stake_address + name: hash required: true schema: type: string - description: Bech32 stake address. - example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc - - 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. + format: 64-character case-sensitive hexadecimal string + description: Hash of the requested transaction. + example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b responses: '200': - description: Return the account withdrawal content. + description: >- + Obtain information about Move Instantaneous Rewards (MIRs) of a + specific transaction. content: application/json: schema: - $ref: '#/components/schemas/account_withdrawal_content' + $ref: '#/components/schemas/tx_content_mirs' '400': $ref: '#/components/responses/400' '403': @@ -2293,60 +2207,32 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/accounts/{stake_address}/mirs': + '/txs/{hash}/pool_updates': get: tags: - - Cardano » Accounts - summary: Account MIR history - description: | - Obtain information about the MIRs of a specific account. + - Cardano » Transactions + summary: Transaction stake pool registration and update certificates + description: > + Obtain information about stake pool registration and update certificates + of a specific transaction. parameters: - in: path - name: stake_address + name: hash required: true schema: type: string - description: Bech32 stake address. - example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc - - 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. + format: 64-character case-sensitive hexadecimal string + description: Hash of the requested transaction + example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b responses: '200': - description: Return the account MIR content. + description: >- + Obtain information about stake pool certificates of a specific + transaction content: application/json: schema: - $ref: '#/components/schemas/account_mir_content' + $ref: '#/components/schemas/tx_content_pool_certs' '400': $ref: '#/components/responses/400' '403': @@ -2359,64 +2245,32 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/accounts/{stake_address}/addresses': + '/txs/{hash}/pool_retires': get: tags: - - Cardano » Accounts - summary: Account associated addresses + - Cardano » Transactions + summary: Transaction stake pool retirement certificates description: > - Obtain information about the addresses of a specific account. - - Be careful, as an account could be part of a mangled address and - does not necessarily mean the addresses are owned by user as the - account. + Obtain information about stake pool retirements within a specific + transaction. parameters: - in: path - name: stake_address + name: hash required: true schema: type: string - description: Bech32 stake address. - example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc - - 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. + format: 64-character case-sensitive hexadecimal string. + description: Hash of the requested transaction + example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b responses: '200': - description: Return the account addresses content + description: > + Obtain information about stake pool retirements within a specific + transaction. content: application/json: schema: - $ref: '#/components/schemas/account_addresses_content' + $ref: '#/components/schemas/tx_content_pool_retires' '400': $ref: '#/components/responses/400' '403': @@ -2429,65 +2283,28 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/accounts/{stake_address}/addresses/assets': + '/txs/{hash}/metadata': get: tags: - - Cardano » Accounts - summary: Assets associated with the account addresses - description: > - Obtain information about assets associated with addresses of a specific - account. - - Be careful, as an account could be part of a mangled address and - does not necessarily mean the addresses are owned by user as the - account. + - Cardano » Transactions + summary: Transaction metadata + description: Obtain the transaction metadata. parameters: - in: path - name: stake_address + name: hash required: true schema: type: string - description: Bech32 stake address. - example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc - - 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. + format: 64-character case-sensitive hexadecimal string. + description: Hash of the requested transaction + example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b responses: '200': - description: Return the account addresses content + description: Obtain metadata information associated with a specific transaction. content: application/json: schema: - $ref: '#/components/schemas/account_addresses_assets' + $ref: '#/components/schemas/tx_content_metadata' '400': $ref: '#/components/responses/400' '403': @@ -2500,34 +2317,28 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/accounts/{stake_address}/addresses/total': + '/txs/{hash}/metadata/cbor': get: tags: - - Cardano » Accounts - summary: Detailed information about account associated addresses - description: > - Obtain summed details about all addresses associated with a given - account. - - Be careful, as an account could be part of a mangled address and - does not necessarily mean the addresses are owned by user as the - account. + - Cardano » Transactions + summary: Transaction metadata in CBOR + description: Obtain the transaction metadata in CBOR. parameters: - in: path - name: stake_address + name: hash required: true schema: type: string - description: Bech32 address. - example: >- - addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + format: 64-character case-sensitive hexadecimal string. + description: Hash of the requested transaction + example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b responses: '200': - description: Return the Address details. + description: Obtain metadata information associated with a specific transaction. content: application/json: schema: - $ref: '#/components/schemas/account_addresses_total' + $ref: '#/components/schemas/tx_content_metadata_cbor' '400': $ref: '#/components/responses/400' '403': @@ -2540,57 +2351,28 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /mempool: + '/txs/{hash}/redeemers': get: tags: - - Cardano » Mempool - summary: Mempool - description: | - Return transactions that are currently stored in Blockfrost mempool, - waiting to be included in a newly minted block. - Shows only transactions submitted via Blockfrost.io. - -- Hosted Endpoint only available for hosted variant. -
+ - Cardano » Transactions + summary: Transaction redeemers + description: Obtain the transaction redeemers. 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 + - in: path + name: hash + required: true schema: type: string - enum: - - asc - - desc - default: asc - description: | - Ordered by the time of transaction submission. - By default, we return oldest first, newest last. + format: 64-character case-sensitive hexadecimal string. + description: Hash of the requested transaction + example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b responses: '200': - description: Return the contents of the mempool + description: Obtain information about redeemers within a specific transaction. content: application/json: schema: - $ref: '#/components/schemas/mempool_content' + $ref: '#/components/schemas/tx_content_redeemers' '400': $ref: '#/components/responses/400' '403': @@ -2603,17 +2385,12 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/mempool/{hash}': + '/txs/{hash}/required_signers': get: tags: - - Cardano » Mempool - summary: Specific transaction in the mempool - description: | - Return content of the requested transaction. - -- Hosted Endpoint only available for hosted variant. -
+ - Cardano » Transactions + summary: Transaction required signers + description: Obtain the extra transaction witnesses. parameters: - in: path name: hash @@ -2621,15 +2398,15 @@ paths: schema: type: string format: 64-character case-sensitive hexadecimal string. - description: Hash of the requested transaction - example: 6e5f825c42c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + description: Hash of the transaction + example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b responses: '200': - description: Return the contents of the transaction. + description: Query required signers (extra transaction witnesses) content: application/json: schema: - $ref: '#/components/schemas/mempool_tx_content' + $ref: '#/components/schemas/tx_content_required_signers' '400': $ref: '#/components/responses/400' '403': @@ -2642,31 +2419,161 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/mempool/addresses/{address}': + '/txs/{hash}/cbor': get: tags: - - Cardano » Mempool - summary: Mempool by address - description: > - List of mempool transactions where at least one of the transaction - inputs or outputs belongs to the address. - - Shows only transactions submitted via Blockfrost.io. - + - Cardano » Transactions + summary: Transaction CBOR + description: Obtain the CBOR serialized transaction + parameters: + - in: path + name: hash + required: true + schema: + type: string + format: 64-character case-sensitive hexadecimal string. + description: Hash of the transaction + example: 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + responses: + '200': + description: Query transaction CBOR + content: + application/json: + schema: + $ref: '#/components/schemas/tx_content_cbor' + '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' + /tx/submit: + post: + tags: + - Cardano » Transactions + summary: Submit a transaction + description: | + Submit an already serialized transaction to the network.Hosted Endpoint only available for hosted variant.
+ x-codeSamples: + - lang: Shell + label: cURL + source: | + # Assuming `data` is a serialized transaction on the file-system. + curl "https://cardano-mainnet.blockfrost.io/api/v0/tx/submit" \ + -X POST \ + -H "Content-Type: application/cbor" \ + -H "project_id: $PROJECT_ID" \ + --data-binary @./data + - lang: Shell + label: cardano-cli + source: > + # Assuming `tx.signed` is signed transaction constructed by + cardano-cli + + xxd -r -p <<< $(jq .cborHex tx.signed) > tx.submit-api.raw + + curl "https://cardano-mainnet.blockfrost.io/api/v0/tx/submit" \ + -X POST \ + -H "Content-Type: application/cbor" \ + -H "project_id: $PROJECT_ID" \ + --data-binary @./tx.submit-api.raw + requestBody: + description: | + The transaction to submit, serialized in CBOR. + required: true + content: + application/cbor: + schema: + type: string + description: | + The transaction to submit, serialized in CBOR. + example: > + 83a400818258208911f640d452c3be4ff3d89db63b41ce048c056951286e2e28bbf8a51588ab44000181825839009493315cd92eb5d8c4304e67b7e16ae36d61d34502694657811a2c8e32c728d3861e164cab28cb8f006448139c8f1740ffb8e7aa9e5232dc1a10b2531f021a00029519075820cb798b0bce50604eaf2e0dc89367896b18f0a6ef6b32b57e3c9f83f8ee71e608a1008182582073fea80d424276ad0978d4fe5310e8bc2d485f5f6bb3bf87612989f112ad5a7d5840c40425229749a9434763cf01b492057fd56d7091a6372eaa777a1c9b1ca508c914e6a4ee9c0d40fc10952ed668e9ad65378a28b149de6bd4204bd9f095b0a902a11907b0a1667469636b657281a266736f757263656b736f757263655f6e616d656576616c7565736675676961742076656e69616d206d696e7573 + responses: + '200': + description: Return the ID of the submitted transaction. + content: + application/json: + schema: + type: string + format: hex + minLength: 64 + maxLength: 64 + example: >- + d1662b24fa9fe985fc2dce47455df399cb2e31e1e1819339e885801cc3578908 + '400': + $ref: '#/components/responses/400' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '418': + $ref: '#/components/responses/418' + '425': + $ref: '#/components/responses/425' + '429': + $ref: '#/components/responses/429' + '500': + $ref: '#/components/responses/500' + '/accounts/{stake_address}': + get: + tags: + - Cardano » Accounts + summary: Specific account address + description: | + Obtain information about a specific stake account. parameters: - in: path - name: address + name: stake_address required: true schema: type: string - format: 64-character case-sensitive hexadecimal string. - description: Bech32 address. - example: >- - addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + description: Bech32 stake address. + example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc + responses: + '200': + description: Return the account content. + content: + application/json: + schema: + $ref: '#/components/schemas/account_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' + '/accounts/{stake_address}/rewards': + get: + tags: + - Cardano » Accounts + summary: Account reward history + description: | + Obtain information about the reward history of a specific account. + parameters: + - in: path + name: stake_address + required: true + schema: + type: string + description: Bech32 stake address. + example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc - in: query name: count required: false @@ -2694,16 +2601,18 @@ paths: - asc - desc default: asc - description: | - Ordered by the time of transaction submission. - By default, we return oldest first, newest last. + 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 contents of the mempool + description: Return the account content. content: application/json: schema: - $ref: '#/components/schemas/mempool_addresses_content' + $ref: '#/components/schemas/account_reward_content' '400': $ref: '#/components/responses/400' '403': @@ -2716,14 +2625,21 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /metadata/txs/labels: + '/accounts/{stake_address}/history': get: tags: - - Cardano » Metadata - summary: Transaction metadata labels + - Cardano » Accounts + summary: Account history description: | - List of all used transaction metadata labels. + Obtain information about the history of a specific account. parameters: + - in: path + name: stake_address + required: true + schema: + type: string + description: Bech32 stake address. + example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc - in: query name: count required: false @@ -2758,11 +2674,11 @@ paths: newest last. responses: '200': - description: Return the account metadata content in CBOR + description: Return the account content. content: application/json: schema: - $ref: '#/components/schemas/tx_metadata_labels' + $ref: '#/components/schemas/account_history_content' '400': $ref: '#/components/responses/400' '403': @@ -2775,20 +2691,20 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/metadata/txs/labels/{label}': + '/accounts/{stake_address}/delegations': get: tags: - - Cardano » Metadata - summary: Transaction metadata content in JSON - description: Transaction metadata per label. + - Cardano » Accounts + summary: Account delegation history + description: Obtain information about the delegation of a specific account. parameters: - in: path - name: label + name: stake_address required: true schema: type: string - description: Metadata label - example: '1990' + description: Bech32 stake address. + example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc - in: query name: count required: false @@ -2823,11 +2739,11 @@ paths: newest last. responses: '200': - description: Return the account metadata content + description: Return the account delegations content content: application/json: schema: - $ref: '#/components/schemas/tx_metadata_label_json' + $ref: '#/components/schemas/account_delegation_content' '400': $ref: '#/components/responses/400' '403': @@ -2840,20 +2756,22 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/metadata/txs/labels/{label}/cbor': + '/accounts/{stake_address}/registrations': get: tags: - - Cardano » Metadata - summary: Transaction metadata content in CBOR - description: Transaction metadata per label. + - Cardano » Accounts + summary: Account registration history + description: > + Obtain information about the registrations and deregistrations of a + specific account. parameters: - in: path - name: label + name: stake_address required: true schema: type: string - description: Metadata label - example: '1990' + description: Bech32 stake address. + example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc - in: query name: count required: false @@ -2888,45 +2806,11 @@ paths: newest last. responses: '200': - description: Return the account metadata content in CBOR - content: - application/json: - schema: - $ref: '#/components/schemas/tx_metadata_label_cbor' - '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' - '/addresses/{address}': - get: - tags: - - Cardano » Addresses - summary: Specific address - description: Obtain information about a specific address. - parameters: - - in: path - name: address - required: true - schema: - type: string - description: Bech32 address. - example: >- - addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz - responses: - '200': - description: Return the address content. + description: Return the account registration content. content: application/json: schema: - $ref: '#/components/schemas/address_content' + $ref: '#/components/schemas/account_registration_content' '400': $ref: '#/components/responses/400' '403': @@ -2939,90 +2823,21 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/addresses/{address}/extended': + '/accounts/{stake_address}/withdrawals': get: tags: - - Cardano » Addresses - summary: Extended information of a specific address + - Cardano » Accounts + summary: Account withdrawal history description: | - Obtain extended information about a specific address. - parameters: - - in: path - name: address - required: true - schema: - type: string - description: Bech32 address. - example: >- - addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz - responses: - '200': - description: Return the address content. - content: - application/json: - schema: - $ref: '#/components/schemas/address_content_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' - '/addresses/{address}/total': - get: - tags: - - Cardano » Addresses - summary: Address details - description: Obtain details about an address. - parameters: - - in: path - name: address - required: true - schema: - type: string - description: Bech32 address. - example: >- - addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz - responses: - '200': - description: Return the Address details. - content: - application/json: - schema: - $ref: '#/components/schemas/address_content_total' - '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' - '/addresses/{address}/utxos': - get: - tags: - - Cardano » Addresses - summary: Address UTXOs - description: UTXOs of the address. + Obtain information about the withdrawals of a specific account. parameters: - in: path - name: address + name: stake_address required: true schema: type: string - description: Bech32 address. - example: >- - addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + description: Bech32 stake address. + example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc - in: query name: count required: false @@ -3057,11 +2872,11 @@ paths: newest last. responses: '200': - description: Return the address content + description: Return the account withdrawal content. content: application/json: schema: - $ref: '#/components/schemas/address_utxo_content' + $ref: '#/components/schemas/account_withdrawal_content' '400': $ref: '#/components/responses/400' '403': @@ -3074,29 +2889,21 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/addresses/{address}/utxos/{asset}': + '/accounts/{stake_address}/mirs': get: tags: - - Cardano » Addresses - summary: Address UTXOs of a given asset - description: UTXOs of the address. + - Cardano » Accounts + summary: Account MIR history + description: | + Obtain information about the MIRs of a specific account. parameters: - in: path - name: address - required: true - schema: - type: string - description: Bech32 address. - example: >- - addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz - - in: path - name: asset + name: stake_address required: true schema: type: string - description: Concatenation of the policy_id and hex-encoded asset_name - example: >- - b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e + description: Bech32 stake address. + example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc - in: query name: count required: false @@ -3131,11 +2938,11 @@ paths: newest last. responses: '200': - description: Return the address content + description: Return the account MIR content. content: application/json: schema: - $ref: '#/components/schemas/address_utxo_content' + $ref: '#/components/schemas/account_mir_content' '400': $ref: '#/components/responses/400' '403': @@ -3148,22 +2955,25 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/addresses/{address}/txs': + '/accounts/{stake_address}/addresses': get: - deprecated: true tags: - - Cardano » Addresses - summary: Address txs - description: Transactions on the address. + - Cardano » Accounts + summary: Account associated addresses + description: > + Obtain information about the addresses of a specific account. + + Be careful, as an account could be part of a mangled address and + does not necessarily mean the addresses are owned by user as the + account. parameters: - in: path - name: address + name: stake_address required: true schema: type: string - description: Bech32 address. - example: >- - addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + description: Bech32 stake address. + example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc - in: query name: count required: false @@ -3172,7 +2982,7 @@ paths: minimum: 1 maximum: 100 default: 100 - description: The number of transactions per page. + description: The number of results displayed on one page. - in: query name: page required: false @@ -3198,11 +3008,11 @@ paths: newest last. responses: '200': - description: Return the address content + description: Return the account addresses content content: application/json: schema: - $ref: '#/components/schemas/address_txs_content' + $ref: '#/components/schemas/account_addresses_content' '400': $ref: '#/components/responses/400' '403': @@ -3215,21 +3025,26 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/addresses/{address}/transactions': + '/accounts/{stake_address}/addresses/assets': get: tags: - - Cardano » Addresses - summary: Address transactions - description: Transactions on the address. + - Cardano » Accounts + summary: Assets associated with the account addresses + description: > + Obtain information about assets associated with addresses of a specific + account. + + Be careful, as an account could be part of a mangled address and + does not necessarily mean the addresses are owned by user as the + account. parameters: - in: path - name: address + name: stake_address required: true schema: type: string - description: Bech32 address. - example: >- - addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + description: Bech32 stake address. + example: stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc - in: query name: count required: false @@ -3238,7 +3053,7 @@ paths: minimum: 1 maximum: 100 default: 100 - description: The number of addresses per page. + description: The number of results displayed on one page. - in: query name: page required: false @@ -3262,35 +3077,53 @@ paths: not the page listing itself. By default, we return oldest first, newest last. - - in: query - name: from - required: false - schema: - type: string - description: > - The block number and optionally also index from which (inclusive) to - start search for results, concatenated using colon. + responses: + '200': + description: Return the account addresses content + content: + application/json: + schema: + $ref: '#/components/schemas/account_addresses_assets' + '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' + '/accounts/{stake_address}/addresses/total': + get: + tags: + - Cardano » Accounts + summary: Detailed information about account associated addresses + description: > + Obtain summed details about all addresses associated with a given + account. - Has to be lower than or equal to `to` parameter. - example: '8929261' - - in: query - name: to - required: false + Be careful, as an account could be part of a mangled address and + does not necessarily mean the addresses are owned by user as the + account. + parameters: + - in: path + name: stake_address + required: true schema: type: string - description: > - The block number and optionally also index where (inclusive) to end - the search for results, concatenated using colon. - - Has to be higher than or equal to `from` parameter. - example: '9999269:10' + description: Bech32 address. + example: >- + addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz responses: '200': - description: Return the address content + description: Return the Address details. content: application/json: schema: - $ref: '#/components/schemas/address_transactions_content' + $ref: '#/components/schemas/account_addresses_total' '400': $ref: '#/components/responses/400' '403': @@ -3303,12 +3136,19 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /pools: + /mempool: get: tags: - - Cardano » Pools - summary: List of stake pools - description: List of registered stake pools. + - Cardano » Mempool + summary: Mempool + description: | + Return transactions that are currently stored in Blockfrost mempool, + waiting to be included in a newly minted block. + Shows only transactions submitted via Blockfrost.io. + ++ Hosted Endpoint only available for hosted variant. +
parameters: - in: query name: count @@ -3318,7 +3158,7 @@ paths: minimum: 1 maximum: 100 default: 100 - description: The number of pools per page. + description: The number of results displayed on one page. - in: query name: page required: false @@ -3337,18 +3177,55 @@ paths: - asc - desc default: asc - description: > - The ordering of items from the point of view of the blockchain, + description: | + Ordered by the time of transaction submission. + By default, we return oldest first, newest last. + responses: + '200': + description: Return the contents of the mempool + content: + application/json: + schema: + $ref: '#/components/schemas/mempool_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' + '/mempool/{hash}': + get: + tags: + - Cardano » Mempool + summary: Specific transaction in the mempool + description: | + Return content of the requested transaction. - not the page listing itself. By default, we return oldest first, - newest last. ++ Hosted Endpoint only available for hosted variant. +
+ parameters: + - in: path + name: hash + required: true + schema: + type: string + format: 64-character case-sensitive hexadecimal string. + description: Hash of the requested transaction + example: 6e5f825c42c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b responses: '200': - description: Return the list of pools. + description: Return the contents of the transaction. content: application/json: schema: - $ref: '#/components/schemas/pool_list' + $ref: '#/components/schemas/mempool_tx_content' '400': $ref: '#/components/responses/400' '403': @@ -3361,13 +3238,31 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /pools/extended: + '/mempool/addresses/{address}': get: tags: - - Cardano » Pools - summary: List of stake pools with additional information - description: List of registered stake pools with additional information. + - Cardano » Mempool + summary: Mempool by address + description: > + List of mempool transactions where at least one of the transaction + inputs or outputs belongs to the address. + + Shows only transactions submitted via Blockfrost.io. + + ++ Hosted Endpoint only available for hosted variant. +
parameters: + - in: path + name: address + required: true + schema: + type: string + format: 64-character case-sensitive hexadecimal string. + description: Bech32 address. + example: >- + addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz - in: query name: count required: false @@ -3376,7 +3271,7 @@ paths: minimum: 1 maximum: 100 default: 100 - description: The number of pools per page. + description: The number of results displayed on one page. - in: query name: page required: false @@ -3395,18 +3290,16 @@ paths: - 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. + description: | + Ordered by the time of transaction submission. + By default, we return oldest first, newest last. responses: '200': - description: Return the list of pools. + description: Return the contents of the mempool content: application/json: schema: - $ref: '#/components/schemas/pool_list_extended' + $ref: '#/components/schemas/mempool_addresses_content' '400': $ref: '#/components/responses/400' '403': @@ -3419,12 +3312,13 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /pools/retired: + /metadata/txs/labels: get: tags: - - Cardano » Pools - summary: List of retired stake pools - description: List of already retired pools. + - Cardano » Metadata + summary: Transaction metadata labels + description: | + List of all used transaction metadata labels. parameters: - in: query name: count @@ -3434,7 +3328,7 @@ paths: minimum: 1 maximum: 100 default: 100 - description: The number of pools per page. + description: The number of results displayed on one page. - in: query name: page required: false @@ -3460,11 +3354,11 @@ paths: newest last. responses: '200': - description: Return the pool information content + description: Return the account metadata content in CBOR content: application/json: schema: - $ref: '#/components/schemas/pool_list_retire' + $ref: '#/components/schemas/tx_metadata_labels' '400': $ref: '#/components/responses/400' '403': @@ -3477,13 +3371,20 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /pools/retiring: + '/metadata/txs/labels/{label}': get: tags: - - Cardano » Pools - summary: List of retiring stake pools - description: List of stake pools retiring in the upcoming epochs + - Cardano » Metadata + summary: Transaction metadata content in JSON + description: Transaction metadata per label. parameters: + - in: path + name: label + required: true + schema: + type: string + description: Metadata label + example: '1990' - in: query name: count required: false @@ -3518,44 +3419,11 @@ paths: 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 + description: Return the account metadata content content: application/json: schema: - $ref: '#/components/schemas/pool' + $ref: '#/components/schemas/tx_metadata_label_json' '400': $ref: '#/components/responses/400' '403': @@ -3568,21 +3436,20 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/pools/{pool_id}/history': + '/metadata/txs/labels/{label}/cbor': get: tags: - - Cardano » Pools - summary: Stake pool history - description: | - History of stake pool parameters over epochs. + - Cardano » Metadata + summary: Transaction metadata content in CBOR + description: Transaction metadata per label. parameters: - in: path - name: pool_id + name: label required: true schema: type: string - description: Bech32 or hexadecimal pool ID. - example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + description: Metadata label + example: '1990' - in: query name: count required: false @@ -3600,7 +3467,7 @@ paths: minimum: 1 maximum: 21474836 default: 1 - description: The page number for listing the results + description: The page number for listing the results. - in: query name: order required: false @@ -3617,11 +3484,11 @@ paths: newest last. responses: '200': - description: Return the pool information content. + description: Return the account metadata content in CBOR content: application/json: schema: - $ref: '#/components/schemas/pool_history' + $ref: '#/components/schemas/tx_metadata_label_cbor' '400': $ref: '#/components/responses/400' '403': @@ -3634,30 +3501,63 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/pools/{pool_id}/metadata': + '/addresses/{address}': get: tags: - - Cardano » Pools - summary: Stake pool metadata + - Cardano » Addresses + summary: Specific address + description: Obtain information about a specific address. + parameters: + - in: path + name: address + required: true + schema: + type: string + description: Bech32 address. + example: >- + addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + responses: + '200': + description: Return the address content. + content: + application/json: + schema: + $ref: '#/components/schemas/address_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' + '/addresses/{address}/extended': + get: + tags: + - Cardano » Addresses + summary: Extended information of a specific address description: | - Stake pool registration metadata. + Obtain extended information about a specific address. parameters: - in: path - name: pool_id + name: address required: true schema: type: string - description: Bech32 or hexadecimal pool ID. - example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + description: Bech32 address. + example: >- + addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz responses: '200': - description: Return the pool metadata content. + description: Return the address content. content: application/json: schema: - anyOf: - - $ref: '#/components/schemas/pool_metadata' - - $ref: '#/components/schemas/empty_object' + $ref: '#/components/schemas/address_content_extended' '400': $ref: '#/components/responses/400' '403': @@ -3670,27 +3570,28 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/pools/{pool_id}/relays': + '/addresses/{address}/total': get: tags: - - Cardano » Pools - summary: Stake pool relays - description: Relays of a stake pool. + - Cardano » Addresses + summary: Address details + description: Obtain details about an address. parameters: - in: path - name: pool_id + name: address required: true schema: type: string - description: Bech32 or hexadecimal pool ID. - example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + description: Bech32 address. + example: >- + addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz responses: '200': - description: Return the pool relays information content. + description: Return the Address details. content: application/json: schema: - $ref: '#/components/schemas/pool_relays' + $ref: '#/components/schemas/address_content_total' '400': $ref: '#/components/responses/400' '403': @@ -3703,20 +3604,21 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/pools/{pool_id}/delegators': + '/addresses/{address}/utxos': get: tags: - - Cardano » Pools - summary: Stake pool delegators - description: List of current stake pools delegators. + - Cardano » Addresses + summary: Address UTXOs + description: UTXOs of the address. parameters: - in: path - name: pool_id + name: address required: true schema: type: string - description: Bech32 or hexadecimal pool ID. - example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + description: Bech32 address. + example: >- + addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz - in: query name: count required: false @@ -3751,11 +3653,11 @@ paths: newest last. responses: '200': - description: Return the pool delegations. + description: Return the address content content: application/json: schema: - $ref: '#/components/schemas/pool_delegators' + $ref: '#/components/schemas/address_utxo_content' '400': $ref: '#/components/responses/400' '403': @@ -3768,20 +3670,29 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/pools/{pool_id}/blocks': + '/addresses/{address}/utxos/{asset}': get: tags: - - Cardano » Pools - summary: Stake pool blocks - description: List of stake pools blocks. + - Cardano » Addresses + summary: Address UTXOs of a given asset + description: UTXOs of the address. parameters: - in: path - name: pool_id + name: address required: true schema: type: string - description: Bech32 or hexadecimal pool ID. - example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + description: Bech32 address. + example: >- + addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + - in: path + name: asset + required: true + schema: + type: string + description: Concatenation of the policy_id and hex-encoded asset_name + example: >- + b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e - in: query name: count required: false @@ -3816,11 +3727,11 @@ paths: newest last. responses: '200': - description: Return the pool block list + description: Return the address content content: application/json: schema: - $ref: '#/components/schemas/pool_blocks' + $ref: '#/components/schemas/address_utxo_content' '400': $ref: '#/components/responses/400' '403': @@ -3833,20 +3744,22 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/pools/{pool_id}/updates': + '/addresses/{address}/txs': get: + deprecated: true tags: - - Cardano » Pools - summary: Stake pool updates - description: List of certificate updates to the stake pool. + - Cardano » Addresses + summary: Address txs + description: Transactions on the address. parameters: - in: path - name: pool_id + name: address required: true schema: type: string - description: Bech32 or hexadecimal pool ID. - example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + description: Bech32 address. + example: >- + addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz - in: query name: count required: false @@ -3855,7 +3768,7 @@ paths: minimum: 1 maximum: 100 default: 100 - description: The number of results displayed on one page. + description: The number of transactions per page. - in: query name: page required: false @@ -3881,11 +3794,11 @@ paths: newest last. responses: '200': - description: Return the pool updates history + description: Return the address content content: application/json: schema: - $ref: '#/components/schemas/pool_updates' + $ref: '#/components/schemas/address_txs_content' '400': $ref: '#/components/responses/400' '403': @@ -3898,15 +3811,21 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /assets: + '/addresses/{address}/transactions': get: tags: - - Cardano » Assets - summary: Assets - description: | - List of assets. If an asset is completely burned, - it will stay on the list with quantity 0 (order of assets is immutable). + - Cardano » Addresses + summary: Address transactions + description: Transactions on the address. parameters: + - in: path + name: address + required: true + schema: + type: string + description: Bech32 address. + example: >- + addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz - in: query name: count required: false @@ -3915,7 +3834,7 @@ paths: minimum: 1 maximum: 100 default: 100 - description: The number of results displayed on one page. + description: The number of addresses per page. - in: query name: page required: false @@ -3939,50 +3858,35 @@ paths: not the page listing itself. By default, we return oldest first, newest last. + - in: query + name: from + required: false + schema: + type: string + description: > + The block number and optionally also index from which (inclusive) to + start search for results, concatenated using colon. - Ordering in this case is based on the time of the first mint - transaction. - responses: - '200': - description: Return list of assets - content: - application/json: - schema: - $ref: '#/components/schemas/assets' - '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' - '/assets/{asset}': - get: - tags: - - Cardano » Assets - summary: Specific asset - description: Information about a specific asset - parameters: - - in: path - name: asset - required: true + Has to be lower than or equal to `to` parameter. + example: '8929261' + - in: query + name: to + required: false schema: type: string - description: Concatenation of the policy_id and hex-encoded asset_name - example: >- - b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e + description: > + The block number and optionally also index where (inclusive) to end + the search for results, concatenated using colon. + + Has to be higher than or equal to `from` parameter. + example: '9999269:10' responses: '200': - description: Return the information about a specific asset + description: Return the address content content: application/json: schema: - $ref: '#/components/schemas/asset' + $ref: '#/components/schemas/address_transactions_content' '400': $ref: '#/components/responses/400' '403': @@ -3995,21 +3899,13 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/assets/{asset}/history': + /pools: get: tags: - - Cardano » Assets - summary: Asset history - description: History of a specific asset + - Cardano » Pools + summary: List of stake pools + description: List of registered stake pools. parameters: - - in: path - name: asset - required: true - schema: - type: string - description: Concatenation of the policy_id and hex-encoded asset_name - example: >- - b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e - in: query name: count required: false @@ -4018,7 +3914,7 @@ paths: minimum: 1 maximum: 100 default: 100 - description: The number of results displayed on one page. + description: The number of pools per page. - in: query name: page required: false @@ -4044,11 +3940,11 @@ paths: newest last. responses: '200': - description: Return the information about the history of a specific asset + description: Return the list of pools. content: application/json: schema: - $ref: '#/components/schemas/asset_history' + $ref: '#/components/schemas/pool_list' '400': $ref: '#/components/responses/400' '403': @@ -4061,22 +3957,13 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/assets/{asset}/txs': + /pools/extended: get: - deprecated: true tags: - - Cardano » Assets - summary: Asset txs - description: List of a specific asset transactions + - Cardano » Pools + summary: List of stake pools with additional information + description: List of registered stake pools with additional information. parameters: - - in: path - name: asset - required: true - schema: - type: string - description: Concatenation of the policy_id and hex-encoded asset_name - example: >- - b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e - in: query name: count required: false @@ -4085,7 +3972,7 @@ paths: minimum: 1 maximum: 100 default: 100 - description: The number of results displayed on one page. + description: The number of pools per page. - in: query name: page required: false @@ -4111,11 +3998,11 @@ paths: newest last. responses: '200': - description: Return the information about the history of a specific asset + description: Return the list of pools. content: application/json: schema: - $ref: '#/components/schemas/asset_txs' + $ref: '#/components/schemas/pool_list_extended' '400': $ref: '#/components/responses/400' '403': @@ -4128,21 +4015,13 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/assets/{asset}/transactions': + /pools/retired: get: tags: - - Cardano » Assets - summary: Asset transactions - description: List of a specific asset transactions + - Cardano » Pools + summary: List of retired stake pools + description: List of already retired pools. parameters: - - in: path - name: asset - required: true - schema: - type: string - description: Concatenation of the policy_id and hex-encoded asset_name - example: >- - b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e - in: query name: count required: false @@ -4151,7 +4030,7 @@ paths: minimum: 1 maximum: 100 default: 100 - description: The number of results displayed on one page. + description: The number of pools per page. - in: query name: page required: false @@ -4177,11 +4056,11 @@ paths: newest last. responses: '200': - description: Return the information about the history of a specific asset + description: Return the pool information content content: application/json: schema: - $ref: '#/components/schemas/asset_transactions' + $ref: '#/components/schemas/pool_list_retire' '400': $ref: '#/components/responses/400' '403': @@ -4194,21 +4073,13 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/assets/{asset}/addresses': + /pools/retiring: get: tags: - - Cardano » Assets - summary: Asset addresses - description: List of a addresses containing a specific asset + - Cardano » Pools + summary: List of retiring stake pools + description: List of stake pools retiring in the upcoming epochs parameters: - - in: path - name: asset - required: true - schema: - type: string - description: Concatenation of the policy_id and hex-encoded asset_name - example: >- - b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e - in: query name: count required: false @@ -4243,11 +4114,11 @@ paths: newest last. responses: '200': - description: Return the information about the history of a specific asset + description: Return the pool information content content: application/json: schema: - $ref: '#/components/schemas/asset_addresses' + $ref: '#/components/schemas/pool_list_retire' '400': $ref: '#/components/responses/400' '403': @@ -4260,59 +4131,27 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/assets/policy/{policy_id}': + '/pools/{pool_id}': get: tags: - - Cardano » Assets - summary: Assets of a specific policy - description: List of asset minted under a specific policy + - Cardano » Pools + summary: Specific stake pool + description: Pool information. parameters: - in: path - name: policy_id + name: pool_id required: true schema: type: string - description: Specific policy_id - example: 476039a0949cf0b22f6a800f56780184c44533887ca6e821007840c3 - - 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. + description: Bech32 or hexadecimal pool ID. + example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy responses: '200': - description: Return the information about a specific asset + description: Return the pool information content content: application/json: schema: - $ref: '#/components/schemas/asset_policy' + $ref: '#/components/schemas/pool' '400': $ref: '#/components/responses/400' '403': @@ -4325,13 +4164,21 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /scripts: + '/pools/{pool_id}/history': get: tags: - - Cardano » Scripts - summary: Scripts - description: List of scripts. + - 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 @@ -4349,7 +4196,7 @@ paths: minimum: 1 maximum: 21474836 default: 1 - description: The page number for listing the results. + description: The page number for listing the results - in: query name: order required: false @@ -4366,11 +4213,11 @@ paths: newest last. responses: '200': - description: Return list of scripts + description: Return the pool information content. content: application/json: schema: - $ref: '#/components/schemas/scripts' + $ref: '#/components/schemas/pool_history' '400': $ref: '#/components/responses/400' '403': @@ -4383,27 +4230,30 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/scripts/{script_hash}': + '/pools/{pool_id}/metadata': get: tags: - - Cardano » Scripts - summary: Specific script - description: Information about a specific script + - Cardano » Pools + summary: Stake pool metadata + description: | + Stake pool registration metadata. parameters: - in: path - name: script_hash + name: pool_id required: true schema: type: string - description: Hash of the script - example: e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e + description: Bech32 or hexadecimal pool ID. + example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy responses: '200': - description: Return the information about a specific script + description: Return the pool metadata content. content: application/json: schema: - $ref: '#/components/schemas/script' + anyOf: + - $ref: '#/components/schemas/pool_metadata' + - $ref: '#/components/schemas/empty_object' '400': $ref: '#/components/responses/400' '403': @@ -4416,27 +4266,27 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/scripts/{script_hash}/json': + '/pools/{pool_id}/relays': get: tags: - - Cardano » Scripts - summary: Script JSON - description: JSON representation of a `timelock` script + - Cardano » Pools + summary: Stake pool relays + description: Relays of a stake pool. parameters: - in: path - name: script_hash + name: pool_id required: true schema: type: string - description: Hash of the script - example: e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e + description: Bech32 or hexadecimal pool ID. + example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy responses: '200': - description: Return the JSON representation of a `timelock` script + description: Return the pool relays information content. content: application/json: schema: - $ref: '#/components/schemas/script_json' + $ref: '#/components/schemas/pool_relays' '400': $ref: '#/components/responses/400' '403': @@ -4449,27 +4299,59 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/scripts/{script_hash}/cbor': + '/pools/{pool_id}/delegators': get: tags: - - Cardano » Scripts - summary: Script CBOR - description: CBOR representation of a `plutus` script + - Cardano » Pools + summary: Stake pool delegators + description: List of current stake pools delegators. parameters: - in: path - name: script_hash + name: pool_id required: true schema: type: string - description: Hash of the script - example: e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e + 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 CBOR representation of a `plutus` script + description: Return the pool delegations. content: application/json: schema: - $ref: '#/components/schemas/script_cbor' + $ref: '#/components/schemas/pool_delegators' '400': $ref: '#/components/responses/400' '403': @@ -4482,20 +4364,20 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/scripts/{script_hash}/redeemers': + '/pools/{pool_id}/blocks': get: tags: - - Cardano » Scripts - summary: Redeemers of a specific script - description: List of redeemers of a specific script + - Cardano » Pools + summary: Stake pool blocks + description: List of stake pools blocks. parameters: - in: path - name: script_hash + name: pool_id required: true schema: type: string - description: Hash of the script - example: e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e + description: Bech32 or hexadecimal pool ID. + example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy - in: query name: count required: false @@ -4530,11 +4412,11 @@ paths: newest last. responses: '200': - description: Return the information about redeemers of a specific script + description: Return the pool block list content: application/json: schema: - $ref: '#/components/schemas/script_redeemers' + $ref: '#/components/schemas/pool_blocks' '400': $ref: '#/components/responses/400' '403': @@ -4547,60 +4429,124 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/scripts/datum/{datum_hash}': + '/pools/{pool_id}/updates': get: tags: - - Cardano » Scripts - summary: Datum value - description: Query JSON value of a datum by its hash + - Cardano » Pools + summary: Stake pool updates + description: List of certificate updates to the stake pool. parameters: - in: path - name: datum_hash + name: pool_id required: true schema: type: string - description: Hash of the datum - example: db583ad85881a96c73fbb26ab9e24d1120bb38f45385664bb9c797a2ea8d9a2d - responses: - '200': - description: Return the datum value - content: - application/json: - schema: - $ref: '#/components/schemas/script_datum' - '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' + 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' - '/scripts/datum/{datum_hash}/cbor': + '/pools/{pool_id}/votes': get: tags: - - Cardano » Scripts - summary: Datum CBOR value - description: Query CBOR serialised datum by its hash + - Cardano » Pools + summary: Stake pool votes + description: History of stake pools votes. parameters: - in: path - name: datum_hash + name: pool_id required: true schema: type: string - description: Hash of the datum - example: db583ad85881a96c73fbb26ab9e24d1120bb38f45385664bb9c797a2ea8d9a2d + 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 CBOR serialised datum value + description: Return the pool votes. content: application/json: schema: - $ref: '#/components/schemas/script_datum_cbor' + $ref: '#/components/schemas/pool_votes' '400': $ref: '#/components/responses/400' '403': @@ -4613,42 +4559,57 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/utils/addresses/xpub/{xpub}/{role}/{index}': + /assets: get: tags: - - Cardano » Utilities - summary: Derive an address - description: Derive Shelley address from an xpub + - Cardano » Assets + summary: Assets + description: | + List of assets. If an asset is completely burned, + it will stay on the list with quantity 0 (order of assets is immutable). parameters: - - in: path - name: xpub - required: true - schema: - type: string - description: Hex xpub - example: >- - d507c8f866691bd96e131334c355188b1a1d0b2fa0ab11545075aab332d77d9eb19657ad13ee581b56b0f8d744d66ca356b93d42fe176b3de007d53e9c4c4e7a - - in: path - name: role - required: true + - in: query + name: count + required: false schema: type: integer - description: Account role - example: 0 - - in: path - name: index - required: true + minimum: 1 + maximum: 100 + default: 100 + description: The number of results displayed on one page. + - in: query + name: page + required: false schema: type: integer - description: Address index - example: 2 + 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. + + Ordering in this case is based on the time of the first mint + transaction. responses: '200': - description: Return derivated Shelley address + description: Return list of assets content: application/json: schema: - $ref: '#/components/schemas/utils_addresses_xpub' + $ref: '#/components/schemas/assets' '400': $ref: '#/components/responses/400' '403': @@ -4661,68 +4622,28 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /utils/txs/evaluate: - post: + '/assets/{asset}': + get: tags: - - Cardano » Utilities - summary: Submit a transaction for execution units evaluation - description: > - Submit an already serialized transaction to evaluate how much execution - units it requires. - - -- Hosted Endpoint only available for hosted variant. -
+ - Cardano » Assets + summary: Specific asset + description: Information about a specific asset parameters: - - in: header - name: Content-Type + - in: path + name: asset required: true schema: type: string - enum: - - application/cbor - x-codeSamples: - - lang: Shell - label: cURL - source: > - # Assuming `tx.data` is a CBOR serialized transaction on the - file-system. - - # (encoded using base16 or base64) - - curl - "https://cardano-mainnet.blockfrost.io/api/v0/utils/txs/evaluate" \ - -X POST \ - -H "Content-Type: application/cbor" \ - -H "project_id: $PROJECT_ID" \ - --data @./tx.data - requestBody: - description: | - The transaction to submit, serialized in CBOR. - required: true - content: - application/cbor: - schema: - type: string - description: | - The transaction to submit, serialized in CBOR. - example: > - 83a400818258208911f640d452c3be4ff3d89db63b41ce048c056951286e2e28bbf8a51588ab44000181825839009493315cd92eb5d8c4304e67b7e16ae36d61d34502694657811a2c8e32c728d3861e164cab28cb8f006448139c8f1740ffb8e7aa9e5232dc1a10b2531f021a00029519075820cb798b0bce50604eaf2e0dc89367896b18f0a6ef6b32b57e3c9f83f8ee71e608a1008182582073fea80d424276ad0978d4fe5310e8bc2d485f5f6bb3bf87612989f112ad5a7d5840c40425229749a9434763cf01b492057fd56d7091a6372eaa777a1c9b1ca508c914e6a4ee9c0d40fc10952ed668e9ad65378a28b149de6bd4204bd9f095b0a902a11907b0a1667469636b657281a266736f757263656b736f757263655f6e616d656576616c7565736675676961742076656e69616d206d696e7573 + description: Concatenation of the policy_id and hex-encoded asset_name + example: >- + b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e responses: '200': - description: | --
- Hosted Endpoint only available for hosted variant. -
+ - Cardano » Assets + summary: Asset history + description: History of a specific asset parameters: - - in: header - name: Content-Type + - in: path + name: asset required: true schema: type: string - enum: - - application/json - requestBody: - description: JSON payload - required: true - content: - application/json: - schema: - type: object - properties: - cbor: - type: string - description: Transaction CBOR (encoded using base64 or base16). - additionalUtxoSet: - type: array - description: >- - Additional UTXO as an array of tuples [TxIn, TxOut]. See - https://ogmios.dev/mini-protocols/local-tx-submission/#additional-utxo-set. - items: - type: array - minItems: 2 - maxItems: 2 - items: - anyOf: - - type: object - description: TxIn - properties: - txId: - type: string - description: Transaction hash for the input - index: - type: number - description: Index of the output within the transaction - - type: object - description: TxOut - properties: - address: - type: string - description: Output address - value: - type: object - properties: - coins: - type: number - description: Lovelace amount - assets: - type: object - description: Assets amount - additionalProperties: - type: number - required: - - coins - datum_hash: - type: string - datum: - type: object - additionalProperties: true - script: - type: object - additionalProperties: true - required: - - address - - value - required: - - cbor - x-codeSamples: - - lang: Shell - label: cURL - source: > - # Assuming TxCbor is a CBOR serialized transaction encoded using - base16 or base64 - - # For a structure of additional UTXO set see - https://ogmios.dev/mini-protocols/local-tx-submission/#additional-utxo-set + description: Concatenation of the policy_id and hex-encoded asset_name + example: >- + b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e + - 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, - curl - "https://cardano-mainnet.blockfrost.io/api/v0/utils/txs/evaluate/utxos" - \ - -X POST \ - -H "Content-Type: application/json" \ - -H "project_id: $PROJECT_ID" \ - -d '{"cbor":"-
- Hosted Endpoint only available for hosted variant. -
- x-codeSamples: - - lang: Shell - label: cURL - source: | - curl "https://ipfs.blockfrost.io/api/v0/ipfs/add" \ - -X POST \ - -H "project_id: $PROJECT_ID" \ - -F "file=@./README.md" - requestBody: - content: - multipart/form-data: - schema: - type: object - properties: - file: - type: string - format: binary + not the page listing itself. By default, we return oldest first, + newest last. responses: '200': - description: Returns information about added IPFS object + description: Return the information about the history of a specific asset content: application/json: schema: - type: object - properties: - name: - type: string - example: README.md - description: Name of the file - ipfs_hash: - type: string - example: QmZbHqiCxKEVX7QfijzJTkZiSi3WEVTcvANgNAWzDYgZDr - description: IPFS hash of the file - size: - type: string - example: '125297' - description: IPFS node size in Bytes - required: - - name - - ipfs_hash - - size + $ref: '#/components/schemas/asset_txs' '400': $ref: '#/components/responses/400' '403': @@ -4939,87 +4789,60 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/ipfs/gateway/{IPFS_path}': - servers: - - url: 'https://ipfs.blockfrost.io/api/v0' + '/assets/{asset}/transactions': get: tags: - - IPFS » Gateway - summary: Relay to an IPFS gateway - description: > - Retrieve an object from the IPFS gateway (useful if you do not want to - rely on a public gateway, such as `ipfs.blockfrost.dev`). - - -- Hosted Endpoint only available for hosted variant. -
+ - Cardano » Assets + summary: Asset transactions + description: List of a specific asset transactions parameters: - in: path + name: asset required: true - name: IPFS_path schema: type: string - description: Path to the IPFS object - responses: - '200': - description: Returns the object content - content: - application/octet-stream: - schema: - type: string - format: binary - '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' - '/ipfs/pin/add/{IPFS_path}': - servers: - - url: 'https://ipfs.blockfrost.io/api/v0' - post: - tags: - - IPFS » Pins - summary: Pin an object - description: >- - Pinning is necessary to avoid regular garbage collection (deletion) of - IPFS objects. Non-pinned objects are regularly being removed without - prior notice. Pinned objects are counted in your user storage quota. - parameters: - - in: path - required: true - name: IPFS_path + description: Concatenation of the policy_id and hex-encoded asset_name + example: >- + b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e + - 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 - description: Path to the IPFS object + 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: Returns pinned object + description: Return the information about the history of a specific asset content: application/json: schema: - type: object - properties: - ipfs_hash: - type: string - example: QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8 - description: IPFS hash of the pinned object - state: - type: string - enum: - - queued|pinned|unpinned|failed|gc - example: queued - description: State of the pin action - required: - - ipfs_hash - - state + $ref: '#/components/schemas/asset_transactions' '400': $ref: '#/components/responses/400' '403': @@ -5028,26 +4851,25 @@ paths: $ref: '#/components/responses/404' '418': $ref: '#/components/responses/418' - '425': - $ref: '#/components/responses/425-2' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /ipfs/pin/list: - servers: - - url: 'https://ipfs.blockfrost.io/api/v0' + '/assets/{asset}/addresses': get: tags: - - IPFS » Pins - summary: List pinned objects - description: | - List objects pinned to local storage - -- Hosted Endpoint only available for hosted variant. -
+ - Cardano » Assets + summary: Asset addresses + description: List of a addresses containing a specific asset parameters: + - in: path + name: asset + required: true + schema: + type: string + description: Concatenation of the policy_id and hex-encoded asset_name + example: >- + b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e - in: query name: count required: false @@ -5082,53 +4904,11 @@ paths: newest last. responses: '200': - description: Returns pinned objects + description: Return the information about the history of a specific asset content: application/json: schema: - type: array - items: - type: object - properties: - time_created: - type: integer - description: Creation time of the IPFS object on our backends - example: 1615551024 - time_pinned: - type: integer - description: Pin time of the IPFS object on our backends - example: 1615551024 - ipfs_hash: - type: string - description: IPFS hash of the pinned object - example: QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx - size: - type: string - description: Size of the object in Bytes - example: '1615551024' - state: - type: string - enum: - - queued|pinned|unpinned|failed|gc - description: > - State of the pinned object, which is `queued` when we - are retriving object. If this - - is successful the state is changed to `pinned` or - `failed` if not. The state `gc` means the - - pinned item has been garbage collected due to account - being over storage quota or after it has - - been moved to `unpinned` state by removing the object - pin. - example: pinned - required: - - time_created - - time_pinned - - ipfs_hash - - size - - state + $ref: '#/components/schemas/asset_addresses' '400': $ref: '#/components/responses/400' '403': @@ -5141,78 +4921,59 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/ipfs/pin/list/{IPFS_path}': - servers: - - url: 'https://ipfs.blockfrost.io/api/v0' + '/assets/policy/{policy_id}': get: tags: - - IPFS » Pins - summary: Get details about pinned object - description: | - Get information about locally pinned IPFS object - -- Hosted Endpoint only available for hosted variant. -
+ - Cardano » Assets + summary: Assets of a specific policy + description: List of asset minted under a specific policy parameters: - in: path + name: policy_id required: true - name: IPFS_path schema: type: string - description: The path to the IPFS object + description: Specific policy_id + example: 476039a0949cf0b22f6a800f56780184c44533887ca6e821007840c3 + - 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: Returns the pins pinned + description: Return the information about a specific asset content: application/json: schema: - type: object - properties: - time_created: - type: integer - description: Time of the creation of the IPFS object on our backends - example: 1615551024 - time_pinned: - type: integer - description: Time of the pin of the IPFS object on our backends - example: 1615551024 - ipfs_hash: - type: string - description: IPFS hash of the pinned object - example: QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx - size: - type: string - description: Size of the object in Bytes - example: '1615551024' - state: - type: string - enum: - - queued|pinned|unpinned|failed|gc - description: > - State of the pinned object. We define 5 states: `queued`, - `pinned`, `unpinned`, `failed`, `gc`. - - When the object is pending retrieval (i.e. after - `/ipfs/pin/add/{IPFS_path}`), the state is `queued`. - - If the object is already successfully retrieved, state is - changed to `pinned` or `failed` otherwise. - - When object is unpinned (i.e. after - `/ipfs/pin/remove/{IPFS_path}`) it is marked for garbage - collection. - - State `gc` means that a previously `unpinned` item has - been garbage collected due to account being over storage - quota. - example: pinned - required: - - time_created - - time_pinned - - ipfs_hash - - size - - state + $ref: '#/components/schemas/asset_policy' '400': $ref: '#/components/responses/400' '403': @@ -5225,99 +4986,52 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/ipfs/pin/remove/{IPFS_path}': - servers: - - url: 'https://ipfs.blockfrost.io/api/v0' - post: + /scripts: + get: tags: - - IPFS » Pins - summary: Remove a IPFS pin - description: | - Remove pinned objects from local storage - -- Hosted Endpoint only available for hosted variant. -
+ - Cardano » Scripts + summary: Scripts + description: List of scripts. parameters: - - in: path - required: true - name: IPFS_path + - 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 - description: The path to the IPFS object - responses: - '200': - description: Returns the pins removed - content: - application/json: - schema: - type: object - properties: - ipfs_hash: - type: string - example: QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8 - description: IPFS hash of the pinned object - state: - type: string - enum: - - queued|pinned|unpinned|failed|gc - example: unpinned - description: State of the pin action - required: - - ipfs_hash - - state - '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' - /metrics: - get: - tags: - - Metrics - summary: Blockfrost usage metrics - description: History of your Blockfrost usage metrics in the past 30 days. - responses: - '200': - description: Return the last 30 days of metrics - content: - application/json: - schema: - $ref: '#/components/schemas/metrics' - '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' - /metrics/endpoints: - get: - tags: - - Metrics - summary: Blockfrost endpoint usage metrics - description: > - History of your Blockfrost usage metrics per endpoint in the past 30 - days. + 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 last 30 days of metrics + description: Return list of scripts content: application/json: schema: - $ref: '#/components/schemas/metrics_endpoints' + $ref: '#/components/schemas/scripts' '400': $ref: '#/components/responses/400' '403': @@ -5330,19 +5044,27 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /network: + '/scripts/{script_hash}': get: tags: - - Cardano » Network - summary: Network information - description: Return detailed network information. + - Cardano » Scripts + summary: Specific script + description: Information about a specific script + parameters: + - in: path + name: script_hash + required: true + schema: + type: string + description: Hash of the script + example: e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e responses: '200': - description: Return detailed network information. + description: Return the information about a specific script content: application/json: schema: - $ref: '#/components/schemas/network' + $ref: '#/components/schemas/script' '400': $ref: '#/components/responses/400' '403': @@ -5355,21 +5077,27 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /network/eras: + '/scripts/{script_hash}/json': get: tags: - - Cardano » Network - summary: Query summary of blockchain eras - description: | - Returns start and end of each era along with - parameters that can vary between hard forks. + - Cardano » Scripts + summary: Script JSON + description: JSON representation of a `timelock` script + parameters: + - in: path + name: script_hash + required: true + schema: + type: string + description: Hash of the script + example: e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e responses: '200': - description: Returns era summaries content. + description: Return the JSON representation of a `timelock` script content: application/json: schema: - $ref: '#/components/schemas/network-eras' + $ref: '#/components/schemas/script_json' '400': $ref: '#/components/responses/400' '403': @@ -5378,32 +5106,31 @@ paths: $ref: '#/components/responses/404' '418': $ref: '#/components/responses/418' - '425': - $ref: '#/components/responses/425' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/nutlink/{address}': + '/scripts/{script_hash}/cbor': get: tags: - - Nut.link - summary: Specific nut.link address - description: List metadata about specific address + - Cardano » Scripts + summary: Script CBOR + description: CBOR representation of a `plutus` script parameters: - in: path + name: script_hash required: true - name: address schema: type: string - description: Address of a metadata oracle + description: Hash of the script + example: e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e responses: '200': - description: Return the metadata about metadata oracle + description: Return the CBOR representation of a `plutus` script content: application/json: schema: - $ref: '#/components/schemas/nutlink_address' + $ref: '#/components/schemas/script_cbor' '400': $ref: '#/components/responses/400' '403': @@ -5416,19 +5143,20 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/nutlink/{address}/tickers': + '/scripts/{script_hash}/redeemers': get: tags: - - Nut.link - summary: List of tickers of an oracle - description: List of records of a specific oracle + - Cardano » Scripts + summary: Redeemers of a specific script + description: List of redeemers of a specific script parameters: - in: path + name: script_hash required: true - name: address schema: type: string - description: Address of a metadata oracle + description: Hash of the script + example: e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e - in: query name: count required: false @@ -5463,11 +5191,11 @@ paths: newest last. responses: '200': - description: Return the tickers provided by the metadata oracle + description: Return the information about redeemers of a specific script content: application/json: schema: - $ref: '#/components/schemas/nutlink_address_tickers' + $ref: '#/components/schemas/script_redeemers' '400': $ref: '#/components/responses/400' '403': @@ -5480,64 +5208,27 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/nutlink/{address}/tickers/{ticker}': + '/scripts/datum/{datum_hash}': get: tags: - - Nut.link - summary: Specific ticker for an address - description: List of records of a specific ticker + - Cardano » Scripts + summary: Datum value + description: Query JSON value of a datum by its hash parameters: - in: path + name: datum_hash required: true - name: address - schema: - type: string - description: Address of a metadata oracle - - in: path - required: true - name: ticker - schema: - type: string - description: Ticker for the pool record - - 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. + description: Hash of the datum + example: db583ad85881a96c73fbb26ab9e24d1120bb38f45385664bb9c797a2ea8d9a2d responses: '200': - description: Return the tickers provided by the metadata oracle + description: Return the datum value content: application/json: schema: - $ref: '#/components/schemas/nutlink_address_ticker' + $ref: '#/components/schemas/script_datum' '400': $ref: '#/components/responses/400' '403': @@ -5550,58 +5241,27 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - '/nutlink/tickers/{ticker}': + '/scripts/datum/{datum_hash}/cbor': get: tags: - - Nut.link - summary: Specific ticker - description: List of records of a specific ticker + - Cardano » Scripts + summary: Datum CBOR value + description: Query CBOR serialised datum by its hash parameters: - in: path + name: datum_hash required: true - name: ticker schema: type: string - description: Ticker for the pool record - - 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. + description: Hash of the datum + example: db583ad85881a96c73fbb26ab9e24d1120bb38f45385664bb9c797a2ea8d9a2d responses: '200': - description: Return the tickers provided by the metadata oracle + description: Return the CBOR serialised datum value content: application/json: schema: - $ref: '#/components/schemas/nutlink_tickers_ticker' + $ref: '#/components/schemas/script_datum_cbor' '400': $ref: '#/components/responses/400' '403': @@ -5614,648 +5274,2491 @@ paths: $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' - /mithril/: - get: - tags: - - Cardano » Mithril - summary: Get public specifications about the aggregator - description: | - Returns the specifications related to the aggregator: - * Open API version - * URL of Mithril documentation - * Capabilities of the aggregator - * Cardano transactions prover capabilities - responses: - '200': - description: root found - content: - application/json: - schema: - $ref: '#/components/schemas/AggregatorFeaturesMessage' - '412': - description: API version mismatch - default: - description: root error - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /mithril/epoch-settings: - get: - tags: - - Cardano » Mithril - summary: Get current epoch settings - description: | - Returns the information related to the current epoch: - * protocol parameters for current epoch - * protocol parameters for next epoch (to setup cryptography, allowing signers to register) - responses: - '200': - description: epoch settings found - content: - application/json: - schema: - $ref: '#/components/schemas/EpochSettingsMessage' - '412': - description: API version mismatch - default: - description: epoch settings error - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /mithril/certificate-pending: - get: - tags: - - Cardano » Mithril - summary: Get current pending certificate information - description: | - Returns the information related to the current pending certificate: - * protocol parameters, for current and next epoch (to setup cryptography) - * beacon information (where on the chain the pending certificate should be triggered) - * entity type of the message that must be signed - * verification keys of the signers, for current and next epoch - responses: - '200': - description: pending certificate found - content: - application/json: - schema: - $ref: '#/components/schemas/CertificatePendingMessage' - '204': - description: no pending certificate available - '412': - description: API version mismatch - default: - description: pending certificate error - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /mithril/certificates: - get: - tags: - - Cardano » Mithril - summary: Get most recent certificates - description: | - Returns the list of the most recent certificates - responses: - '200': - description: certificates found - content: - application/json: - schema: - $ref: '#/components/schemas/CertificateListMessage' - '412': - description: API version mismatch - default: - description: certificates retrieval error - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - '/mithril/certificate/{certificate_hash}': + '/utils/addresses/xpub/{xpub}/{role}/{index}': get: tags: - - Cardano » Mithril - summary: Get certificate by hash - description: | - Returns the certificate identified by its hash + - Cardano » Utilities + summary: Derive an address + description: Derive Shelley address from an xpub parameters: - - name: certificate_hash - in: path - description: Hash of the certificate to retrieve + - in: path + name: xpub required: true schema: type: string - format: bytes - example: 7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572 + description: Hex xpub + example: >- + d507c8f866691bd96e131334c355188b1a1d0b2fa0ab11545075aab332d77d9eb19657ad13ee581b56b0f8d744d66ca356b93d42fe176b3de007d53e9c4c4e7a + - in: path + name: role + required: true + schema: + type: integer + description: Account role + example: 0 + - in: path + name: index + required: true + schema: + type: integer + description: Address index + example: 2 responses: '200': - description: certificate found + description: Return derivated Shelley address content: application/json: schema: - $ref: '#/components/schemas/CertificateMessage' + $ref: '#/components/schemas/utils_addresses_xpub' + '400': + $ref: '#/components/responses/400' + '403': + $ref: '#/components/responses/403' '404': - description: certificate not found - '412': - description: API version mismatch - default: - description: pending certificate error - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /mithril/artifact/snapshots: - get: - tags: - - Cardano » Mithril - summary: Get most recent snapshots - description: | - Returns the list of the most recent snapshots - responses: - '200': - description: snapshots found - content: - application/json: - schema: - $ref: '#/components/schemas/SnapshotListMessage' - '412': - description: API version mismatch - default: - description: snapshots retrieval error - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - '/mithril/artifact/snapshot/{digest}': - get: + $ref: '#/components/responses/404' + '418': + $ref: '#/components/responses/418' + '429': + $ref: '#/components/responses/429' + '500': + $ref: '#/components/responses/500' + /utils/txs/evaluate: + post: tags: - - Cardano » Mithril - summary: Get snapshot information + - Cardano » Utilities + summary: Submit a transaction for execution units evaluation description: > - Returns the information of a snapshot and where to retrieve its binary - content + Submit an already serialized transaction to evaluate how much execution + units it requires. + + ++ Hosted Endpoint only available for hosted variant. +
parameters: - - name: digest - in: path - description: Digest of the snapshot to retrieve + - in: header + name: Content-Type required: true schema: type: string - format: bytes - example: 6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732 - responses: - '200': - description: snapshot found - content: - application/json: - schema: - $ref: '#/components/schemas/SnapshotMessage' - '404': - description: snapshot not found - '412': - description: API version mismatch - default: - description: snapshot retrieval error - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - '/mithril/artifact/snapshot/{digest}/download': - get: - tags: - - Cardano » Mithril - summary: Download the snapshot - description: | - Returns the snapshot archive binary content - parameters: - - name: digest - in: path - description: Digest of the snapshot to download - required: true - schema: - type: string - format: bytes - example: 6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732 - responses: - '200': - description: snapshot found - content: - application/gzip: - schema: - type: string - format: binary - '404': - description: snapshot not found - '412': - description: API version mismatch - default: - description: snapshot retrieval error - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /mithril/artifact/mithril-stake-distributions: - get: - tags: - - Cardano » Mithril - summary: Get most recent Mithril stake distributions - description: | - Returns the list of the most recent Mithril stake distributions + enum: + - application/cbor + x-codeSamples: + - lang: Shell + label: cURL + source: > + # Assuming `tx.data` is a CBOR serialized transaction on the + file-system. + + # (encoded using base16 or base64) + + curl + "https://cardano-mainnet.blockfrost.io/api/v0/utils/txs/evaluate" \ + -X POST \ + -H "Content-Type: application/cbor" \ + -H "project_id: $PROJECT_ID" \ + --data @./tx.data + requestBody: + description: | + The transaction to submit, serialized in CBOR. + required: true + content: + application/cbor: + schema: + type: string + description: | + The transaction to submit, serialized in CBOR. + example: > + 83a400818258208911f640d452c3be4ff3d89db63b41ce048c056951286e2e28bbf8a51588ab44000181825839009493315cd92eb5d8c4304e67b7e16ae36d61d34502694657811a2c8e32c728d3861e164cab28cb8f006448139c8f1740ffb8e7aa9e5232dc1a10b2531f021a00029519075820cb798b0bce50604eaf2e0dc89367896b18f0a6ef6b32b57e3c9f83f8ee71e608a1008182582073fea80d424276ad0978d4fe5310e8bc2d485f5f6bb3bf87612989f112ad5a7d5840c40425229749a9434763cf01b492057fd56d7091a6372eaa777a1c9b1ca508c914e6a4ee9c0d40fc10952ed668e9ad65378a28b149de6bd4204bd9f095b0a902a11907b0a1667469636b657281a266736f757263656b736f757263655f6e616d656576616c7565736675676961742076656e69616d206d696e7573 responses: '200': - description: Mithril stake distribution found - content: - application/json: - schema: - $ref: '#/components/schemas/MithrilStakeDistributionListMessage' - '412': - description: API version mismatch - default: - description: Mithril stake distribution retrieval error + description: | ++
+ Hosted Endpoint only available for hosted variant. +
parameters: - - name: hash - in: path - description: Hash of the Mithril stake distribution to retrieve + - in: header + name: Content-Type required: true schema: type: string - format: bytes - example: 6da2b104ed68481ef829d72d72c2f6a20142916d17985e01774b14ed49f0fea1 + enum: + - application/json + requestBody: + description: JSON payload + required: true + content: + application/json: + schema: + type: object + properties: + cbor: + type: string + description: Transaction CBOR (encoded using base64 or base16). + additionalUtxoSet: + type: array + description: >- + Additional UTXO as an array of tuples [TxIn, TxOut]. See + https://ogmios.dev/mini-protocols/local-tx-submission/#additional-utxo-set. + items: + type: array + minItems: 2 + maxItems: 2 + items: + anyOf: + - type: object + description: TxIn + properties: + txId: + type: string + description: Transaction hash for the input + index: + type: number + description: Index of the output within the transaction + - type: object + description: TxOut + properties: + address: + type: string + description: Output address + value: + type: object + properties: + coins: + type: number + description: Lovelace amount + assets: + type: object + description: Assets amount + additionalProperties: + type: number + required: + - coins + datum_hash: + type: string + datum: + type: object + additionalProperties: true + script: + type: object + additionalProperties: true + required: + - address + - value + required: + - cbor + x-codeSamples: + - lang: Shell + label: cURL + source: > + # Assuming TxCbor is a CBOR serialized transaction encoded using + base16 or base64 + + # For a structure of additional UTXO set see + https://ogmios.dev/mini-protocols/local-tx-submission/#additional-utxo-set + + curl + "https://cardano-mainnet.blockfrost.io/api/v0/utils/txs/evaluate/utxos" + \ + -X POST \ + -H "Content-Type: application/json" \ + -H "project_id: $PROJECT_ID" \ + -d '{"cbor":"+
+ Hosted Endpoint only available for hosted variant. +
+ x-codeSamples: + - lang: Shell + label: cURL + source: | + curl "https://ipfs.blockfrost.io/api/v0/ipfs/add" \ + -X POST \ + -H "project_id: $PROJECT_ID" \ + -F "file=@./README.md" + requestBody: + content: + multipart/form-data: + schema: + type: object + properties: + file: + type: string + format: binary + responses: + '200': + description: Returns information about added IPFS object content: application/json: schema: - $ref: '#/components/schemas/Error' - '/mithril/artifact/cardano-transaction/{hash}': + type: object + properties: + name: + type: string + example: README.md + description: Name of the file + ipfs_hash: + type: string + example: QmZbHqiCxKEVX7QfijzJTkZiSi3WEVTcvANgNAWzDYgZDr + description: IPFS hash of the file + size: + type: string + example: '125297' + description: IPFS node size in Bytes + required: + - name + - ipfs_hash + - size + '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' + '/ipfs/gateway/{IPFS_path}': + servers: + - url: 'https://ipfs.blockfrost.io/api/v0' get: tags: - - Cardano » Mithril - summary: Get Cardano transactions set snapshot information - description: | - Returns the information of a Cardano transactions set snapshot + - IPFS » Gateway + summary: Relay to an IPFS gateway + description: > + Retrieve an object from the IPFS gateway (useful if you do not want to + rely on a public gateway, such as `ipfs.blockfrost.dev`). + + ++ Hosted Endpoint only available for hosted variant. +
parameters: - - name: hash - in: path - description: Hash of the Cardano transactions set snapshot to retrieve + - in: path required: true + name: IPFS_path schema: type: string - format: bytes - example: 6da2b104ed68481ef829d72d72c2f6a20142916d17985e01774b14ed49f0fea1 + description: Path to the IPFS object responses: '200': - description: Cardano transactions set snapshot found + description: Returns the object content content: - application/json: + application/octet-stream: schema: - $ref: '#/components/schemas/CardanoTransactionSnapshotMessage' + type: string + format: binary + '400': + $ref: '#/components/responses/400' + '403': + $ref: '#/components/responses/403' '404': - description: Cardano transactions set snapshot not found - '412': - description: API version mismatch - default: - description: Cardano transactions set snapshot retrieval error - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /mithril/proof/cardano-transaction: - get: + $ref: '#/components/responses/404' + '418': + $ref: '#/components/responses/418' + '429': + $ref: '#/components/responses/429' + '500': + $ref: '#/components/responses/500' + '/ipfs/pin/add/{IPFS_path}': + servers: + - url: 'https://ipfs.blockfrost.io/api/v0' + post: tags: - - Cardano » Mithril - summary: Get the proofs of a Cardano transaction list - description: | - Returns the transaction hashes and the corresponding proofs + - IPFS » Pins + summary: Pin an object + description: >- + Pinning is necessary to avoid regular garbage collection (deletion) of + IPFS objects. Non-pinned objects are regularly being removed without + prior notice. Pinned objects are counted in your user storage quota. parameters: - - name: transaction_hashes - in: query - description: Hashes of the Cardano transactions to retrieve proofs for + - in: path required: true + name: IPFS_path schema: - type: array - items: - type: string - format: bytes - example: 6dbb104ed68481ef829a26a20142916d17985e01774d72d72c2f - explode: false + type: string + description: Path to the IPFS object responses: '200': - description: Cardano transaction proofs found + description: Returns pinned object content: application/json: schema: - $ref: '#/components/schemas/CardanoTransactionProofMessage' + type: object + properties: + ipfs_hash: + type: string + example: QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8 + description: IPFS hash of the pinned object + state: + type: string + enum: + - queued|pinned|unpinned|failed|gc + example: queued + description: State of the pin action + required: + - ipfs_hash + - state + '400': + $ref: '#/components/responses/400' + '403': + $ref: '#/components/responses/403' '404': - description: No Cardano transactions were ever signed - '412': - description: API version mismatch - default: - description: Cardano transaction proofs retrieval error - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - '/mithril/signers/registered/{epoch}': + $ref: '#/components/responses/404' + '418': + $ref: '#/components/responses/418' + '425': + $ref: '#/components/responses/425-2' + '429': + $ref: '#/components/responses/429' + '500': + $ref: '#/components/responses/500' + /ipfs/pin/list: + servers: + - url: 'https://ipfs.blockfrost.io/api/v0' get: tags: - - Cardano » Mithril - summary: Get registered signers for an epoch + - IPFS » Pins + summary: List pinned objects description: | - Returns the signers that registered at a given Epoch + List objects pinned to local storage + ++ Hosted Endpoint only available for hosted variant. +
parameters: - - name: epoch - in: path - description: Cardano Epoch at which the signer registrations are registered - required: true + - in: query + name: count + required: false schema: type: integer - format: int64 - example: 419 + 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: Registered Signers found - content: - application/json: - schema: - $ref: '#/components/schemas/SignerRegistrationsMessage' - '404': - description: Registered Signers not found - '412': - description: API version mismatch - default: - description: Registered Signers retrieval error + description: Returns pinned objects content: application/json: schema: - $ref: '#/components/schemas/Error' - /mithril/signers/tickers: + type: array + items: + type: object + properties: + time_created: + type: integer + description: Creation time of the IPFS object on our backends + example: 1615551024 + time_pinned: + type: integer + description: Pin time of the IPFS object on our backends + example: 1615551024 + ipfs_hash: + type: string + description: IPFS hash of the pinned object + example: QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx + size: + type: string + description: Size of the object in Bytes + example: '1615551024' + state: + type: string + enum: + - queued|pinned|unpinned|failed|gc + description: > + State of the pinned object, which is `queued` when we + are retriving object. If this + + is successful the state is changed to `pinned` or + `failed` if not. The state `gc` means the + + pinned item has been garbage collected due to account + being over storage quota or after it has + + been moved to `unpinned` state by removing the object + pin. + example: pinned + required: + - time_created + - time_pinned + - ipfs_hash + - size + - state + '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' + '/ipfs/pin/list/{IPFS_path}': + servers: + - url: 'https://ipfs.blockfrost.io/api/v0' get: tags: - - Cardano » Mithril - summary: Get the signers known by the aggregator + - IPFS » Pins + summary: Get details about pinned object description: | - Returns the signers party id and, if available, their pool ticker + Get information about locally pinned IPFS object + ++ Hosted Endpoint only available for hosted variant. +
+ parameters: + - in: path + required: true + name: IPFS_path + schema: + type: string + description: The path to the IPFS object responses: '200': - description: Signers found + description: Returns the pins pinned content: application/json: schema: - $ref: '#/components/schemas/SignersTickersMessage' - '412': - description: API version mismatch - default: - description: Signers retrieval error + type: object + properties: + time_created: + type: integer + description: Time of the creation of the IPFS object on our backends + example: 1615551024 + time_pinned: + type: integer + description: Time of the pin of the IPFS object on our backends + example: 1615551024 + ipfs_hash: + type: string + description: IPFS hash of the pinned object + example: QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx + size: + type: string + description: Size of the object in Bytes + example: '1615551024' + state: + type: string + enum: + - queued|pinned|unpinned|failed|gc + description: > + State of the pinned object. We define 5 states: `queued`, + `pinned`, `unpinned`, `failed`, `gc`. + + When the object is pending retrieval (i.e. after + `/ipfs/pin/add/{IPFS_path}`), the state is `queued`. + + If the object is already successfully retrieved, state is + changed to `pinned` or `failed` otherwise. + + When object is unpinned (i.e. after + `/ipfs/pin/remove/{IPFS_path}`) it is marked for garbage + collection. + + State `gc` means that a previously `unpinned` item has + been garbage collected due to account being over storage + quota. + example: pinned + required: + - time_created + - time_pinned + - ipfs_hash + - size + - state + '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' + '/ipfs/pin/remove/{IPFS_path}': + servers: + - url: 'https://ipfs.blockfrost.io/api/v0' + post: + tags: + - IPFS » Pins + summary: Remove a IPFS pin + description: | + Remove pinned objects from local storage + ++ Hosted Endpoint only available for hosted variant. +
+ parameters: + - in: path + required: true + name: IPFS_path + schema: + type: string + description: The path to the IPFS object + responses: + '200': + description: Returns the pins removed content: application/json: schema: - $ref: '#/components/schemas/Error' -components: - schemas: - onchain_metadata_cip25: - $ref: '#/components/schemas/asset_onchain_metadata_cip25' - onchain_metadata_cip68_ft_333: - $ref: '#/components/schemas/asset_onchain_metadata_cip68_ft_333' - onchain_metadata_cip68_nft_222: - $ref: '#/components/schemas/asset_onchain_metadata_cip68_nft_222' - onchain_metadata_cip68_rft_444: - $ref: '#/components/schemas/asset_onchain_metadata_cip68_rft_444' - block_content: + type: object + properties: + ipfs_hash: + type: string + example: QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8 + description: IPFS hash of the pinned object + state: + type: string + enum: + - queued|pinned|unpinned|failed|gc + example: unpinned + description: State of the pin action + required: + - ipfs_hash + - state + '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' + /metrics: + get: + tags: + - Metrics + summary: Blockfrost usage metrics + description: History of your Blockfrost usage metrics in the past 30 days. + responses: + '200': + description: Return the last 30 days of metrics + content: + application/json: + schema: + $ref: '#/components/schemas/metrics' + '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' + /metrics/endpoints: + get: + tags: + - Metrics + summary: Blockfrost endpoint usage metrics + description: > + History of your Blockfrost usage metrics per endpoint in the past 30 + days. + responses: + '200': + description: Return the last 30 days of metrics + content: + application/json: + schema: + $ref: '#/components/schemas/metrics_endpoints' + '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' + /network: + get: + tags: + - Cardano » Network + summary: Network information + description: Return detailed network information. + responses: + '200': + description: Return detailed network information. + content: + application/json: + schema: + $ref: '#/components/schemas/network' + '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' + /network/eras: + get: + tags: + - Cardano » Network + summary: Query summary of blockchain eras + description: | + Returns start and end of each era along with + parameters that can vary between hard forks. + responses: + '200': + description: Returns era summaries content. + content: + application/json: + schema: + $ref: '#/components/schemas/network-eras' + '400': + $ref: '#/components/responses/400' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '418': + $ref: '#/components/responses/418' + '425': + $ref: '#/components/responses/425' + '429': + $ref: '#/components/responses/429' + '500': + $ref: '#/components/responses/500' + '/nutlink/{address}': + get: + tags: + - Nut.link + summary: Specific nut.link address + description: List metadata about specific address + parameters: + - in: path + required: true + name: address + schema: + type: string + description: Address of a metadata oracle + responses: + '200': + description: Return the metadata about metadata oracle + content: + application/json: + schema: + $ref: '#/components/schemas/nutlink_address' + '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' + '/nutlink/{address}/tickers': + get: + tags: + - Nut.link + summary: List of tickers of an oracle + description: List of records of a specific oracle + parameters: + - in: path + required: true + name: address + schema: + type: string + description: Address of a metadata oracle + - 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 tickers provided by the metadata oracle + content: + application/json: + schema: + $ref: '#/components/schemas/nutlink_address_tickers' + '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' + '/nutlink/{address}/tickers/{ticker}': + get: + tags: + - Nut.link + summary: Specific ticker for an address + description: List of records of a specific ticker + parameters: + - in: path + required: true + name: address + schema: + type: string + description: Address of a metadata oracle + - in: path + required: true + name: ticker + schema: + type: string + description: Ticker for the pool record + - 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 tickers provided by the metadata oracle + content: + application/json: + schema: + $ref: '#/components/schemas/nutlink_address_ticker' + '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' + '/nutlink/tickers/{ticker}': + get: + tags: + - Nut.link + summary: Specific ticker + description: List of records of a specific ticker + parameters: + - in: path + required: true + name: ticker + schema: + type: string + description: Ticker for the pool record + - 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 tickers provided by the metadata oracle + content: + application/json: + schema: + $ref: '#/components/schemas/nutlink_tickers_ticker' + '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' + /mithril/: + get: + tags: + - Cardano » Mithril + summary: Get public specifications about the aggregator + description: | + Returns the specifications related to the aggregator: + * Open API version + * URL of Mithril documentation + * Capabilities of the aggregator + * Cardano transactions prover capabilities + responses: + '200': + description: root found + content: + application/json: + schema: + $ref: '#/components/schemas/AggregatorFeaturesMessage' + '412': + description: API version mismatch + default: + description: root error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /mithril/epoch-settings: + get: + tags: + - Cardano » Mithril + summary: Get current epoch settings + description: | + Returns the information related to the current epoch: + * protocol parameters for current epoch + * protocol parameters for next epoch (to setup cryptography, allowing signers to register) + responses: + '200': + description: epoch settings found + content: + application/json: + schema: + $ref: '#/components/schemas/EpochSettingsMessage' + '412': + description: API version mismatch + default: + description: epoch settings error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /mithril/certificate-pending: + get: + tags: + - Cardano » Mithril + summary: Get current pending certificate information + description: | + Returns the information related to the current pending certificate: + * protocol parameters, for current and next epoch (to setup cryptography) + * beacon information (where on the chain the pending certificate should be triggered) + * entity type of the message that must be signed + * verification keys of the signers, for current and next epoch + responses: + '200': + description: pending certificate found + content: + application/json: + schema: + $ref: '#/components/schemas/CertificatePendingMessage' + '204': + description: no pending certificate available + '412': + description: API version mismatch + default: + description: pending certificate error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /mithril/certificates: + get: + tags: + - Cardano » Mithril + summary: Get most recent certificates + description: | + Returns the list of the most recent certificates + responses: + '200': + description: certificates found + content: + application/json: + schema: + $ref: '#/components/schemas/CertificateListMessage' + '412': + description: API version mismatch + default: + description: certificates retrieval error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + '/mithril/certificate/{certificate_hash}': + get: + tags: + - Cardano » Mithril + summary: Get certificate by hash + description: | + Returns the certificate identified by its hash + parameters: + - name: certificate_hash + in: path + description: Hash of the certificate to retrieve + required: true + schema: + type: string + format: bytes + example: 7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572 + responses: + '200': + description: certificate found + content: + application/json: + schema: + $ref: '#/components/schemas/CertificateMessage' + '404': + description: certificate not found + '412': + description: API version mismatch + default: + description: pending certificate error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /mithril/artifact/snapshots: + get: + tags: + - Cardano » Mithril + summary: Get most recent snapshots + description: | + Returns the list of the most recent snapshots + responses: + '200': + description: snapshots found + content: + application/json: + schema: + $ref: '#/components/schemas/SnapshotListMessage' + '412': + description: API version mismatch + default: + description: snapshots retrieval error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + '/mithril/artifact/snapshot/{digest}': + get: + tags: + - Cardano » Mithril + summary: Get snapshot information + description: > + Returns the information of a snapshot and where to retrieve its binary + content + parameters: + - name: digest + in: path + description: Digest of the snapshot to retrieve + required: true + schema: + type: string + format: bytes + example: 6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732 + responses: + '200': + description: snapshot found + content: + application/json: + schema: + $ref: '#/components/schemas/SnapshotMessage' + '404': + description: snapshot not found + '412': + description: API version mismatch + default: + description: snapshot retrieval error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + '/mithril/artifact/snapshot/{digest}/download': + get: + tags: + - Cardano » Mithril + summary: Download the snapshot + description: | + Returns the snapshot archive binary content + parameters: + - name: digest + in: path + description: Digest of the snapshot to download + required: true + schema: + type: string + format: bytes + example: 6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732 + responses: + '200': + description: snapshot found + content: + application/gzip: + schema: + type: string + format: binary + '404': + description: snapshot not found + '412': + description: API version mismatch + default: + description: snapshot retrieval error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /mithril/artifact/mithril-stake-distributions: + get: + tags: + - Cardano » Mithril + summary: Get most recent Mithril stake distributions + description: | + Returns the list of the most recent Mithril stake distributions + responses: + '200': + description: Mithril stake distribution found + content: + application/json: + schema: + $ref: '#/components/schemas/MithrilStakeDistributionListMessage' + '412': + description: API version mismatch + default: + description: Mithril stake distribution retrieval error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + '/mithril/artifact/mithril-stake-distribution/{hash}': + get: + tags: + - Cardano » Mithril + summary: Get Mithril stake distribution information + description: | + Returns the information of a Mithril stake distribution + parameters: + - name: hash + in: path + description: Hash of the Mithril stake distribution to retrieve + required: true + schema: + type: string + format: bytes + example: 6da2b104ed68481ef829d72d72c2f6a20142916d17985e01774b14ed49f0fea1 + responses: + '200': + description: Mithril stake distribution found + content: + application/json: + schema: + $ref: '#/components/schemas/MithrilStakeDistributionMessage' + '404': + description: Mithril stake distribution not found + '412': + description: API version mismatch + default: + description: Mithril stake distribution retrieval error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /mithril/artifact/cardano-transactions: + get: + tags: + - Cardano » Mithril + summary: Get most recent Cardano transactions set snapshots + description: | + Returns the list of the most recent Cardano transactions set snapshots + responses: + '200': + description: Cardano transactions set snapshots found + content: + application/json: + schema: + $ref: '#/components/schemas/CardanoTransactionSnapshotListMessage' + '412': + description: API version mismatch + default: + description: Cardano transactions set snapshots retrieval error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + '/mithril/artifact/cardano-transaction/{hash}': + get: + tags: + - Cardano » Mithril + summary: Get Cardano transactions set snapshot information + description: | + Returns the information of a Cardano transactions set snapshot + parameters: + - name: hash + in: path + description: Hash of the Cardano transactions set snapshot to retrieve + required: true + schema: + type: string + format: bytes + example: 6da2b104ed68481ef829d72d72c2f6a20142916d17985e01774b14ed49f0fea1 + responses: + '200': + description: Cardano transactions set snapshot found + content: + application/json: + schema: + $ref: '#/components/schemas/CardanoTransactionSnapshotMessage' + '404': + description: Cardano transactions set snapshot not found + '412': + description: API version mismatch + default: + description: Cardano transactions set snapshot retrieval error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /mithril/proof/cardano-transaction: + get: + tags: + - Cardano » Mithril + summary: Get the proofs of a Cardano transaction list + description: | + Returns the transaction hashes and the corresponding proofs + parameters: + - name: transaction_hashes + in: query + description: Hashes of the Cardano transactions to retrieve proofs for + required: true + schema: + type: array + items: + type: string + format: bytes + example: 6dbb104ed68481ef829a26a20142916d17985e01774d72d72c2f + explode: false + responses: + '200': + description: Cardano transaction proofs found + content: + application/json: + schema: + $ref: '#/components/schemas/CardanoTransactionProofMessage' + '404': + description: No Cardano transactions were ever signed + '412': + description: API version mismatch + default: + description: Cardano transaction proofs retrieval error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + '/mithril/signers/registered/{epoch}': + get: + tags: + - Cardano » Mithril + summary: Get registered signers for an epoch + description: | + Returns the signers that registered at a given Epoch + parameters: + - name: epoch + in: path + description: Cardano Epoch at which the signer registrations are registered + required: true + schema: + type: integer + format: int64 + example: 419 + responses: + '200': + description: Registered Signers found + content: + application/json: + schema: + $ref: '#/components/schemas/SignerRegistrationsMessage' + '404': + description: Registered Signers not found + '412': + description: API version mismatch + default: + description: Registered Signers retrieval error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /mithril/signers/tickers: + get: + tags: + - Cardano » Mithril + summary: Get the signers known by the aggregator + description: | + Returns the signers party id and, if available, their pool ticker + responses: + '200': + description: Signers found + content: + application/json: + schema: + $ref: '#/components/schemas/SignersTickersMessage' + '412': + description: API version mismatch + default: + description: Signers retrieval error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' +components: + schemas: + onchain_metadata_cip25: + $ref: '#/components/schemas/asset_onchain_metadata_cip25' + onchain_metadata_cip68_ft_333: + $ref: '#/components/schemas/asset_onchain_metadata_cip68_ft_333' + onchain_metadata_cip68_nft_222: + $ref: '#/components/schemas/asset_onchain_metadata_cip68_nft_222' + onchain_metadata_cip68_rft_444: + $ref: '#/components/schemas/asset_onchain_metadata_cip68_rft_444' + block_content: + type: object + properties: + time: + type: integer + example: 1641338934 + description: Block creation time in UNIX time + height: + type: integer + nullable: true + example: 15243593 + description: Block number + hash: + type: string + example: 4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a + description: Hash of the block + slot: + type: integer + nullable: true + example: 412162133 + description: Slot number + epoch: + type: integer + nullable: true + example: 425 + description: Epoch number + epoch_slot: + type: integer + nullable: true + example: 12 + description: Slot within the epoch + slot_leader: + type: string + example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy + description: >- + Bech32 ID of the slot leader or specific block description in case + there is no slot leader + size: + type: integer + example: 3 + description: Block size in Bytes + tx_count: + type: integer + example: 1 + description: Number of transactions in the block + output: + type: string + nullable: true + example: '128314491794' + description: Total output within the block in Lovelaces + fees: + type: string + nullable: true + example: '592661' + description: Total fees within the block in Lovelaces + block_vrf: + type: string + nullable: true + example: vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty + description: VRF key of the block + minLength: 65 + maxLength: 65 + op_cert: + type: string + nullable: true + example: da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c + description: The hash of the operational certificate of the block producer + op_cert_counter: + type: string + nullable: true + example: '18' + description: The value of the counter used to produce the operational certificate + previous_block: + type: string + nullable: true + example: 43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05 + description: Hash of the previous block + next_block: + type: string + nullable: true + example: 8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa + description: Hash of the next block + confirmations: + type: integer + example: 4698 + description: Number of block confirmations + required: + - time + - height + - hash + - slot + - epoch + - epoch_slot + - slot_leader + - size + - tx_count + - output + - fees + - block_vrf + - op_cert + - op_cert_counter + - previous_block + - next_block + - confirmations + block_content_txs: + type: array + items: + type: string + description: Hash of the transaction + example: + - 8788591983aa73981fc92d6cddbbe643959f5a784e84b8bee0db15823f575a5b + - 4eef6bb7755d8afbeac526b799f3e32a624691d166657e9d862aaeb66682c036 + - 52e748c4dec58b687b90b0b40d383b9fe1f24c1a833b7395cdf07dd67859f46f + - e8073fd5318ff43eca18a852527166aa8008bee9ee9e891f585612b7e4ba700b + block_content_array: + type: array + items: + $ref: '#/components/schemas/block_content' + block_content_addresses: + type: array + items: + type: object + properties: + address: + type: string + description: Address that was affected in the specified block + transactions: + type: array + description: >- + List of transactions containing the address either in their inputs + or outputs. Sorted by transaction index within a block, ascending. + items: + type: object + properties: + tx_hash: + type: string + required: + - tx_hash + required: + - address + - transactions + example: + - address: >- + addr1q9ld26v2lv8wvrxxmvg90pn8n8n5k6tdst06q2s856rwmvnueldzuuqmnsye359fqrk8hwvenjnqultn7djtrlft7jnq7dy7wv + transactions: + - tx_hash: 1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0 + - address: >- + addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + transactions: + - tx_hash: 1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157d0 + genesis_content: + type: object + properties: + active_slots_coefficient: + type: number + example: 0.05 + description: The proportion of slots in which blocks should be issued + update_quorum: + type: integer + example: 5 + description: >- + Determines the quorum needed for votes on the protocol parameter + updates + max_lovelace_supply: + type: string + example: '45000000000000000' + description: The total number of lovelace in the system + network_magic: + type: integer + example: 764824073 + description: Network identifier + epoch_length: + type: integer + example: 432000 + description: Number of slots in an epoch + system_start: + type: integer + example: 1506203091 + description: Time of slot 0 in UNIX time + slots_per_kes_period: + type: integer + example: 129600 + description: Number of slots in an KES period + slot_length: + type: integer + example: 1 + description: Duration of one slot in seconds + max_kes_evolutions: + type: integer + example: 62 + description: >- + The maximum number of time a KES key can be evolved before a pool + operator must create a new operational certificate + security_param: + type: integer + example: 2160 + description: Security parameter k + required: + - active_slots_coefficient + - update_quorum + - max_lovelace_supply + - network_magic + - epoch_length + - system_start + - slots_per_kes_period + - slot_length + - max_kes_evolutions + - security_param + dreps: + type: array + items: + type: object + properties: + drep_id: + type: string + description: The Bech32 encoded DRep address + hex: + type: string + description: The raw bytes of the DRep + required: + - drep_id + - hex + example: + - drep_id: drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn + hex: db1bc3c3f99ce68977ceaf27ab4dd917123ef9e73f85c304236eab23 + - drep_id: drep1cxayn4fgy27yaucvhamsvqj3v6835mh3tjjx6x8hdnr4 + hex: c1ba49d52822bc4ef30cbf77060251668f1a6ef15ca46d18f76cc758 + drep: + type: object + properties: + drep_id: + type: string + description: Bech32 encoded DRep address + hex: + type: string + description: The raw bytes of the DRep + amount: + type: string + description: The total amount of voting power this DRep is delegated. + active: + type: boolean + description: Registration state of the DRep + active_epoch: + type: integer + nullable: true + description: Epoch of the most recent action - registration or deregistration + has_script: + type: boolean + description: Flag which shows if this DRep credentials are a script hash + required: + - drep_id + - hex + - amount + - active + - active_epoch + - has_script + example: + drep_id: drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc + hex: a61261172624e8333ceff098648d90f8e404e2e36d5b5f5985cbd35d + amount: '2000000' + active: true + active_epoch: 420 + has_script: true + drep_delegators: + type: array + items: + type: object + properties: + address: + type: string + description: Bech32 encoded stake addresses + amount: + type: string + description: Currently delegated amount + required: + - address + - amount + example: + - address: stake1ux4vspfvwuus9uwyp5p3f0ky7a30jq5j80jxse0fr7pa56sgn8kha + amount: '1137959159981411' + - address: stake1uylayej7esmarzd4mk4aru37zh9yz0luj3g9fsvgpfaxulq564r5u + amount: '16958865648' + - address: stake1u8lr2pnrgf8f7vrs9lt79hc3sxm8s2w4rwvgpncks3axx6q93d4ck + amount: '18605647' + drep_metadata: + type: object + properties: + drep_id: + type: string + description: Bech32 encoded addresses + hex: + type: string + description: The raw bytes of the DRep + url: + type: string + nullable: true + example: 'https://stakenuts.com/drep.json' + description: URL to the drep metadata + hash: + type: string + nullable: true + example: 69c0c68cb57f4a5b4a87bad896fc274678e7aea98e200fa14a1cb40c0cab1d8c" + description: Hash of the metadata file + json_metadata: + anyOf: + - type: string + - type: object + additionalProperties: true + - type: array + items: {} + - type: integer + - type: number + - type: boolean + - type: 'null' + description: Content of the JSON metadata (validated CIP-119) + bytes: + type: string + description: Content of the metadata (raw) + required: + - drep_id + - hex + - url + - hash + - json_metadata + - bytes + example: + drep_id: drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc + hex: a61261172624e8333ceff098648d90f8e404e2e36d5b5f5985cbd35d + url: 'https://aaa.xyz/drep.json' + hash: a14a5ad4f36bddc00f92ddb39fd9ac633c0fd43f8bfa57758f9163d10ef916de + json_metadata: + '@context': + CIP100: >- + https://github.com/cardano-foundation/CIPs/blob/master/CIP-0100/README.md# + CIP119: >- + https://github.com/cardano-foundation/CIPs/blob/master/CIP-0119/README.md# + hashAlgorithm: 'CIP100:hashAlgorithm' + body: + '@id': 'CIP119:body' + '@context': + references: + '@id': 'CIP119:references' + '@container': '@set' + '@context': + GovernanceMetadata: 'CIP100:GovernanceMetadataReference' + Other: 'CIP100:OtherReference' + label: 'CIP100:reference-label' + uri: 'CIP100:reference-uri' + paymentAddress: 'CIP119:paymentAddress' + givenName: 'CIP119:givenName' + image: + '@id': 'CIP119:image' + '@context': + ImageObject: 'https://schema.org/ImageObject' + objectives: 'CIP119:objectives' + motivations: 'CIP119:motivations' + qualifications: 'CIP119:qualifications' + hahsAlgorithm: blake2b-256 + body: + paymentAddress: >- + addr1q86dnpkva4mm859c8ur7tjxn57zgsu6vg8pdetkdve3fsacnq7twy06u2ev5759vutpjgzfryx0ud8hzedhzerava35qwh3x34 + givenName: Ryan Williams + image: + '@type': ImageObject + contentUrl: 'https://avatars.githubusercontent.com/u/44342099?v=4' + sha256: 2a21e4f7b20c8c72f573707b068fb8fc6d8c64d5035c4e18ecae287947fe2b2e + objectives: Buy myself an island. + motivations: I really would like to own an island. + qualifications: >- + I have my 100m swimming badge, so I would be qualified to be able + to swim around island. + references: + - '@type': Other + label: A cool island for Ryan + uri: >- + https://www.google.com/maps/place/World's+only+5th+order+recursive+island/@62.6511465,-97.7946829,15.75z/data=!4m14!1m7!3m6!1s0x5216a167810cee39:0x11431abdfe4c7421!2sWorld's+only+5th+order+recursive+island!8m2!3d62.651114!4d-97.7872244!16s%2Fg%2F11spwk2b6n!3m5!1s0x5216a167810cee39:0x11431abdfe4c7421!8m2!3d62.651114!4d-97.7872244!16s%2Fg%2F11spwk2b6n?authuser=0&entry=ttu + - '@type': Link + label: Ryan's Twitter + uri: 'https://twitter.com/Ryun1_' + bytes: >- + \x7b0a20202240636f6e74657874223a207b0a2020202022406c616e6775616765223a2022656e2d7573222c0a2020202022434950313030223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130302f524541444d452e6 + drep_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: f4097fbdb87ab7c7ab44b30d4e2b81713a058488975d1ab8b05c381dd946a393 + cert_index: 0 + action: registered + - tx_hash: dd3243af975be4b5bedce4e5f5b483b2386d5ad207d05e0289c1df0eb261447e + cert_index: 0 + action: deregistered + drep_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' + - tx_hash: b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5 + cert_index: 3 + vote: abstain + proposals: + 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. + governance_type: + type: string + enum: + - hard_fork_initiation + - new_committee + - new_constitution + - info_action + - no_confidence + - parameter_change + - treasury_withdrawals + description: Type of proposal. + required: + - tx_hash + - cert_index + - governance_type + example: + - tx_hash: 2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531 + cert_index: 1 + governance_type: treasury_withdrawals + - tx_hash: 71317e951b20aa46e9fbf45a46a6e950d5723a481225519655bf6c60 + cert_index: 4 + governance_type: no_confidence + proposal: type: object properties: - time: - type: integer - example: 1641338934 - description: Block creation time in UNIX time - height: + tx_hash: + type: string + description: Hash of the proposal transaction. + cert_index: type: integer + description: Index of the certificate within the proposal transaction. + governance_type: + type: string + enum: + - hard_fork_initiation + - new_committee + - new_constitution + - info_action + - no_confidence + - parameter_change + - treasury_withdrawals + description: Type of proposal. + governance_description: + additionalProperties: true + type: object nullable: true - example: 15243593 - description: Block number - hash: + description: >- + An object describing the content of this GovActionProposal in a + readable way. + deposit: type: string - example: 4ea1ba291e8eef538635a53e59fddba7810d1679631cc3aed7c8e6c4091a516a - description: Hash of the block - slot: + description: The deposit amount paid for this proposal. + return_address: + type: string + description: >- + Bech32 stake address of the reward address to receive the deposit + when it is repaid. + ratified_epoch: type: integer nullable: true - example: 412162133 - description: Slot number - epoch: + enacted_epoch: type: integer nullable: true - example: 425 - description: Epoch number - epoch_slot: + dropped_epoch: type: integer nullable: true - example: 12 - description: Slot within the epoch - slot_leader: + expired_epoch: + type: integer + nullable: true + expiration: + type: integer + description: Shows the epoch at which this governance action will expire. + anchor_url: type: string - example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2qnikdy - description: >- - Bech32 ID of the slot leader or specific block description in case - there is no slot leader - size: + nullable: true + description: The URL of the offchain anchor data. + anchor_hash: + type: string + nullable: true + description: The hash of the offchain anchor data. + required: + - tx_hash + - cert_index + - governance_type + - deposit + - return_address + - governance_description + - ratified_epoch + - enacted_epoch + - dropped_epoch + - expired_epoch + - expiration + - anchor_url + - anchor_hash + example: + tx_hash: 2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531 + cert_index: 1 + governance_type: treasury_withdrawals + deposit: 12000 + return_address: stake_test1urd3hs7rlxwwdzthe6hj026dmyt3y0heuulctscyydh2kgck6nkmz + governance_description: >- + TreasuryWithdrawals (fromList [(RewardAcnt {getRwdNetwork = Testnet, + getRwdCred = KeyHashObj (KeyHash + "71317e951b20aa46e9fbf45a46a6e950d5723a481225519655bf6c60")},Coin + 20000000)]) + ratified_epoch: null + enacted_epoch: 123 + dropped_epoch: null + expired_epoch: null + expiration: 120 + anchor_url: 'https://gist.github.com/123' + anchor_hash: 50b340624d49823720505e3f0095be0d6cd8f26501e094a6ab9068dd + proposal_parameters: + type: object + properties: + epoch: type: integer - example: 3 - description: Block size in Bytes - tx_count: + example: 225 + description: Epoch number + min_fee_a: type: integer - example: 1 - description: Number of transactions in the block - output: + 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: '128314491794' - description: Total output within the block in Lovelaces - fees: + 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 + 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 - example: '592661' - description: Total fees within the block in Lovelaces - block_vrf: + 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 + 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: 0.0000721 + description: The cost of script execution step usage + max_tx_ex_mem: type: string nullable: true - example: vrf_vk1wf2k6lhujezqcfe00l6zetxpnmh9n6mwhpmhm0dvfh3fxgmdnrfqkms8ty - description: VRF key of the block - minLength: 65 - maxLength: 65 - op_cert: + 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: da905277534faf75dae41732650568af545134ee08a3c0392dbefc8096ae177c - description: The hash of the operational certificate of the block producer - op_cert_counter: + 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: '18' - description: The value of the counter used to produce the operational certificate - previous_block: + 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. + cost_model_id: + type: integer + format: int64 + description: The CostModel table index for the proposal. + pvt_motion_no_confidence: + type: number + description: >- + Pool Voting threshold for motion of no-confidence. New in + 13.2-Conway. + pvt_committee_normal: + type: number + description: >- + Pool Voting threshold for new committee/threshold (normal state). + New in 13.2-Conway. + pvt_committee_no_confidence: + type: number + description: >- + Pool Voting threshold for new committee/threshold (state of + no-confidence). New in 13.2-Conway. + pvt_hard_fork_initiation: + type: number + description: Pool Voting threshold for hard-fork initiation. New in 13.2-Conway. + dvt_motion_no_confidence: + type: number + description: DRep Vote threshold for motion of no-confidence. New in 13.2-Conway. + dvt_committee_normal: + type: number + description: >- + DRep Vote threshold for new committee/threshold (normal state). New + in 13.2-Conway. + dvt_committee_no_confidence: + type: number + description: >- + DRep Vote threshold for new committee/threshold (state of + no-confidence). New in 13.2-Conway. + dvt_update_to_constitution: + type: number + description: >- + DRep Vote threshold for update to the Constitution. New in + 13.2-Conway. + dvt_hard_fork_initiation: + type: number + description: DRep Vote threshold for hard-fork initiation. New in 13.2-Conway. + dvt_p_p_network_group: + type: number + description: >- + DRep Vote threshold for protocol parameter changes, network group. + New in 13.2-Conway. + dvt_p_p_economic_group: + type: number + description: >- + DRep Vote threshold for protocol parameter changes, economic group. + New in 13.2-Conway. + dvt_p_p_technical_group: + type: number + description: >- + DRep Vote threshold for protocol parameter changes, technical group. + New in 13.2-Conway. + dvt_p_p_gov_group: + type: number + description: >- + DRep Vote threshold for protocol parameter changes, governance + group. New in 13.2-Conway. + dvt_treasury_withdrawal: + type: number + description: DRep Vote threshold for treasury withdrawal. New in 13.2-Conway. + committee_min_size: + type: string + format: word64type + description: Minimal constitutional committee size. New in 13.2-Conway. + committee_max_term_length: + type: string + format: word64type + description: Constitutional committee term limits. New in 13.2-Conway. + gov_action_lifetime: + type: string + format: word64type + description: Governance action expiration. New in 13.2-Conway. + gov_action_deposit: + type: string + format: word64type + description: Governance action deposit. New in 13.2-Conway. + drep_deposit: type: string - nullable: true - example: 43ebccb3ac72c7cebd0d9b755a4b08412c9f5dcb81b8a0ad1e3c197d29d47b05 - description: Hash of the previous block - next_block: + format: word64type + description: DRep deposit amount. New in 13.2-Conway. + drep_activity: type: string + format: word64type + description: DRep activity period. New in 13.2-Conway. + pvtpp_security_group: + type: number + nullable: true + min_fee_ref_script_cost_per_byte: + type: number nullable: true - example: 8367f026cf4b03e116ff8ee5daf149b55ba5a6ec6dec04803b8dc317721d15fa - description: Hash of the next block - confirmations: - type: integer - example: 4698 - description: Number of block confirmations required: - - time - - height - - hash - - slot - - epoch - - epoch_slot - - slot_leader - - size - - tx_count - - output - - fees - - block_vrf - - op_cert - - op_cert_counter - - previous_block - - next_block - - confirmations - block_content_txs: + - 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 + - cost_model_id + - 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 + - min_fee_ref_script_cost_per_byte + proposal_withdrawals: type: array items: - type: string - description: Hash of the transaction + type: object + properties: + stake_address: + type: string + example: stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7 + description: Bech32 stake address + amount: + type: string + description: Withdrawal amount in Lovelaces + required: + - stake_address + - amount example: - - 8788591983aa73981fc92d6cddbbe643959f5a784e84b8bee0db15823f575a5b - - 4eef6bb7755d8afbeac526b799f3e32a624691d166657e9d862aaeb66682c036 - - 52e748c4dec58b687b90b0b40d383b9fe1f24c1a833b7395cdf07dd67859f46f - - e8073fd5318ff43eca18a852527166aa8008bee9ee9e891f585612b7e4ba700b - block_content_array: - type: array - items: - $ref: '#/components/schemas/block_content' - block_content_addresses: + - stake_address: stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7 + amount: '454541212442' + - stake_address: stake1xx2g2c9dx2nhhehyrezyxpkstoppcqmu9hk63qgfkccw5rqttygt2 + amount: '97846969' + proposal_votes: type: array items: type: object properties: - address: + tx_hash: type: string - description: Address that was affected in the specified block - transactions: - type: array + description: Hash of the voting transaction. + cert_index: + type: integer + description: Index of the certificate within the voting transaction. + voter_role: + type: string + enum: + - constitutional_committee + - drep + - spo description: >- - List of transactions containing the address either in their inputs - or outputs. Sorted by transaction index within a block, ascending. - items: - type: object - properties: - tx_hash: - type: string - required: - - tx_hash + The role of the voter. Can be one of constitutional_committee, + drep, spo. + voter: + type: string + description: The actual voter. + vote: + type: string + enum: + - 'yes' + - 'no' + - abstain + description: 'The Vote. Can be one of yes, no, abstain.' required: - - address - - transactions + - tx_hash + - cert_index + - voter_role + - voter + - vote example: - - address: >- - addr1q9ld26v2lv8wvrxxmvg90pn8n8n5k6tdst06q2s856rwmvnueldzuuqmnsye359fqrk8hwvenjnqultn7djtrlft7jnq7dy7wv - transactions: - - tx_hash: 1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157f0 - - address: >- - addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz - transactions: - - tx_hash: 1a0570af966fb355a7160e4f82d5a80b8681b7955f5d44bec0dce628516157d0 - genesis_content: + - tx_hash: b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5 + cert_index: 2 + voter_role: drep + voter: drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn + vote: 'yes' + - tx_hash: b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5 + cert_index: 3 + voter_role: constitutional_committee + voter: 53a42debdc7ffd90085ab7fd9800b63e6d1c9ac481ba6eb7b6a844e4 + vote: abstain + proposal_metadata: type: object properties: - active_slots_coefficient: - type: number - example: 0.05 - description: The proportion of slots in which blocks should be issued - update_quorum: - type: integer - example: 5 - description: >- - Determines the quorum needed for votes on the protocol parameter - updates - max_lovelace_supply: + tx_hash: type: string - example: '45000000000000000' - description: The total number of lovelace in the system - network_magic: - type: integer - example: 764824073 - description: Network identifier - epoch_length: - type: integer - example: 432000 - description: Number of slots in an epoch - system_start: - type: integer - example: 1506203091 - description: Time of slot 0 in UNIX time - slots_per_kes_period: - type: integer - example: 129600 - description: Number of slots in an KES period - slot_length: - type: integer - example: 1 - description: Duration of one slot in seconds - max_kes_evolutions: + description: Off-chain metadata of a proposal with a specific transaction hash + cert_index: type: integer - example: 62 description: >- - The maximum number of time a KES key can be evolved before a pool - operator must create a new operational certificate - security_param: - type: integer - example: 2160 - description: Security parameter k + Off-chain metadata of a proposal with a specific transaction + cert_index + url: + type: string + nullable: true + example: 'https://abc.xyz/gov.json' + description: URL to the proposal metadata + hash: + type: string + nullable: true + example: 69c0c68cb57f4a5b4a87bad896fc274678e7aea98e200fa14a1cb40c0cab1d8c" + description: Hash of the metadata file + json_metadata: + anyOf: + - type: string + - type: object + additionalProperties: true + - type: array + items: {} + - type: integer + - type: number + - type: boolean + - type: 'null' + description: Content of the JSON metadata (validated CIP-108) required: - - active_slots_coefficient - - update_quorum - - max_lovelace_supply - - network_magic - - epoch_length - - system_start - - slots_per_kes_period - - slot_length - - max_kes_evolutions - - security_param + - tx_hash + - cert_index + - url + - hash + - json_metadata + - bytes + example: + tx_hash: 257d75c8ddb0434e9b63e29ebb6241add2b835a307aa33aedba2effe09ed4ec8 + cert_index: 2 + url: >- + https://raw.githubusercontent.com/carloslodelar/proposals/main/pv10.json + hash: ffa226f3863aca006172d559cf46bb8b883a47233962ae2fc94c158d7de6fa81 + json_metadata: + body: + title: Hardfork to Protocol version 10 + abstract: Let's have sanchoNet in full governance as soon as possible + rationale: Let's keep testing stuff + motivation: PV9 is not as fun as PV10 + references: + - uri: '' + '@type': Other + label: Hardfork to PV10 + authors: + - name: Carlos + witness: + publicKey: >- + 7ea09a34aebb13c9841c71397b1cabfec5ddf950405293dee496cac2f437480a + signature: >- + a476985b4cc0d457f247797611799a6f6a80fc8cb7ec9dcb5a8223888d0618e30de165f3d869c4a0d9107d8a5b612ad7c5e42441907f5b91796f0d7187d64a01 + witnessAlgorithm: ed25519 + '@context': + body: + '@id': 'CIP108:body' + '@context': + title: 'CIP108:title' + abstract: 'CIP108:abstract' + rationale: 'CIP108:rationale' + motivation: 'CIP108:motivation' + references: + '@id': 'CIP108:references' + '@context': + uri: 'CIP100:reference-uri' + Other: 'CIP100:OtherReference' + label: 'CIP100:reference-label' + referenceHash: + '@id': 'CIP108:referenceHash' + '@context': + hashDigest: 'CIP108:hashDigest' + hashAlgorithm: 'CIP100:hashAlgorithm' + GovernanceMetadata: 'CIP100:GovernanceMetadataReference' + '@container': '@set' + CIP100: >- + https://github.com/cardano-foundation/CIPs/blob/master/CIP-0100/README.md# + CIP108: >- + https://github.com/cardano-foundation/CIPs/blob/master/CIP-0108/README.md# + authors: + '@id': 'CIP100:authors' + '@context': + name: 'http://xmlns.com/foaf/0.1/name' + witness: + '@id': 'CIP100:witness' + '@context': + publicKey: 'CIP100:publicKey' + signature: 'CIP100:signature' + witnessAlgorithm: 'CIP100:witnessAlgorithm' + '@container': '@set' + '@language': en-us + hashAlgorithm: 'CIP100:hashAlgorithm' + hashAlgorithm: blake2b-256 + bytes: >- + \x7b0a20202240636f6e74657874223a207b0a2020202022406c616e6775616765223a2022656e2d7573222c0a2020202022434950313030223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130302f524541444d452e6d6423222c0a2020202022434950313038223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130382f524541444d452e6d6423222c0a202020202268617368416c676f726974686d223a20224349503130303a68617368416c676f726974686d222c0a2020202022626f6479223a207b0a20202020202022406964223a20224349503130383a626f6479222c0a2020202020202240636f6e74657874223a207b0a2020202020202020227265666572656e636573223a207b0a2020202020202020202022406964223a20224349503130383a7265666572656e636573222c0a202020202020202020202240636f6e7461696e6572223a202240736574222c0a202020202020202020202240636f6e74657874223a207b0a20202020202020202020202022476f7665726e616e63654d65746164617461223a20224349503130303a476f7665726e616e63654d657461646174615265666572656e6365222c0a202020202020202020202020224f74686572223a20224349503130303a4f746865725265666572656e6365222c0a202020202020202020202020226c6162656c223a20224349503130303a7265666572656e63652d6c6162656c222c0a20202020202020202020202022757269223a20224349503130303a7265666572656e63652d757269222c0a202020202020202020202020227265666572656e636548617368223a207b0a202020202020202020202020202022406964223a20224349503130383a7265666572656e636548617368222c0a20202020202020202020202020202240636f6e74657874223a207b0a202020202020202020202020202020202268617368446967657374223a20224349503130383a68617368446967657374222c0a202020202020202020202020202020202268617368416c676f726974686d223a20224349503130303a68617368416c676f726974686d220a20202020202020202020202020207d0a2020202020202020202020207d0a202020202020202020207d0a20202020202020207d2c0a2020202020202020227469746c65223a20224349503130383a7469746c65222c0a2020202020202020226162737472616374223a20224349503130383a6162737472616374222c0a2020202020202020226d6f7469766174696f6e223a20224349503130383a6d6f7469766174696f6e222c0a202020202020202022726174696f6e616c65223a20224349503130383a726174696f6e616c65220a2020202020207d0a202020207d2c0a2020202022617574686f7273223a207b0a20202020202022406964223a20224349503130303a617574686f7273222c0a2020202020202240636f6e7461696e6572223a202240736574222c0a2020202020202240636f6e74657874223a207b0a2020202020202020226e616d65223a2022687474703a2f2f786d6c6e732e636f6d2f666f61662f302e312f6e616d65222c0a2020202020202020227769746e657373223a207b0a2020202020202020202022406964223a20224349503130303a7769746e657373222c0a202020202020202020202240636f6e74657874223a207b0a202020202020202020202020227769746e657373416c676f726974686d223a20224349503130303a7769746e657373416c676f726974686d222c0a202020202020202020202020227075626c69634b6579223a20224349503130303a7075626c69634b6579222c0a202020202020202020202020227369676e6174757265223a20224349503130303a7369676e6174757265220a202020202020202020207d0a20202020202020207d0a2020202020207d0a202020207d0a20207d2c0a20202268617368416c676f726974686d223a2022626c616b6532622d323536222c0a202022626f6479223a207b0a20202020227469746c65223a202248617264666f726b20746f2050726f746f636f6c2076657273696f6e203130222c0a20202020226162737472616374223a20224c6574277320686176652073616e63686f4e657420696e2066756c6c20676f7665726e616e636520617320736f6f6e20617320706f737369626c65222c0a20202020226d6f7469766174696f6e223a2022505639206973206e6f742061732066756e2061732050563130222c0a2020202022726174696f6e616c65223a20224c65742773206b6565702074657374696e67207374756666222c0a20202020227265666572656e636573223a205b0a2020202020207b0a2020202020202020224074797065223a20224f74686572222c0a2020202020202020226c6162656c223a202248617264666f726b20746f2050563130222c0a202020202020202022757269223a2022220a2020202020207d0a202020205d0a20207d2c0a202022617574686f7273223a205b0a202020207b0a202020202020226e616d65223a20224361726c6f73222c0a202020202020227769746e657373223a207b0a2020202020202020227769746e657373416c676f726974686d223a202265643235353139222c0a2020202020202020227075626c69634b6579223a202237656130396133346165626231336339383431633731333937623163616266656335646466393530343035323933646565343936636163326634333734383061222c0a2020202020202020227369676e6174757265223a20226134373639383562346363306434353766323437373937363131373939613666366138306663386362376563396463623561383232333838386430363138653330646531363566336438363963346130643931303764386135623631326164376335653432343431393037663562393137393666306437313837643634613031220a2020202020207d0a202020207d0a20205d0a7d epoch_content: type: object properties: @@ -6476,10 +7979,102 @@ components: type: string nullable: true example: '34482' + deprecated: true description: >- Cost per UTxO word for Alonzo. Cost per UTxO byte for Babbage and later. - deprecated: true + 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 + min_fee_ref_script_cost_per_byte: + type: number + nullable: true required: - epoch - min_fee_a @@ -6513,6 +8108,28 @@ components: - 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 + - min_fee_ref_script_cost_per_byte epoch_content_array: type: array items: @@ -7281,7 +8898,12 @@ components: type: string nullable: true example: pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy - description: Bech32 pool ID that owns the account + description: Bech32 pool ID to which this account is delegated + drep_id: + type: string + nullable: true + example: drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc + description: Bech32 drep ID to which this account is delegated required: - stake_address - active @@ -7293,6 +8915,7 @@ components: - treasury_sum - withdrawable_amount - pool_id + - drep_id account_reward_content: type: array items: @@ -8648,6 +10271,32 @@ components: - 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' assets: type: array items: diff --git a/package.json b/package.json index 5c6d845b..a012fc02 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@blockfrost/openapi", - "version": "0.1.64", + "version": "0.1.65-beta.8", "description": "OpenAPI specifications for blockfrost.io", "repository": "git@github.com:blockfrost/openapi.git", "author": "admin@blockfrost.io", diff --git a/shell.nix b/shell.nix index 32c994ac..4f47d711 100644 --- a/shell.nix +++ b/shell.nix @@ -10,8 +10,9 @@ stdenv.mkDerivation { export PATH="$PATH:$(pwd)/node_modules/.bin" yarn echo "Rebuilding docs" + yarn build yarn run bundle && yarn run generate-docs && yarn run generate-types - echo -e "\nDON'T FORGET TO RUN THIS BEFORE OPENING PR:" - echo "yarn run bundle && yarn run generate-docs && yarn run generate-types" + echo -e "\nDON'T FORGET TO RUN yarn build && yarn run bundle && yarn run generate-docs && yarn run generate-types" + echo "yarn build && yarn run bundle && yarn run generate-docs && yarn run generate-types" ''; } diff --git a/src/definitions.yaml b/src/definitions.yaml index 9aad2f23..91b8f47d 100644 --- a/src/definitions.yaml +++ b/src/definitions.yaml @@ -1,6 +1,6 @@ openapi: 3.0.0 info: - version: "0.1.64" + version: "0.1.65" title: Blockfrost.io ~ API Documentation x-logo: url: https://staging.blockfrost.io/images/logo.svg @@ -264,6 +264,7 @@ tags: - name: Cardano » Assets - name: Cardano » Blocks - name: Cardano » Epochs + - name: Cardano » Governance - name: Cardano » Ledger - name: Cardano » Mempool - name: Cardano » Metadata @@ -295,12 +296,16 @@ paths: /: $ref: ./paths/api/root/index.yaml + # health + /health: $ref: ./paths/api/health/index.yaml /health/clock: $ref: ./paths/api/health/clock.yaml + # blocks + /blocks/latest: $ref: ./paths/api/blocks/latest/index.yaml @@ -328,9 +333,51 @@ paths: /blocks/{hash_or_number}/addresses: $ref: ./paths/api/blocks/addresses/index.yaml + # genesis + /genesis: $ref: ./paths/api/genesis/index.yaml + # governance + + /governance/dreps: + $ref: ./paths/api/governance/dreps/index.yaml + + /governance/dreps/{drep_id}: + $ref: ./paths/api/governance/dreps/{drep_id}/index.yaml + + /governance/dreps/{drep_id}/delegators: + $ref: ./paths/api/governance/dreps/{drep_id}/delegators.yaml + + /governance/dreps/{drep_id}/metadata: + $ref: ./paths/api/governance/dreps/{drep_id}/metadata.yaml + + /governance/dreps/{drep_id}/updates: + $ref: ./paths/api/governance/dreps/{drep_id}/updates.yaml + + /governance/dreps/{drep_id}/votes: + $ref: ./paths/api/governance/dreps/{drep_id}/votes.yaml + + /governance/proposals: + $ref: ./paths/api/governance/proposals/index.yaml + + /governance/proposals/{tx_hash}/{cert_index}: + $ref: ./paths/api/governance/proposals/{tx_hash}/{cert_index}/index.yaml + + /governance/proposals/{tx_hash}/{cert_index}/parameters: + $ref: ./paths/api/governance/proposals/{tx_hash}/{cert_index}/parameters.yaml + + /governance/proposals/{tx_hash}/{cert_index}/withdrawals: + $ref: ./paths/api/governance/proposals/{tx_hash}/{cert_index}/withdrawals.yaml + + /governance/proposals/{tx_hash}/{cert_index}/votes: + $ref: ./paths/api/governance/proposals/{tx_hash}/{cert_index}/votes.yaml + + /governance/proposals/{tx_hash}/{cert_index}/metadata: + $ref: ./paths/api/governance/proposals/{tx_hash}/{cert_index}/metadata.yaml + + # epochs + /epochs/latest: $ref: ./paths/api/epochs/latest/index.yaml @@ -361,6 +408,8 @@ paths: /epochs/{number}/parameters: $ref: ./paths/api/epochs/{number}/parameters.yaml + # transactions + /txs/{hash}: $ref: ./paths/api/txs/{hash}/index.yaml @@ -403,6 +452,8 @@ paths: /tx/submit: $ref: ./paths/api/tx/submit.yaml + # accounts + /accounts/{stake_address}: $ref: ./paths/api/accounts/{stake_address}/index.yaml @@ -433,6 +484,8 @@ paths: /accounts/{stake_address}/addresses/total: $ref: ./paths/api/accounts/{stake_address}/addresses/total.yaml + # mempool + /mempool: $ref: ./paths/api/mempool/index.yaml @@ -442,6 +495,8 @@ paths: /mempool/addresses/{address}: $ref: ./paths/api/mempool/addresses/{address}/index.yaml + # metadata + /metadata/txs/labels: $ref: ./paths/api/metadata/txs/labels/index.yaml @@ -454,6 +509,8 @@ paths: /metadata/txs/labels/{label}/cbor: $ref: ./paths/api/metadata/txs/labels/{label}/cbor.yaml + # addresses + /addresses/{address}: $ref: ./paths/api/addresses/{address}/index.yaml @@ -475,6 +532,8 @@ paths: /addresses/{address}/transactions: $ref: ./paths/api/addresses/{address}/transactions.yaml + # pools + /pools: $ref: ./paths/api/pools/index.yaml @@ -508,6 +567,11 @@ paths: /pools/{pool_id}/updates: $ref: ./paths/api/pools/{pool_id}/updates.yaml + /pools/{pool_id}/votes: + $ref: ./paths/api/pools/{pool_id}/votes.yaml + + # assets + /assets: $ref: ./paths/api/assets/index.yaml @@ -529,6 +593,8 @@ paths: /assets/policy/{policy_id}: $ref: ./paths/api/assets/policy/{policy_id}/index.yaml + # scripts + /scripts: $ref: ./paths/api/scripts/index.yaml @@ -550,6 +616,8 @@ paths: /scripts/datum/{datum_hash}/cbor: $ref: ./paths/api/scripts/datum/{datum_hash}/cbor.yaml + # utils + /utils/addresses/xpub/{xpub}/{role}/{index}: $ref: ./paths/api/utils/addresses/xpub/{xpub}/{role}/{index}/index.yaml @@ -559,6 +627,8 @@ paths: /utils/txs/evaluate/utxos: $ref: ./paths/api/utils/txs/evaluate/utxos.yaml + # ipfs + /ipfs/add: $ref: ./paths/ipfs/add.yaml @@ -577,18 +647,24 @@ paths: /ipfs/pin/remove/{IPFS_path}: $ref: ./paths/ipfs/pin/remove/{IPFS_path}/index.yaml + # metrics + /metrics: $ref: ./paths/api/metrics/index.yaml /metrics/endpoints: $ref: ./paths/api/metrics/endpoints.yaml + # network + /network: $ref: ./paths/api/network/index.yaml /network/eras: $ref: ./paths/api/network/eras.yaml + # nutlink + /nutlink/{address}: $ref: ./paths/api/nutlink/{address}/index.yaml diff --git a/src/generated-types.ts b/src/generated-types.ts index 4653998b..73d4b5ca 100644 --- a/src/generated-types.ts +++ b/src/generated-types.ts @@ -420,85 +420,75 @@ export interface paths { }; }; }; - "/epochs/latest": { + "/governance/dreps": { /** - * Latest epoch - * @description Return the information about the latest, therefore current, epoch. + * Delegate Representatives (DReps) + * @description Return the information about Delegate Representatives (DReps) */ get: { - responses: { - /** @description Return the data about the epoch */ - 200: { - content: { - "application/json": components["schemas"]["epoch_content"]; - }; + parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + * Ordering in this case is based on the time of the first mint transaction. + */ + order?: "asc" | "desc"; }; - 400: components["responses"]["400"]; - 403: components["responses"]["403"]; - 404: components["responses"]["404"]; - 418: components["responses"]["418"]; - 429: components["responses"]["429"]; - 500: components["responses"]["500"]; }; - }; - }; - "/epochs/latest/parameters": { - /** - * Latest epoch protocol parameters - * @description Return the protocol parameters for the latest epoch. - */ - get: { responses: { - /** @description Return the data about the epoch */ + /** @description Paginated array with the Delegate Representatives (DReps) data */ 200: { content: { - "application/json": components["schemas"]["epoch_param_content"]; + "application/json": components["schemas"]["dreps"]; }; }; 400: components["responses"]["400"]; 403: components["responses"]["403"]; - 404: components["responses"]["404"]; 418: components["responses"]["418"]; 429: components["responses"]["429"]; 500: components["responses"]["500"]; }; }; }; - "/epochs/{number}": { + "/governance/dreps/{drep_id}": { /** - * Specific epoch - * @description Return the content of the requested epoch. + * Specific DRep + * @description DRep information. */ get: { parameters: { path: { /** - * @description Number of the epoch - * @example 225 + * @description Bech32 or hexadecimal DRep ID. + * @example drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc */ - number: number; + drep_id: string; }; }; responses: { - /** @description Return the epoch data. */ + /** @description Return the DRep information content */ 200: { content: { - "application/json": components["schemas"]["epoch_content"]; + "application/json": components["schemas"]["drep"]; }; }; 400: components["responses"]["400"]; 403: components["responses"]["403"]; - 404: components["responses"]["404"]; 418: components["responses"]["418"]; 429: components["responses"]["429"]; 500: components["responses"]["500"]; }; }; }; - "/epochs/{number}/next": { + "/governance/dreps/{drep_id}/delegators": { /** - * Listing of next epochs - * @description Return the list of epochs following a specific epoch. + * DRep delegators + * @description List of Drep delegators. */ get: { parameters: { @@ -507,72 +497,69 @@ export interface paths { count?: number; /** @description The page number for listing the results. */ page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; }; path: { /** - * @description Number of the requested epoch. - * @example 225 + * @description Bech32 or hexadecimal drep ID. + * @example drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn */ - number: number; + drep_id: string; }; }; responses: { - /** @description Return the data about the epoch */ + /** @description Return the DRep delegations */ 200: { content: { - "application/json": components["schemas"]["epoch_content_array"]; + "application/json": components["schemas"]["drep_delegators"]; }; }; 400: components["responses"]["400"]; 403: components["responses"]["403"]; - 404: components["responses"]["404"]; 418: components["responses"]["418"]; 429: components["responses"]["429"]; 500: components["responses"]["500"]; }; }; }; - "/epochs/{number}/previous": { + "/governance/dreps/{drep_id}/metadata": { /** - * Listing of previous epochs - * @description Return the list of epochs preceding a specific epoch. + * DRep metadata + * @description DRep metadata information. */ get: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results */ - page?: number; - }; path: { /** - * @description Number of the epoch - * @example 225 + * @description Bech32 or hexadecimal DRep ID. + * @example drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc */ - number: number; + drep_id: string; }; }; responses: { - /** @description Return the epoch data */ + /** @description Return the DRep metadata content. */ 200: { content: { - "application/json": components["schemas"]["epoch_content_array"]; + "application/json": components["schemas"]["drep_metadata"]; }; }; 400: components["responses"]["400"]; 403: components["responses"]["403"]; - 404: components["responses"]["404"]; 418: components["responses"]["418"]; 429: components["responses"]["429"]; 500: components["responses"]["500"]; }; }; }; - "/epochs/{number}/stakes": { + "/governance/dreps/{drep_id}/updates": { /** - * Stake distribution - * @description Return the active stake distribution for the specified epoch. + * DRep updates + * @description List of certificate updates to the DRep. */ get: { parameters: { @@ -581,35 +568,39 @@ export interface paths { count?: number; /** @description The page number for listing the results. */ page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; }; path: { /** - * @description Number of the epoch - * @example 225 + * @description Bech32 or hexadecimal DRep ID. + * @example drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc */ - number: number; + drep_id: string; }; }; responses: { - /** @description Return the data about the epoch */ + /** @description Return the Drep updates history */ 200: { content: { - "application/json": components["schemas"]["epoch_stake_content"]; + "application/json": components["schemas"]["drep_updates"]; }; }; 400: components["responses"]["400"]; 403: components["responses"]["403"]; - 404: components["responses"]["404"]; 418: components["responses"]["418"]; 429: components["responses"]["429"]; 500: components["responses"]["500"]; }; }; }; - "/epochs/{number}/stakes/{pool_id}": { + "/governance/dreps/{drep_id}/votes": { /** - * Stake distribution by pool - * @description Return the active stake distribution for the epoch specified by stake pool. + * DRep votes + * @description History of Drep votes. */ get: { parameters: { @@ -618,40 +609,39 @@ export interface paths { count?: number; /** @description The page number for listing the results. */ page?: number; - }; - path: { /** - * @description Number of the epoch - * @example 225 + * @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. */ - number: number; + order?: "asc" | "desc"; + }; + path: { /** - * @description Stake pool ID to filter - * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + * @description Bech32 or hexadecimal drep ID. + * @example drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn */ - pool_id: string; + drep_id: string; }; }; responses: { - /** @description Return the data about the epoch */ + /** @description Return the DRep votes */ 200: { content: { - "application/json": components["schemas"]["epoch_stake_pool_content"]; + "application/json": components["schemas"]["drep_votes"]; }; }; 400: components["responses"]["400"]; 403: components["responses"]["403"]; - 404: components["responses"]["404"]; 418: components["responses"]["418"]; 429: components["responses"]["429"]; 500: components["responses"]["500"]; }; }; }; - "/epochs/{number}/blocks": { + "/governance/proposals": { /** - * Block distribution - * @description Return the blocks minted for the epoch specified. + * Proposals + * @description Return the information about Proposals */ get: { parameters: { @@ -663,100 +653,86 @@ export interface paths { /** * @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. + * Ordering in this case is based on the time of the first mint transaction. */ order?: "asc" | "desc"; }; - path: { - /** - * @description Number of the epoch - * @example 225 - */ - number: number; - }; }; responses: { - /** @description Return the data about the epoch */ + /** @description Paginated array with the proposal data */ 200: { content: { - "application/json": components["schemas"]["epoch_block_content"]; + "application/json": components["schemas"]["proposals"]; }; }; 400: components["responses"]["400"]; 403: components["responses"]["403"]; - 404: components["responses"]["404"]; 418: components["responses"]["418"]; 429: components["responses"]["429"]; 500: components["responses"]["500"]; }; }; }; - "/epochs/{number}/blocks/{pool_id}": { + "/governance/proposals/{tx_hash}/{cert_index}": { /** - * Block distribution by pool - * @description Return the block minted for the epoch specified by stake pool. + * Specific proposal + * @description Proposal information. */ get: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; - /** - * @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. - */ - order?: "asc" | "desc"; - }; path: { /** - * @description Number of the epoch - * @example 225 + * @description Transaction hash. + * @example 2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531 */ - number: number; + tx_hash: string; /** - * @description Stake pool ID to filter - * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + * @description Transaction index. + * @example 1 */ - pool_id: string; + cert_index: number; }; }; responses: { - /** @description Return the data about the epoch */ + /** @description Return the proposal information content */ 200: { content: { - "application/json": components["schemas"]["epoch_block_content"]; + "application/json": components["schemas"]["proposal"]; }; }; 400: components["responses"]["400"]; 403: components["responses"]["403"]; - 404: components["responses"]["404"]; 418: components["responses"]["418"]; 429: components["responses"]["429"]; 500: components["responses"]["500"]; }; }; }; - "/epochs/{number}/parameters": { + "/governance/proposals/{tx_hash}/{cert_index}/parameters": { /** - * Protocol parameters - * @description Return the protocol parameters for the epoch specified. + * Specific parameters proposal + * @description Parameters proposal details. */ get: { parameters: { path: { /** - * @description Number of the epoch - * @example 225 + * @description Transaction hash. + * @example 2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531 */ - number: number; + tx_hash: string; + /** + * @description Transaction index. + * @example 1 + */ + cert_index: number; }; }; responses: { - /** @description Return the data about the epoch */ + /** @description Return the proposal parameters content */ 200: { content: { - "application/json": components["schemas"]["epoch_param_content"]; + "application/json": components["schemas"]["proposal_parameters"]; }; }; 400: components["responses"]["400"]; @@ -768,26 +744,31 @@ export interface paths { }; }; }; - "/txs/{hash}": { + "/governance/proposals/{tx_hash}/{cert_index}/withdrawals": { /** - * Specific transaction - * @description Return content of the requested transaction. + * Specific withdrawals proposal + * @description Parameters withdrawals details. */ get: { parameters: { path: { /** - * @description Hash of the requested transaction - * @example 6e5f825c42c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + * @description Transaction hash. + * @example 2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531 */ - hash: string; + tx_hash: string; + /** + * @description Transaction index. + * @example 1 + */ + cert_index: number; }; }; responses: { - /** @description Return the contents of the transaction. */ + /** @description Return the proposal withdrawals content */ 200: { content: { - "application/json": components["schemas"]["tx_content"]; + "application/json": components["schemas"]["proposal_withdrawals"]; }; }; 400: components["responses"]["400"]; @@ -799,88 +780,98 @@ export interface paths { }; }; }; - "/txs/{hash}/utxos": { + "/governance/proposals/{tx_hash}/{cert_index}/votes": { /** - * Transaction UTXOs - * @description Return the inputs and UTXOs of the specific transaction. + * Proposal votes + * @description History of Proposal votes. */ get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; + }; path: { /** - * @description Hash of the requested transaction - * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + * @description Transaction hash. + * @example 2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531 */ - hash: string; + tx_hash: string; + /** + * @description Transaction index. + * @example 1 + */ + cert_index: number; }; }; responses: { - /** @description Return the contents of the transaction. */ + /** @description Return the Proposal votes */ 200: { content: { - "application/json": components["schemas"]["tx_content_utxo"]; + "application/json": components["schemas"]["proposal_votes"]; }; }; 400: components["responses"]["400"]; 403: components["responses"]["403"]; - 404: components["responses"]["404"]; 418: components["responses"]["418"]; 429: components["responses"]["429"]; 500: components["responses"]["500"]; }; }; }; - "/txs/{hash}/stakes": { + "/governance/proposals/{tx_hash}/{cert_index}/metadata": { /** - * Transaction stake addresses certificates - * @description Obtain information about (de)registration of stake addresses within a transaction. + * Specific proposal metadata + * @description Proposal metadata information. */ get: { parameters: { path: { /** - * @description Hash of the requested transaction. - * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + * @description Transaction hash of the proposal. + * @example 2403339d2f344202fb3583353e11a693a82860e59e65939dcb0e2ac72336d631 */ - hash: string; + tx_hash: string; + /** + * @description Transaction index of the proposal. + * @example 0 + */ + cert_index: number; }; }; responses: { - /** @description Obtain information about (de)registration of stake addresses within a transaction. */ + /** @description Return the proposal information content */ 200: { content: { - "application/json": components["schemas"]["tx_content_stake_addr"]; + "application/json": components["schemas"]["proposal_metadata"]; }; }; 400: components["responses"]["400"]; 403: components["responses"]["403"]; - 404: components["responses"]["404"]; 418: components["responses"]["418"]; 429: components["responses"]["429"]; 500: components["responses"]["500"]; }; }; }; - "/txs/{hash}/delegations": { + "/epochs/latest": { /** - * Transaction delegation certificates - * @description Obtain information about delegation certificates of a specific transaction. + * Latest epoch + * @description Return the information about the latest, therefore current, epoch. */ get: { - parameters: { - path: { - /** - * @description Hash of the requested transaction. - * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b - */ - hash: string; - }; - }; responses: { - /** @description Obtain information about delegation certificates of a specific transaction */ + /** @description Return the data about the epoch */ 200: { content: { - "application/json": components["schemas"]["tx_content_delegations"]; + "application/json": components["schemas"]["epoch_content"]; }; }; 400: components["responses"]["400"]; @@ -892,26 +883,17 @@ export interface paths { }; }; }; - "/txs/{hash}/withdrawals": { + "/epochs/latest/parameters": { /** - * Transaction withdrawal - * @description Obtain information about withdrawals of a specific transaction. + * Latest epoch protocol parameters + * @description Return the protocol parameters for the latest epoch. */ get: { - parameters: { - path: { - /** - * @description Hash of the requested transaction. - * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b - */ - hash: string; - }; - }; responses: { - /** @description Obtain information about withdrawals of a specific transaction. */ + /** @description Return the data about the epoch */ 200: { content: { - "application/json": components["schemas"]["tx_content_withdrawals"]; + "application/json": components["schemas"]["epoch_param_content"]; }; }; 400: components["responses"]["400"]; @@ -923,26 +905,26 @@ export interface paths { }; }; }; - "/txs/{hash}/mirs": { + "/epochs/{number}": { /** - * Transaction MIRs - * @description Obtain information about Move Instantaneous Rewards (MIRs) of a specific transaction. + * Specific epoch + * @description Return the content of the requested epoch. */ get: { parameters: { path: { /** - * @description Hash of the requested transaction. - * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + * @description Number of the epoch + * @example 225 */ - hash: string; + number: number; }; }; responses: { - /** @description Obtain information about Move Instantaneous Rewards (MIRs) of a specific transaction. */ + /** @description Return the epoch data. */ 200: { content: { - "application/json": components["schemas"]["tx_content_mirs"]; + "application/json": components["schemas"]["epoch_content"]; }; }; 400: components["responses"]["400"]; @@ -954,26 +936,32 @@ export interface paths { }; }; }; - "/txs/{hash}/pool_updates": { + "/epochs/{number}/next": { /** - * Transaction stake pool registration and update certificates - * @description Obtain information about stake pool registration and update certificates of a specific transaction. + * Listing of next epochs + * @description Return the list of epochs following a specific epoch. */ get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + }; path: { /** - * @description Hash of the requested transaction - * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + * @description Number of the requested epoch. + * @example 225 */ - hash: string; + number: number; }; }; responses: { - /** @description Obtain information about stake pool certificates of a specific transaction */ + /** @description Return the data about the epoch */ 200: { content: { - "application/json": components["schemas"]["tx_content_pool_certs"]; + "application/json": components["schemas"]["epoch_content_array"]; }; }; 400: components["responses"]["400"]; @@ -985,26 +973,32 @@ export interface paths { }; }; }; - "/txs/{hash}/pool_retires": { + "/epochs/{number}/previous": { /** - * Transaction stake pool retirement certificates - * @description Obtain information about stake pool retirements within a specific transaction. + * Listing of previous epochs + * @description Return the list of epochs preceding a specific epoch. */ get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results */ + page?: number; + }; path: { /** - * @description Hash of the requested transaction - * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + * @description Number of the epoch + * @example 225 */ - hash: string; + number: number; }; }; responses: { - /** @description Obtain information about stake pool retirements within a specific transaction. */ + /** @description Return the epoch data */ 200: { content: { - "application/json": components["schemas"]["tx_content_pool_retires"]; + "application/json": components["schemas"]["epoch_content_array"]; }; }; 400: components["responses"]["400"]; @@ -1016,26 +1010,32 @@ export interface paths { }; }; }; - "/txs/{hash}/metadata": { + "/epochs/{number}/stakes": { /** - * Transaction metadata - * @description Obtain the transaction metadata. + * Stake distribution + * @description Return the active stake distribution for the specified epoch. */ get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + }; path: { /** - * @description Hash of the requested transaction - * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + * @description Number of the epoch + * @example 225 */ - hash: string; + number: number; }; }; responses: { - /** @description Obtain metadata information associated with a specific transaction. */ + /** @description Return the data about the epoch */ 200: { content: { - "application/json": components["schemas"]["tx_content_metadata"]; + "application/json": components["schemas"]["epoch_stake_content"]; }; }; 400: components["responses"]["400"]; @@ -1047,26 +1047,37 @@ export interface paths { }; }; }; - "/txs/{hash}/metadata/cbor": { + "/epochs/{number}/stakes/{pool_id}": { /** - * Transaction metadata in CBOR - * @description Obtain the transaction metadata in CBOR. + * Stake distribution by pool + * @description Return the active stake distribution for the epoch specified by stake pool. */ get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + }; path: { /** - * @description Hash of the requested transaction - * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + * @description Number of the epoch + * @example 225 */ - hash: string; + number: number; + /** + * @description Stake pool ID to filter + * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + */ + pool_id: string; }; }; responses: { - /** @description Obtain metadata information associated with a specific transaction. */ + /** @description Return the data about the epoch */ 200: { content: { - "application/json": components["schemas"]["tx_content_metadata_cbor"]; + "application/json": components["schemas"]["epoch_stake_pool_content"]; }; }; 400: components["responses"]["400"]; @@ -1078,26 +1089,37 @@ export interface paths { }; }; }; - "/txs/{hash}/redeemers": { + "/epochs/{number}/blocks": { /** - * Transaction redeemers - * @description Obtain the transaction redeemers. + * Block distribution + * @description Return the blocks minted for the epoch specified. */ get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; + }; path: { /** - * @description Hash of the requested transaction - * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + * @description Number of the epoch + * @example 225 */ - hash: string; + number: number; }; }; responses: { - /** @description Obtain information about redeemers within a specific transaction. */ + /** @description Return the data about the epoch */ 200: { content: { - "application/json": components["schemas"]["tx_content_redeemers"]; + "application/json": components["schemas"]["epoch_block_content"]; }; }; 400: components["responses"]["400"]; @@ -1109,26 +1131,42 @@ export interface paths { }; }; }; - "/txs/{hash}/required_signers": { + "/epochs/{number}/blocks/{pool_id}": { /** - * Transaction required signers - * @description Obtain the extra transaction witnesses. + * Block distribution by pool + * @description Return the block minted for the epoch specified by stake pool. */ get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; + }; path: { /** - * @description Hash of the transaction - * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + * @description Number of the epoch + * @example 225 */ - hash: string; + number: number; + /** + * @description Stake pool ID to filter + * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + */ + pool_id: string; }; }; responses: { - /** @description Query required signers (extra transaction witnesses) */ + /** @description Return the data about the epoch */ 200: { content: { - "application/json": components["schemas"]["tx_content_required_signers"]; + "application/json": components["schemas"]["epoch_block_content"]; }; }; 400: components["responses"]["400"]; @@ -1140,26 +1178,26 @@ export interface paths { }; }; }; - "/txs/{hash}/cbor": { + "/epochs/{number}/parameters": { /** - * Transaction CBOR - * @description Obtain the CBOR serialized transaction + * Protocol parameters + * @description Return the protocol parameters for the epoch specified. */ get: { parameters: { path: { /** - * @description Hash of the transaction - * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + * @description Number of the epoch + * @example 225 */ - hash: string; + number: number; }; }; responses: { - /** @description Query transaction CBOR */ + /** @description Return the data about the epoch */ 200: { content: { - "application/json": components["schemas"]["tx_content_cbor"]; + "application/json": components["schemas"]["epoch_param_content"]; }; }; 400: components["responses"]["400"]; @@ -1171,60 +1209,57 @@ export interface paths { }; }; }; - "/tx/submit": { + "/txs/{hash}": { /** - * Submit a transaction - * @description Submit an already serialized transaction to the network. - * - *- * Hosted Endpoint only available for hosted variant. - *
+ * Specific transaction + * @description Return content of the requested transaction. */ - post: { - /** @description The transaction to submit, serialized in CBOR. */ - requestBody: { - content: { - /** @example 83a400818258208911f640d452c3be4ff3d89db63b41ce048c056951286e2e28bbf8a51588ab44000181825839009493315cd92eb5d8c4304e67b7e16ae36d61d34502694657811a2c8e32c728d3861e164cab28cb8f006448139c8f1740ffb8e7aa9e5232dc1a10b2531f021a00029519075820cb798b0bce50604eaf2e0dc89367896b18f0a6ef6b32b57e3c9f83f8ee71e608a1008182582073fea80d424276ad0978d4fe5310e8bc2d485f5f6bb3bf87612989f112ad5a7d5840c40425229749a9434763cf01b492057fd56d7091a6372eaa777a1c9b1ca508c914e6a4ee9c0d40fc10952ed668e9ad65378a28b149de6bd4204bd9f095b0a902a11907b0a1667469636b657281a266736f757263656b736f757263655f6e616d656576616c7565736675676961742076656e69616d206d696e7573 */ - "application/cbor": string; + get: { + parameters: { + path: { + /** + * @description Hash of the requested transaction + * @example 6e5f825c42c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + */ + hash: string; }; }; responses: { - /** @description Return the ID of the submitted transaction. */ + /** @description Return the contents of the transaction. */ 200: { content: { - "application/json": string; + "application/json": components["schemas"]["tx_content"]; }; }; 400: components["responses"]["400"]; 403: components["responses"]["403"]; 404: components["responses"]["404"]; 418: components["responses"]["418"]; - 425: components["responses"]["425"]; 429: components["responses"]["429"]; 500: components["responses"]["500"]; }; }; }; - "/accounts/{stake_address}": { + "/txs/{hash}/utxos": { /** - * Specific account address - * @description Obtain information about a specific stake account. + * Transaction UTXOs + * @description Return the inputs and UTXOs of the specific transaction. */ get: { parameters: { path: { /** - * @description Bech32 stake address. - * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc + * @description Hash of the requested transaction + * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b */ - stake_address: string; + hash: string; }; }; responses: { - /** @description Return the account content. */ + /** @description Return the contents of the transaction. */ 200: { content: { - "application/json": components["schemas"]["account_content"]; + "application/json": components["schemas"]["tx_content_utxo"]; }; }; 400: components["responses"]["400"]; @@ -1236,37 +1271,26 @@ export interface paths { }; }; }; - "/accounts/{stake_address}/rewards": { + "/txs/{hash}/stakes": { /** - * Account reward history - * @description Obtain information about the reward history of a specific account. + * Transaction stake addresses certificates + * @description Obtain information about (de)registration of stake addresses within a transaction. */ get: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; - /** - * @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. - */ - order?: "asc" | "desc"; - }; path: { /** - * @description Bech32 stake address. - * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc + * @description Hash of the requested transaction. + * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b */ - stake_address: string; + hash: string; }; }; responses: { - /** @description Return the account content. */ + /** @description Obtain information about (de)registration of stake addresses within a transaction. */ 200: { content: { - "application/json": components["schemas"]["account_reward_content"]; + "application/json": components["schemas"]["tx_content_stake_addr"]; }; }; 400: components["responses"]["400"]; @@ -1278,37 +1302,26 @@ export interface paths { }; }; }; - "/accounts/{stake_address}/history": { + "/txs/{hash}/delegations": { /** - * Account history - * @description Obtain information about the history of a specific account. + * Transaction delegation certificates + * @description Obtain information about delegation certificates of a specific transaction. */ get: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; + path: { /** - * @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. - */ - order?: "asc" | "desc"; - }; - path: { - /** - * @description Bech32 stake address. - * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc + * @description Hash of the requested transaction. + * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b */ - stake_address: string; + hash: string; }; }; responses: { - /** @description Return the account content. */ + /** @description Obtain information about delegation certificates of a specific transaction */ 200: { content: { - "application/json": components["schemas"]["account_history_content"]; + "application/json": components["schemas"]["tx_content_delegations"]; }; }; 400: components["responses"]["400"]; @@ -1320,37 +1333,26 @@ export interface paths { }; }; }; - "/accounts/{stake_address}/delegations": { + "/txs/{hash}/withdrawals": { /** - * Account delegation history - * @description Obtain information about the delegation of a specific account. + * Transaction withdrawal + * @description Obtain information about withdrawals of a specific transaction. */ get: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; - /** - * @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. - */ - order?: "asc" | "desc"; - }; path: { /** - * @description Bech32 stake address. - * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc + * @description Hash of the requested transaction. + * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b */ - stake_address: string; + hash: string; }; }; responses: { - /** @description Return the account delegations content */ + /** @description Obtain information about withdrawals of a specific transaction. */ 200: { content: { - "application/json": components["schemas"]["account_delegation_content"]; + "application/json": components["schemas"]["tx_content_withdrawals"]; }; }; 400: components["responses"]["400"]; @@ -1362,37 +1364,26 @@ export interface paths { }; }; }; - "/accounts/{stake_address}/registrations": { + "/txs/{hash}/mirs": { /** - * Account registration history - * @description Obtain information about the registrations and deregistrations of a specific account. + * Transaction MIRs + * @description Obtain information about Move Instantaneous Rewards (MIRs) of a specific transaction. */ get: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; - /** - * @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. - */ - order?: "asc" | "desc"; - }; path: { /** - * @description Bech32 stake address. - * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc + * @description Hash of the requested transaction. + * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b */ - stake_address: string; + hash: string; }; }; responses: { - /** @description Return the account registration content. */ + /** @description Obtain information about Move Instantaneous Rewards (MIRs) of a specific transaction. */ 200: { content: { - "application/json": components["schemas"]["account_registration_content"]; + "application/json": components["schemas"]["tx_content_mirs"]; }; }; 400: components["responses"]["400"]; @@ -1404,37 +1395,26 @@ export interface paths { }; }; }; - "/accounts/{stake_address}/withdrawals": { + "/txs/{hash}/pool_updates": { /** - * Account withdrawal history - * @description Obtain information about the withdrawals of a specific account. + * Transaction stake pool registration and update certificates + * @description Obtain information about stake pool registration and update certificates of a specific transaction. */ get: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; - /** - * @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. - */ - order?: "asc" | "desc"; - }; path: { /** - * @description Bech32 stake address. - * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc + * @description Hash of the requested transaction + * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b */ - stake_address: string; + hash: string; }; }; responses: { - /** @description Return the account withdrawal content. */ + /** @description Obtain information about stake pool certificates of a specific transaction */ 200: { content: { - "application/json": components["schemas"]["account_withdrawal_content"]; + "application/json": components["schemas"]["tx_content_pool_certs"]; }; }; 400: components["responses"]["400"]; @@ -1446,37 +1426,26 @@ export interface paths { }; }; }; - "/accounts/{stake_address}/mirs": { + "/txs/{hash}/pool_retires": { /** - * Account MIR history - * @description Obtain information about the MIRs of a specific account. + * Transaction stake pool retirement certificates + * @description Obtain information about stake pool retirements within a specific transaction. */ get: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; - /** - * @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. - */ - order?: "asc" | "desc"; - }; path: { /** - * @description Bech32 stake address. - * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc + * @description Hash of the requested transaction + * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b */ - stake_address: string; + hash: string; }; }; responses: { - /** @description Return the account MIR content. */ + /** @description Obtain information about stake pool retirements within a specific transaction. */ 200: { content: { - "application/json": components["schemas"]["account_mir_content"]; + "application/json": components["schemas"]["tx_content_pool_retires"]; }; }; 400: components["responses"]["400"]; @@ -1488,38 +1457,26 @@ export interface paths { }; }; }; - "/accounts/{stake_address}/addresses": { + "/txs/{hash}/metadata": { /** - * Account associated addresses - * @description Obtain information about the addresses of a specific account. - * Be careful, as an account could be part of a mangled address and does not necessarily mean the addresses are owned by user as the account. + * Transaction metadata + * @description Obtain the transaction metadata. */ get: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; - /** - * @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. - */ - order?: "asc" | "desc"; - }; path: { /** - * @description Bech32 stake address. - * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc + * @description Hash of the requested transaction + * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b */ - stake_address: string; + hash: string; }; }; responses: { - /** @description Return the account addresses content */ + /** @description Obtain metadata information associated with a specific transaction. */ 200: { content: { - "application/json": components["schemas"]["account_addresses_content"]; + "application/json": components["schemas"]["tx_content_metadata"]; }; }; 400: components["responses"]["400"]; @@ -1531,38 +1488,26 @@ export interface paths { }; }; }; - "/accounts/{stake_address}/addresses/assets": { + "/txs/{hash}/metadata/cbor": { /** - * Assets associated with the account addresses - * @description Obtain information about assets associated with addresses of a specific account. - * Be careful, as an account could be part of a mangled address and does not necessarily mean the addresses are owned by user as the account. + * Transaction metadata in CBOR + * @description Obtain the transaction metadata in CBOR. */ get: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; - /** - * @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. - */ - order?: "asc" | "desc"; - }; path: { /** - * @description Bech32 stake address. - * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc + * @description Hash of the requested transaction + * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b */ - stake_address: string; + hash: string; }; }; responses: { - /** @description Return the account addresses content */ + /** @description Obtain metadata information associated with a specific transaction. */ 200: { content: { - "application/json": components["schemas"]["account_addresses_assets"]; + "application/json": components["schemas"]["tx_content_metadata_cbor"]; }; }; 400: components["responses"]["400"]; @@ -1574,27 +1519,26 @@ export interface paths { }; }; }; - "/accounts/{stake_address}/addresses/total": { + "/txs/{hash}/redeemers": { /** - * Detailed information about account associated addresses - * @description Obtain summed details about all addresses associated with a given account. - * Be careful, as an account could be part of a mangled address and does not necessarily mean the addresses are owned by user as the account. + * Transaction redeemers + * @description Obtain the transaction redeemers. */ get: { parameters: { path: { /** - * @description Bech32 address. - * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + * @description Hash of the requested transaction + * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b */ - stake_address: string; + hash: string; }; }; responses: { - /** @description Return the Address details. */ + /** @description Obtain information about redeemers within a specific transaction. */ 200: { content: { - "application/json": components["schemas"]["account_addresses_total"]; + "application/json": components["schemas"]["tx_content_redeemers"]; }; }; 400: components["responses"]["400"]; @@ -1606,36 +1550,26 @@ export interface paths { }; }; }; - "/mempool": { + "/txs/{hash}/required_signers": { /** - * Mempool - * @description Return transactions that are currently stored in Blockfrost mempool, - * waiting to be included in a newly minted block. - * Shows only transactions submitted via Blockfrost.io. - * - *- * Hosted Endpoint only available for hosted variant. - *
+ * Transaction required signers + * @description Obtain the extra transaction witnesses. */ get: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; + path: { /** - * @description Ordered by the time of transaction submission. - * By default, we return oldest first, newest last. + * @description Hash of the transaction + * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b */ - order?: "asc" | "desc"; + hash: string; }; }; responses: { - /** @description Return the contents of the mempool */ + /** @description Query required signers (extra transaction witnesses) */ 200: { content: { - "application/json": components["schemas"]["mempool_content"]; + "application/json": components["schemas"]["tx_content_required_signers"]; }; }; 400: components["responses"]["400"]; @@ -1647,30 +1581,26 @@ export interface paths { }; }; }; - "/mempool/{hash}": { + "/txs/{hash}/cbor": { /** - * Specific transaction in the mempool - * @description Return content of the requested transaction. - * - *- * Hosted Endpoint only available for hosted variant. - *
+ * Transaction CBOR + * @description Obtain the CBOR serialized transaction */ get: { parameters: { path: { /** - * @description Hash of the requested transaction - * @example 6e5f825c42c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b + * @description Hash of the transaction + * @example 6e5f825c82c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b */ hash: string; }; }; responses: { - /** @description Return the contents of the transaction. */ + /** @description Query transaction CBOR */ 200: { content: { - "application/json": components["schemas"]["mempool_tx_content"]; + "application/json": components["schemas"]["tx_content_cbor"]; }; }; 400: components["responses"]["400"]; @@ -1682,77 +1612,60 @@ export interface paths { }; }; }; - "/mempool/addresses/{address}": { + "/tx/submit": { /** - * Mempool by address - * @description List of mempool transactions where at least one of the transaction inputs or outputs belongs to the address. - * Shows only transactions submitted via Blockfrost.io. + * Submit a transaction + * @description Submit an already serialized transaction to the network. * ** Hosted Endpoint only available for hosted variant. *
*/ - get: { - parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; - /** - * @description Ordered by the time of transaction submission. - * By default, we return oldest first, newest last. - */ - order?: "asc" | "desc"; - }; - path: { - /** - * @description Bech32 address. - * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz - */ - address: string; + post: { + /** @description The transaction to submit, serialized in CBOR. */ + requestBody: { + content: { + /** @example 83a400818258208911f640d452c3be4ff3d89db63b41ce048c056951286e2e28bbf8a51588ab44000181825839009493315cd92eb5d8c4304e67b7e16ae36d61d34502694657811a2c8e32c728d3861e164cab28cb8f006448139c8f1740ffb8e7aa9e5232dc1a10b2531f021a00029519075820cb798b0bce50604eaf2e0dc89367896b18f0a6ef6b32b57e3c9f83f8ee71e608a1008182582073fea80d424276ad0978d4fe5310e8bc2d485f5f6bb3bf87612989f112ad5a7d5840c40425229749a9434763cf01b492057fd56d7091a6372eaa777a1c9b1ca508c914e6a4ee9c0d40fc10952ed668e9ad65378a28b149de6bd4204bd9f095b0a902a11907b0a1667469636b657281a266736f757263656b736f757263655f6e616d656576616c7565736675676961742076656e69616d206d696e7573 */ + "application/cbor": string; }; }; responses: { - /** @description Return the contents of the mempool */ + /** @description Return the ID of the submitted transaction. */ 200: { content: { - "application/json": components["schemas"]["mempool_addresses_content"]; + "application/json": string; }; }; 400: components["responses"]["400"]; 403: components["responses"]["403"]; 404: components["responses"]["404"]; 418: components["responses"]["418"]; + 425: components["responses"]["425"]; 429: components["responses"]["429"]; 500: components["responses"]["500"]; }; }; }; - "/metadata/txs/labels": { + "/accounts/{stake_address}": { /** - * Transaction metadata labels - * @description List of all used transaction metadata labels. + * Specific account address + * @description Obtain information about a specific stake account. */ get: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; + path: { /** - * @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. + * @description Bech32 stake address. + * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc */ - order?: "asc" | "desc"; + stake_address: string; }; }; responses: { - /** @description Return the account metadata content in CBOR */ + /** @description Return the account content. */ 200: { content: { - "application/json": components["schemas"]["tx_metadata_labels"]; + "application/json": components["schemas"]["account_content"]; }; }; 400: components["responses"]["400"]; @@ -1764,10 +1677,10 @@ export interface paths { }; }; }; - "/metadata/txs/labels/{label}": { + "/accounts/{stake_address}/rewards": { /** - * Transaction metadata content in JSON - * @description Transaction metadata per label. + * Account reward history + * @description Obtain information about the reward history of a specific account. */ get: { parameters: { @@ -1784,17 +1697,17 @@ export interface paths { }; path: { /** - * @description Metadata label - * @example 1990 + * @description Bech32 stake address. + * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc */ - label: string; + stake_address: string; }; }; responses: { - /** @description Return the account metadata content */ + /** @description Return the account content. */ 200: { content: { - "application/json": components["schemas"]["tx_metadata_label_json"]; + "application/json": components["schemas"]["account_reward_content"]; }; }; 400: components["responses"]["400"]; @@ -1806,10 +1719,10 @@ export interface paths { }; }; }; - "/metadata/txs/labels/{label}/cbor": { + "/accounts/{stake_address}/history": { /** - * Transaction metadata content in CBOR - * @description Transaction metadata per label. + * Account history + * @description Obtain information about the history of a specific account. */ get: { parameters: { @@ -1826,17 +1739,17 @@ export interface paths { }; path: { /** - * @description Metadata label - * @example 1990 + * @description Bech32 stake address. + * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc */ - label: string; + stake_address: string; }; }; responses: { - /** @description Return the account metadata content in CBOR */ + /** @description Return the account content. */ 200: { content: { - "application/json": components["schemas"]["tx_metadata_label_cbor"]; + "application/json": components["schemas"]["account_history_content"]; }; }; 400: components["responses"]["400"]; @@ -1848,26 +1761,37 @@ export interface paths { }; }; }; - "/addresses/{address}": { + "/accounts/{stake_address}/delegations": { /** - * Specific address - * @description Obtain information about a specific address. + * Account delegation history + * @description Obtain information about the delegation of a specific account. */ get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; + }; path: { /** - * @description Bech32 address. - * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + * @description Bech32 stake address. + * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc */ - address: string; + stake_address: string; }; }; responses: { - /** @description Return the address content. */ + /** @description Return the account delegations content */ 200: { content: { - "application/json": components["schemas"]["address_content"]; + "application/json": components["schemas"]["account_delegation_content"]; }; }; 400: components["responses"]["400"]; @@ -1879,26 +1803,37 @@ export interface paths { }; }; }; - "/addresses/{address}/extended": { + "/accounts/{stake_address}/registrations": { /** - * Extended information of a specific address - * @description Obtain extended information about a specific address. + * Account registration history + * @description Obtain information about the registrations and deregistrations of a specific account. */ get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; + }; path: { /** - * @description Bech32 address. - * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + * @description Bech32 stake address. + * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc */ - address: string; + stake_address: string; }; }; responses: { - /** @description Return the address content. */ + /** @description Return the account registration content. */ 200: { content: { - "application/json": components["schemas"]["address_content_extended"]; + "application/json": components["schemas"]["account_registration_content"]; }; }; 400: components["responses"]["400"]; @@ -1910,26 +1845,37 @@ export interface paths { }; }; }; - "/addresses/{address}/total": { + "/accounts/{stake_address}/withdrawals": { /** - * Address details - * @description Obtain details about an address. + * Account withdrawal history + * @description Obtain information about the withdrawals of a specific account. */ get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; + }; path: { /** - * @description Bech32 address. - * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + * @description Bech32 stake address. + * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc */ - address: string; + stake_address: string; }; }; responses: { - /** @description Return the Address details. */ + /** @description Return the account withdrawal content. */ 200: { content: { - "application/json": components["schemas"]["address_content_total"]; + "application/json": components["schemas"]["account_withdrawal_content"]; }; }; 400: components["responses"]["400"]; @@ -1941,10 +1887,10 @@ export interface paths { }; }; }; - "/addresses/{address}/utxos": { + "/accounts/{stake_address}/mirs": { /** - * Address UTXOs - * @description UTXOs of the address. + * Account MIR history + * @description Obtain information about the MIRs of a specific account. */ get: { parameters: { @@ -1961,17 +1907,17 @@ export interface paths { }; path: { /** - * @description Bech32 address. - * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + * @description Bech32 stake address. + * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc */ - address: string; + stake_address: string; }; }; responses: { - /** @description Return the address content */ + /** @description Return the account MIR content. */ 200: { content: { - "application/json": components["schemas"]["address_utxo_content"]; + "application/json": components["schemas"]["account_mir_content"]; }; }; 400: components["responses"]["400"]; @@ -1983,10 +1929,11 @@ export interface paths { }; }; }; - "/addresses/{address}/utxos/{asset}": { + "/accounts/{stake_address}/addresses": { /** - * Address UTXOs of a given asset - * @description UTXOs of the address. + * Account associated addresses + * @description Obtain information about the addresses of a specific account. + * Be careful, as an account could be part of a mangled address and does not necessarily mean the addresses are owned by user as the account. */ get: { parameters: { @@ -2003,22 +1950,17 @@ export interface paths { }; path: { /** - * @description Bech32 address. - * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz - */ - address: string; - /** - * @description Concatenation of the policy_id and hex-encoded asset_name - * @example b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e + * @description Bech32 stake address. + * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc */ - asset: string; + stake_address: string; }; }; responses: { - /** @description Return the address content */ + /** @description Return the account addresses content */ 200: { content: { - "application/json": components["schemas"]["address_utxo_content"]; + "application/json": components["schemas"]["account_addresses_content"]; }; }; 400: components["responses"]["400"]; @@ -2030,16 +1972,16 @@ export interface paths { }; }; }; - "/addresses/{address}/txs": { + "/accounts/{stake_address}/addresses/assets": { /** - * Address txs - * @deprecated - * @description Transactions on the address. + * Assets associated with the account addresses + * @description Obtain information about assets associated with addresses of a specific account. + * Be careful, as an account could be part of a mangled address and does not necessarily mean the addresses are owned by user as the account. */ get: { parameters: { query?: { - /** @description The number of transactions per page. */ + /** @description The number of results displayed on one page. */ count?: number; /** @description The page number for listing the results. */ page?: number; @@ -2051,17 +1993,17 @@ export interface paths { }; path: { /** - * @description Bech32 address. - * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + * @description Bech32 stake address. + * @example stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc */ - address: string; + stake_address: string; }; }; responses: { - /** @description Return the address content */ + /** @description Return the account addresses content */ 200: { content: { - "application/json": components["schemas"]["address_txs_content"]; + "application/json": components["schemas"]["account_addresses_assets"]; }; }; 400: components["responses"]["400"]; @@ -2073,51 +2015,27 @@ export interface paths { }; }; }; - "/addresses/{address}/transactions": { + "/accounts/{stake_address}/addresses/total": { /** - * Address transactions - * @description Transactions on the address. + * Detailed information about account associated addresses + * @description Obtain summed details about all addresses associated with a given account. + * Be careful, as an account could be part of a mangled address and does not necessarily mean the addresses are owned by user as the account. */ get: { parameters: { - query?: { - /** @description The number of addresses per page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; - /** - * @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. - */ - order?: "asc" | "desc"; - /** - * @description The block number and optionally also index from which (inclusive) to start search for results, concatenated using colon. - * Has to be lower than or equal to `to` parameter. - * - * @example 8929261 - */ - from?: string; - /** - * @description The block number and optionally also index where (inclusive) to end the search for results, concatenated using colon. - * Has to be higher than or equal to `from` parameter. - * - * @example 9999269:10 - */ - to?: string; - }; path: { /** * @description Bech32 address. * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz */ - address: string; + stake_address: string; }; }; responses: { - /** @description Return the address content */ + /** @description Return the Address details. */ 200: { content: { - "application/json": components["schemas"]["address_transactions_content"]; + "application/json": components["schemas"]["account_addresses_total"]; }; }; 400: components["responses"]["400"]; @@ -2129,30 +2047,36 @@ export interface paths { }; }; }; - "/pools": { + "/mempool": { /** - * List of stake pools - * @description List of registered stake pools. + * Mempool + * @description Return transactions that are currently stored in Blockfrost mempool, + * waiting to be included in a newly minted block. + * Shows only transactions submitted via Blockfrost.io. + * + *+ * Hosted Endpoint only available for hosted variant. + *
*/ get: { parameters: { query?: { - /** @description The number of pools per page. */ + /** @description The number of results displayed on one page. */ count?: number; /** @description The page number for listing the results. */ page?: number; /** - * @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. + * @description Ordered by the time of transaction submission. + * By default, we return oldest first, newest last. */ order?: "asc" | "desc"; }; }; responses: { - /** @description Return the list of pools. */ + /** @description Return the contents of the mempool */ 200: { content: { - "application/json": components["schemas"]["pool_list"]; + "application/json": components["schemas"]["mempool_content"]; }; }; 400: components["responses"]["400"]; @@ -2164,30 +2088,30 @@ export interface paths { }; }; }; - "/pools/extended": { + "/mempool/{hash}": { /** - * List of stake pools with additional information - * @description List of registered stake pools with additional information. + * Specific transaction in the mempool + * @description Return content of the requested transaction. + * + *+ * Hosted Endpoint only available for hosted variant. + *
*/ get: { parameters: { - query?: { - /** @description The number of pools per page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; + path: { /** - * @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. + * @description Hash of the requested transaction + * @example 6e5f825c42c1c6d6b77f2a14092f3b78c8f1b66db6f4cf8caec1555b6f967b3b */ - order?: "asc" | "desc"; + hash: string; }; }; responses: { - /** @description Return the list of pools. */ + /** @description Return the contents of the transaction. */ 200: { content: { - "application/json": components["schemas"]["pool_list_extended"]; + "application/json": components["schemas"]["mempool_tx_content"]; }; }; 400: components["responses"]["400"]; @@ -2199,30 +2123,42 @@ export interface paths { }; }; }; - "/pools/retired": { + "/mempool/addresses/{address}": { /** - * List of retired stake pools - * @description List of already retired pools. + * Mempool by address + * @description List of mempool transactions where at least one of the transaction inputs or outputs belongs to the address. + * Shows only transactions submitted via Blockfrost.io. + * + *+ * Hosted Endpoint only available for hosted variant. + *
*/ get: { parameters: { query?: { - /** @description The number of pools per page. */ + /** @description The number of results displayed on one page. */ count?: number; /** @description The page number for listing the results. */ page?: number; /** - * @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. + * @description Ordered by the time of transaction submission. + * By default, we return oldest first, newest last. */ order?: "asc" | "desc"; }; + path: { + /** + * @description Bech32 address. + * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + */ + address: string; + }; }; responses: { - /** @description Return the pool information content */ + /** @description Return the contents of the mempool */ 200: { content: { - "application/json": components["schemas"]["pool_list_retire"]; + "application/json": components["schemas"]["mempool_addresses_content"]; }; }; 400: components["responses"]["400"]; @@ -2234,10 +2170,10 @@ export interface paths { }; }; }; - "/pools/retiring": { + "/metadata/txs/labels": { /** - * List of retiring stake pools - * @description List of stake pools retiring in the upcoming epochs + * Transaction metadata labels + * @description List of all used transaction metadata labels. */ get: { parameters: { @@ -2254,10 +2190,10 @@ export interface paths { }; }; responses: { - /** @description Return the pool information content */ + /** @description Return the account metadata content in CBOR */ 200: { content: { - "application/json": components["schemas"]["pool_list_retire"]; + "application/json": components["schemas"]["tx_metadata_labels"]; }; }; 400: components["responses"]["400"]; @@ -2269,26 +2205,37 @@ export interface paths { }; }; }; - "/pools/{pool_id}": { + "/metadata/txs/labels/{label}": { /** - * Specific stake pool - * @description Pool information. + * Transaction metadata content in JSON + * @description Transaction metadata per label. */ get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; + }; path: { /** - * @description Bech32 or hexadecimal pool ID. - * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + * @description Metadata label + * @example 1990 */ - pool_id: string; + label: string; }; }; responses: { - /** @description Return the pool information content */ + /** @description Return the account metadata content */ 200: { content: { - "application/json": components["schemas"]["pool"]; + "application/json": components["schemas"]["tx_metadata_label_json"]; }; }; 400: components["responses"]["400"]; @@ -2300,17 +2247,17 @@ export interface paths { }; }; }; - "/pools/{pool_id}/history": { + "/metadata/txs/labels/{label}/cbor": { /** - * Stake pool history - * @description History of stake pool parameters over epochs. + * Transaction metadata content in CBOR + * @description Transaction metadata per label. */ get: { parameters: { query?: { /** @description The number of results displayed on one page. */ count?: number; - /** @description The page number for listing the results */ + /** @description The page number for listing the results. */ page?: number; /** * @description The ordering of items from the point of view of the blockchain, @@ -2320,17 +2267,17 @@ export interface paths { }; path: { /** - * @description Bech32 or hexadecimal pool ID. - * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + * @description Metadata label + * @example 1990 */ - pool_id: string; + label: string; }; }; responses: { - /** @description Return the pool information content. */ + /** @description Return the account metadata content in CBOR */ 200: { content: { - "application/json": components["schemas"]["pool_history"]; + "application/json": components["schemas"]["tx_metadata_label_cbor"]; }; }; 400: components["responses"]["400"]; @@ -2342,26 +2289,26 @@ export interface paths { }; }; }; - "/pools/{pool_id}/metadata": { + "/addresses/{address}": { /** - * Stake pool metadata - * @description Stake pool registration metadata. + * Specific address + * @description Obtain information about a specific address. */ get: { parameters: { path: { /** - * @description Bech32 or hexadecimal pool ID. - * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + * @description Bech32 address. + * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz */ - pool_id: string; + address: string; }; }; responses: { - /** @description Return the pool metadata content. */ + /** @description Return the address content. */ 200: { content: { - "application/json": components["schemas"]["pool_metadata"] | components["schemas"]["empty_object"]; + "application/json": components["schemas"]["address_content"]; }; }; 400: components["responses"]["400"]; @@ -2373,26 +2320,26 @@ export interface paths { }; }; }; - "/pools/{pool_id}/relays": { + "/addresses/{address}/extended": { /** - * Stake pool relays - * @description Relays of a stake pool. + * Extended information of a specific address + * @description Obtain extended information about a specific address. */ get: { parameters: { path: { /** - * @description Bech32 or hexadecimal pool ID. - * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + * @description Bech32 address. + * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz */ - pool_id: string; + address: string; }; }; responses: { - /** @description Return the pool relays information content. */ + /** @description Return the address content. */ 200: { content: { - "application/json": components["schemas"]["pool_relays"]; + "application/json": components["schemas"]["address_content_extended"]; }; }; 400: components["responses"]["400"]; @@ -2404,37 +2351,26 @@ export interface paths { }; }; }; - "/pools/{pool_id}/delegators": { + "/addresses/{address}/total": { /** - * Stake pool delegators - * @description List of current stake pools delegators. + * Address details + * @description Obtain details about an address. */ get: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; - /** - * @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. - */ - order?: "asc" | "desc"; - }; path: { /** - * @description Bech32 or hexadecimal pool ID. - * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + * @description Bech32 address. + * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz */ - pool_id: string; + address: string; }; }; responses: { - /** @description Return the pool delegations. */ + /** @description Return the Address details. */ 200: { content: { - "application/json": components["schemas"]["pool_delegators"]; + "application/json": components["schemas"]["address_content_total"]; }; }; 400: components["responses"]["400"]; @@ -2446,10 +2382,10 @@ export interface paths { }; }; }; - "/pools/{pool_id}/blocks": { + "/addresses/{address}/utxos": { /** - * Stake pool blocks - * @description List of stake pools blocks. + * Address UTXOs + * @description UTXOs of the address. */ get: { parameters: { @@ -2466,17 +2402,17 @@ export interface paths { }; path: { /** - * @description Bech32 or hexadecimal pool ID. - * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + * @description Bech32 address. + * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz */ - pool_id: string; + address: string; }; }; responses: { - /** @description Return the pool block list */ + /** @description Return the address content */ 200: { content: { - "application/json": components["schemas"]["pool_blocks"]; + "application/json": components["schemas"]["address_utxo_content"]; }; }; 400: components["responses"]["400"]; @@ -2488,10 +2424,10 @@ export interface paths { }; }; }; - "/pools/{pool_id}/updates": { + "/addresses/{address}/utxos/{asset}": { /** - * Stake pool updates - * @description List of certificate updates to the stake pool. + * Address UTXOs of a given asset + * @description UTXOs of the address. */ get: { parameters: { @@ -2508,17 +2444,22 @@ export interface paths { }; path: { /** - * @description Bech32 or hexadecimal pool ID. - * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + * @description Bech32 address. + * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz */ - pool_id: string; + address: string; + /** + * @description Concatenation of the policy_id and hex-encoded asset_name + * @example b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e + */ + asset: string; }; }; responses: { - /** @description Return the pool updates history */ + /** @description Return the address content */ 200: { content: { - "application/json": components["schemas"]["pool_updates"]; + "application/json": components["schemas"]["address_utxo_content"]; }; }; 400: components["responses"]["400"]; @@ -2530,32 +2471,38 @@ export interface paths { }; }; }; - "/assets": { + "/addresses/{address}/txs": { /** - * Assets - * @description List of assets. If an asset is completely burned, - * it will stay on the list with quantity 0 (order of assets is immutable). + * Address txs + * @deprecated + * @description Transactions on the address. */ get: { parameters: { query?: { - /** @description The number of results displayed on one page. */ + /** @description The number of transactions per page. */ count?: number; /** @description The page number for listing the results. */ page?: number; /** * @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. - * Ordering in this case is based on the time of the first mint transaction. */ order?: "asc" | "desc"; }; + path: { + /** + * @description Bech32 address. + * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + */ + address: string; + }; }; responses: { - /** @description Return list of assets */ + /** @description Return the address content */ 200: { content: { - "application/json": components["schemas"]["assets"]; + "application/json": components["schemas"]["address_txs_content"]; }; }; 400: components["responses"]["400"]; @@ -2567,26 +2514,51 @@ export interface paths { }; }; }; - "/assets/{asset}": { + "/addresses/{address}/transactions": { /** - * Specific asset - * @description Information about a specific asset + * Address transactions + * @description Transactions on the address. */ get: { parameters: { - path: { - /** - * @description Concatenation of the policy_id and hex-encoded asset_name - * @example b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e + query?: { + /** @description The number of addresses per page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. */ - asset: string; + order?: "asc" | "desc"; + /** + * @description The block number and optionally also index from which (inclusive) to start search for results, concatenated using colon. + * Has to be lower than or equal to `to` parameter. + * + * @example 8929261 + */ + from?: string; + /** + * @description The block number and optionally also index where (inclusive) to end the search for results, concatenated using colon. + * Has to be higher than or equal to `from` parameter. + * + * @example 9999269:10 + */ + to?: string; + }; + path: { + /** + * @description Bech32 address. + * @example addr1qxqs59lphg8g6qndelq8xwqn60ag3aeyfcp33c2kdp46a09re5df3pzwwmyq946axfcejy5n4x0y99wqpgtp2gd0k09qsgy6pz + */ + address: string; }; }; responses: { - /** @description Return the information about a specific asset */ + /** @description Return the address content */ 200: { content: { - "application/json": components["schemas"]["asset"]; + "application/json": components["schemas"]["address_transactions_content"]; }; }; 400: components["responses"]["400"]; @@ -2598,15 +2570,15 @@ export interface paths { }; }; }; - "/assets/{asset}/history": { + "/pools": { /** - * Asset history - * @description History of a specific asset + * List of stake pools + * @description List of registered stake pools. */ get: { parameters: { query?: { - /** @description The number of results displayed on one page. */ + /** @description The number of pools per page. */ count?: number; /** @description The page number for listing the results. */ page?: number; @@ -2616,19 +2588,12 @@ export interface paths { */ order?: "asc" | "desc"; }; - path: { - /** - * @description Concatenation of the policy_id and hex-encoded asset_name - * @example b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e - */ - asset: string; - }; }; responses: { - /** @description Return the information about the history of a specific asset */ + /** @description Return the list of pools. */ 200: { content: { - "application/json": components["schemas"]["asset_history"]; + "application/json": components["schemas"]["pool_list"]; }; }; 400: components["responses"]["400"]; @@ -2640,16 +2605,15 @@ export interface paths { }; }; }; - "/assets/{asset}/txs": { + "/pools/extended": { /** - * Asset txs - * @deprecated - * @description List of a specific asset transactions + * List of stake pools with additional information + * @description List of registered stake pools with additional information. */ get: { parameters: { query?: { - /** @description The number of results displayed on one page. */ + /** @description The number of pools per page. */ count?: number; /** @description The page number for listing the results. */ page?: number; @@ -2659,19 +2623,12 @@ export interface paths { */ order?: "asc" | "desc"; }; - path: { - /** - * @description Concatenation of the policy_id and hex-encoded asset_name - * @example b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e - */ - asset: string; - }; }; responses: { - /** @description Return the information about the history of a specific asset */ + /** @description Return the list of pools. */ 200: { content: { - "application/json": components["schemas"]["asset_txs"]; + "application/json": components["schemas"]["pool_list_extended"]; }; }; 400: components["responses"]["400"]; @@ -2683,15 +2640,15 @@ export interface paths { }; }; }; - "/assets/{asset}/transactions": { + "/pools/retired": { /** - * Asset transactions - * @description List of a specific asset transactions + * List of retired stake pools + * @description List of already retired pools. */ get: { parameters: { query?: { - /** @description The number of results displayed on one page. */ + /** @description The number of pools per page. */ count?: number; /** @description The page number for listing the results. */ page?: number; @@ -2701,19 +2658,12 @@ export interface paths { */ order?: "asc" | "desc"; }; - path: { - /** - * @description Concatenation of the policy_id and hex-encoded asset_name - * @example b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e - */ - asset: string; - }; }; responses: { - /** @description Return the information about the history of a specific asset */ + /** @description Return the pool information content */ 200: { content: { - "application/json": components["schemas"]["asset_transactions"]; + "application/json": components["schemas"]["pool_list_retire"]; }; }; 400: components["responses"]["400"]; @@ -2725,10 +2675,10 @@ export interface paths { }; }; }; - "/assets/{asset}/addresses": { + "/pools/retiring": { /** - * Asset addresses - * @description List of a addresses containing a specific asset + * List of retiring stake pools + * @description List of stake pools retiring in the upcoming epochs */ get: { parameters: { @@ -2743,19 +2693,12 @@ export interface paths { */ order?: "asc" | "desc"; }; - path: { - /** - * @description Concatenation of the policy_id and hex-encoded asset_name - * @example b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e - */ - asset: string; - }; }; responses: { - /** @description Return the information about the history of a specific asset */ + /** @description Return the pool information content */ 200: { content: { - "application/json": components["schemas"]["asset_addresses"]; + "application/json": components["schemas"]["pool_list_retire"]; }; }; 400: components["responses"]["400"]; @@ -2767,37 +2710,26 @@ export interface paths { }; }; }; - "/assets/policy/{policy_id}": { + "/pools/{pool_id}": { /** - * Assets of a specific policy - * @description List of asset minted under a specific policy + * Specific stake pool + * @description Pool information. */ get: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; - /** - * @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. - */ - order?: "asc" | "desc"; - }; path: { /** - * @description Specific policy_id - * @example 476039a0949cf0b22f6a800f56780184c44533887ca6e821007840c3 + * @description Bech32 or hexadecimal pool ID. + * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy */ - policy_id: string; + pool_id: string; }; }; responses: { - /** @description Return the information about a specific asset */ + /** @description Return the pool information content */ 200: { content: { - "application/json": components["schemas"]["asset_policy"]; + "application/json": components["schemas"]["pool"]; }; }; 400: components["responses"]["400"]; @@ -2809,17 +2741,17 @@ export interface paths { }; }; }; - "/scripts": { + "/pools/{pool_id}/history": { /** - * Scripts - * @description List of scripts. + * Stake pool history + * @description History of stake pool parameters over epochs. */ get: { parameters: { query?: { /** @description The number of results displayed on one page. */ count?: number; - /** @description The page number for listing the results. */ + /** @description The page number for listing the results */ page?: number; /** * @description The ordering of items from the point of view of the blockchain, @@ -2827,12 +2759,19 @@ export interface paths { */ order?: "asc" | "desc"; }; + path: { + /** + * @description Bech32 or hexadecimal pool ID. + * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy + */ + pool_id: string; + }; }; responses: { - /** @description Return list of scripts */ + /** @description Return the pool information content. */ 200: { content: { - "application/json": components["schemas"]["scripts"]; + "application/json": components["schemas"]["pool_history"]; }; }; 400: components["responses"]["400"]; @@ -2844,26 +2783,26 @@ export interface paths { }; }; }; - "/scripts/{script_hash}": { + "/pools/{pool_id}/metadata": { /** - * Specific script - * @description Information about a specific script + * Stake pool metadata + * @description Stake pool registration metadata. */ get: { parameters: { path: { /** - * @description Hash of the script - * @example e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e + * @description Bech32 or hexadecimal pool ID. + * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy */ - script_hash: string; + pool_id: string; }; }; responses: { - /** @description Return the information about a specific script */ + /** @description Return the pool metadata content. */ 200: { content: { - "application/json": components["schemas"]["script"]; + "application/json": components["schemas"]["pool_metadata"] | components["schemas"]["empty_object"]; }; }; 400: components["responses"]["400"]; @@ -2875,26 +2814,26 @@ export interface paths { }; }; }; - "/scripts/{script_hash}/json": { + "/pools/{pool_id}/relays": { /** - * Script JSON - * @description JSON representation of a `timelock` script + * Stake pool relays + * @description Relays of a stake pool. */ get: { parameters: { path: { /** - * @description Hash of the script - * @example e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e + * @description Bech32 or hexadecimal pool ID. + * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy */ - script_hash: string; + pool_id: string; }; }; responses: { - /** @description Return the JSON representation of a `timelock` script */ + /** @description Return the pool relays information content. */ 200: { content: { - "application/json": components["schemas"]["script_json"]; + "application/json": components["schemas"]["pool_relays"]; }; }; 400: components["responses"]["400"]; @@ -2906,26 +2845,37 @@ export interface paths { }; }; }; - "/scripts/{script_hash}/cbor": { + "/pools/{pool_id}/delegators": { /** - * Script CBOR - * @description CBOR representation of a `plutus` script + * Stake pool delegators + * @description List of current stake pools delegators. */ get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; + }; path: { /** - * @description Hash of the script - * @example e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e + * @description Bech32 or hexadecimal pool ID. + * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy */ - script_hash: string; + pool_id: string; }; }; responses: { - /** @description Return the CBOR representation of a `plutus` script */ + /** @description Return the pool delegations. */ 200: { content: { - "application/json": components["schemas"]["script_cbor"]; + "application/json": components["schemas"]["pool_delegators"]; }; }; 400: components["responses"]["400"]; @@ -2937,10 +2887,10 @@ export interface paths { }; }; }; - "/scripts/{script_hash}/redeemers": { + "/pools/{pool_id}/blocks": { /** - * Redeemers of a specific script - * @description List of redeemers of a specific script + * Stake pool blocks + * @description List of stake pools blocks. */ get: { parameters: { @@ -2957,17 +2907,17 @@ export interface paths { }; path: { /** - * @description Hash of the script - * @example e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e + * @description Bech32 or hexadecimal pool ID. + * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy */ - script_hash: string; + pool_id: string; }; }; responses: { - /** @description Return the information about redeemers of a specific script */ + /** @description Return the pool block list */ 200: { content: { - "application/json": components["schemas"]["script_redeemers"]; + "application/json": components["schemas"]["pool_blocks"]; }; }; 400: components["responses"]["400"]; @@ -2979,26 +2929,37 @@ export interface paths { }; }; }; - "/scripts/datum/{datum_hash}": { + "/pools/{pool_id}/updates": { /** - * Datum value - * @description Query JSON value of a datum by its hash + * Stake pool updates + * @description List of certificate updates to the stake pool. */ get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; + }; path: { /** - * @description Hash of the datum - * @example db583ad85881a96c73fbb26ab9e24d1120bb38f45385664bb9c797a2ea8d9a2d + * @description Bech32 or hexadecimal pool ID. + * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy */ - datum_hash: string; + pool_id: string; }; }; responses: { - /** @description Return the datum value */ + /** @description Return the pool updates history */ 200: { content: { - "application/json": components["schemas"]["script_datum"]; + "application/json": components["schemas"]["pool_updates"]; }; }; 400: components["responses"]["400"]; @@ -3010,26 +2971,37 @@ export interface paths { }; }; }; - "/scripts/datum/{datum_hash}/cbor": { + "/pools/{pool_id}/votes": { /** - * Datum CBOR value - * @description Query CBOR serialised datum by its hash + * Stake pool votes + * @description History of stake pools votes. */ get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; + }; path: { /** - * @description Hash of the datum - * @example db583ad85881a96c73fbb26ab9e24d1120bb38f45385664bb9c797a2ea8d9a2d + * @description Bech32 or hexadecimal pool ID. + * @example pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy */ - datum_hash: string; + pool_id: string; }; }; responses: { - /** @description Return the CBOR serialised datum value */ + /** @description Return the pool votes. */ 200: { content: { - "application/json": components["schemas"]["script_datum_cbor"]; + "application/json": components["schemas"]["pool_votes"]; }; }; 400: components["responses"]["400"]; @@ -3041,36 +3013,32 @@ export interface paths { }; }; }; - "/utils/addresses/xpub/{xpub}/{role}/{index}": { + "/assets": { /** - * Derive an address - * @description Derive Shelley address from an xpub + * Assets + * @description List of assets. If an asset is completely burned, + * it will stay on the list with quantity 0 (order of assets is immutable). */ get: { parameters: { - path: { - /** - * @description Hex xpub - * @example d507c8f866691bd96e131334c355188b1a1d0b2fa0ab11545075aab332d77d9eb19657ad13ee581b56b0f8d744d66ca356b93d42fe176b3de007d53e9c4c4e7a - */ - xpub: string; - /** - * @description Account role - * @example 0 - */ - role: number; + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; /** - * @description Address index - * @example 2 + * @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. + * Ordering in this case is based on the time of the first mint transaction. */ - index: number; + order?: "asc" | "desc"; }; }; responses: { - /** @description Return derivated Shelley address */ + /** @description Return list of assets */ 200: { content: { - "application/json": components["schemas"]["utils_addresses_xpub"]; + "application/json": components["schemas"]["assets"]; }; }; 400: components["responses"]["400"]; @@ -3082,161 +3050,111 @@ export interface paths { }; }; }; - "/utils/txs/evaluate": { + "/assets/{asset}": { /** - * Submit a transaction for execution units evaluation - * @description Submit an already serialized transaction to evaluate how much execution units it requires. - * - *- * Hosted Endpoint only available for hosted variant. - *
+ * Specific asset + * @description Information about a specific asset */ - post: { + get: { parameters: { - header: { - "Content-Type": "application/cbor"; - }; - }; - /** @description The transaction to submit, serialized in CBOR. */ - requestBody: { - content: { - /** @example 83a400818258208911f640d452c3be4ff3d89db63b41ce048c056951286e2e28bbf8a51588ab44000181825839009493315cd92eb5d8c4304e67b7e16ae36d61d34502694657811a2c8e32c728d3861e164cab28cb8f006448139c8f1740ffb8e7aa9e5232dc1a10b2531f021a00029519075820cb798b0bce50604eaf2e0dc89367896b18f0a6ef6b32b57e3c9f83f8ee71e608a1008182582073fea80d424276ad0978d4fe5310e8bc2d485f5f6bb3bf87612989f112ad5a7d5840c40425229749a9434763cf01b492057fd56d7091a6372eaa777a1c9b1ca508c914e6a4ee9c0d40fc10952ed668e9ad65378a28b149de6bd4204bd9f095b0a902a11907b0a1667469636b657281a266736f757263656b736f757263655f6e616d656576616c7565736675676961742076656e69616d206d696e7573 */ - "application/cbor": string; + path: { + /** + * @description Concatenation of the policy_id and hex-encoded asset_name + * @example b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e + */ + asset: string; }; }; responses: { - /** - * @description- *
- * Hosted Endpoint only available for hosted variant. - *
+ * Asset history + * @description History of a specific asset */ - post: { + get: { parameters: { - header: { - "Content-Type": "application/json"; + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; }; - }; - /** @description JSON payload */ - requestBody: { - content: { - "application/json": { - /** @description Transaction CBOR (encoded using base64 or base16). */ - cbor: string; - /** @description Additional UTXO as an array of tuples [TxIn, TxOut]. See https://ogmios.dev/mini-protocols/local-tx-submission/#additional-utxo-set. */ - additionalUtxoSet?: (({ - /** @description Transaction hash for the input */ - txId?: string; - /** @description Index of the output within the transaction */ - index?: number; - } | { - /** @description Output address */ - address: string; - value: { - /** @description Lovelace amount */ - coins: number; - /** @description Assets amount */ - assets?: { - [key: string]: number; - }; - }; - datum_hash?: string; - datum?: { - [key: string]: unknown; - }; - script?: { - [key: string]: unknown; - }; - })[])[]; - }; + path: { + /** + * @description Concatenation of the policy_id and hex-encoded asset_name + * @example b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e + */ + asset: string; }; }; responses: { - /** - * @description- *
- * Hosted Endpoint only available for hosted variant. - *
- */ - post: operations["ipfs_add"]; - }; - "/ipfs/gateway/{IPFS_path}": { + "/assets/{asset}/txs": { /** - * Relay to an IPFS gateway - * @description Retrieve an object from the IPFS gateway (useful if you do not want to rely on a public gateway, such as `ipfs.blockfrost.dev`). - * - *- * Hosted Endpoint only available for hosted variant. - *
+ * Asset txs + * @deprecated + * @description List of a specific asset transactions */ get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; + }; path: { - IPFS_path: string; + /** + * @description Concatenation of the policy_id and hex-encoded asset_name + * @example b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e + */ + asset: string; }; }; responses: { - /** @description Returns the object content */ + /** @description Return the information about the history of a specific asset */ 200: { content: { - "application/octet-stream": string; + "application/json": components["schemas"]["asset_txs"]; }; }; 400: components["responses"]["400"]; @@ -3248,54 +3166,52 @@ export interface paths { }; }; }; - "/ipfs/pin/add/{IPFS_path}": { + "/assets/{asset}/transactions": { /** - * Pin an object - * @description Pinning is necessary to avoid regular garbage collection (deletion) of IPFS objects. Non-pinned objects are regularly being removed without prior notice. Pinned objects are counted in your user storage quota. + * Asset transactions + * @description List of a specific asset transactions */ - post: { + get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; + }; path: { - IPFS_path: string; + /** + * @description Concatenation of the policy_id and hex-encoded asset_name + * @example b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e + */ + asset: string; }; }; responses: { - /** @description Returns pinned object */ + /** @description Return the information about the history of a specific asset */ 200: { content: { - "application/json": { - /** - * @description IPFS hash of the pinned object - * @example QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8 - */ - ipfs_hash: string; - /** - * @description State of the pin action - * @example queued - * @enum {string} - */ - state: "queued|pinned|unpinned|failed|gc"; - }; + "application/json": components["schemas"]["asset_transactions"]; }; }; 400: components["responses"]["400"]; 403: components["responses"]["403"]; 404: components["responses"]["404"]; 418: components["responses"]["418"]; - 425: components["responses"]["425-2"]; 429: components["responses"]["429"]; 500: components["responses"]["500"]; }; }; }; - "/ipfs/pin/list": { + "/assets/{asset}/addresses": { /** - * List pinned objects - * @description List objects pinned to local storage - * - *- * Hosted Endpoint only available for hosted variant. - *
+ * Asset addresses + * @description List of a addresses containing a specific asset */ get: { parameters: { @@ -3310,43 +3226,19 @@ export interface paths { */ order?: "asc" | "desc"; }; + path: { + /** + * @description Concatenation of the policy_id and hex-encoded asset_name + * @example b0d07d45fe9514f80213f4020e5a61241458be626841cde717cb38a76e7574636f696e + */ + asset: string; + }; }; responses: { - /** @description Returns pinned objects */ + /** @description Return the information about the history of a specific asset */ 200: { content: { - "application/json": ({ - /** - * @description Creation time of the IPFS object on our backends - * @example 1615551024 - */ - time_created: number; - /** - * @description Pin time of the IPFS object on our backends - * @example 1615551024 - */ - time_pinned: number; - /** - * @description IPFS hash of the pinned object - * @example QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx - */ - ipfs_hash: string; - /** - * @description Size of the object in Bytes - * @example 1615551024 - */ - size: string; - /** - * @description State of the pinned object, which is `queued` when we are retriving object. If this - * is successful the state is changed to `pinned` or `failed` if not. The state `gc` means the - * pinned item has been garbage collected due to account being over storage quota or after it has - * been moved to `unpinned` state by removing the object pin. - * - * @example pinned - * @enum {string} - */ - state: "queued|pinned|unpinned|failed|gc"; - })[]; + "application/json": components["schemas"]["asset_addresses"]; }; }; 400: components["responses"]["400"]; @@ -3358,58 +3250,37 @@ export interface paths { }; }; }; - "/ipfs/pin/list/{IPFS_path}": { + "/assets/policy/{policy_id}": { /** - * Get details about pinned object - * @description Get information about locally pinned IPFS object - * - *- * Hosted Endpoint only available for hosted variant. - *
+ * Assets of a specific policy + * @description List of asset minted under a specific policy */ get: { parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; + }; path: { - IPFS_path: string; + /** + * @description Specific policy_id + * @example 476039a0949cf0b22f6a800f56780184c44533887ca6e821007840c3 + */ + policy_id: string; }; }; responses: { - /** @description Returns the pins pinned */ + /** @description Return the information about a specific asset */ 200: { content: { - "application/json": { - /** - * @description Time of the creation of the IPFS object on our backends - * @example 1615551024 - */ - time_created: number; - /** - * @description Time of the pin of the IPFS object on our backends - * @example 1615551024 - */ - time_pinned: number; - /** - * @description IPFS hash of the pinned object - * @example QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx - */ - ipfs_hash: string; - /** - * @description Size of the object in Bytes - * @example 1615551024 - */ - size: string; - /** - * @description State of the pinned object. We define 5 states: `queued`, `pinned`, `unpinned`, `failed`, `gc`. - * When the object is pending retrieval (i.e. after `/ipfs/pin/add/{IPFS_path}`), the state is `queued`. - * If the object is already successfully retrieved, state is changed to `pinned` or `failed` otherwise. - * When object is unpinned (i.e. after `/ipfs/pin/remove/{IPFS_path}`) it is marked for garbage collection. - * State `gc` means that a previously `unpinned` item has been garbage collected due to account being over storage quota. - * - * @example pinned - * @enum {string} - */ - state: "queued|pinned|unpinned|failed|gc"; - }; + "application/json": components["schemas"]["asset_policy"]; }; }; 400: components["responses"]["400"]; @@ -3421,38 +3292,30 @@ export interface paths { }; }; }; - "/ipfs/pin/remove/{IPFS_path}": { + "/scripts": { /** - * Remove a IPFS pin - * @description Remove pinned objects from local storage - * - *- * Hosted Endpoint only available for hosted variant. - *
+ * Scripts + * @description List of scripts. */ - post: { + get: { parameters: { - path: { - IPFS_path: string; + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; }; }; responses: { - /** @description Returns the pins removed */ + /** @description Return list of scripts */ 200: { content: { - "application/json": { - /** - * @description IPFS hash of the pinned object - * @example QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8 - */ - ipfs_hash: string; - /** - * @description State of the pin action - * @example unpinned - * @enum {string} - */ - state: "queued|pinned|unpinned|failed|gc"; - }; + "application/json": components["schemas"]["scripts"]; }; }; 400: components["responses"]["400"]; @@ -3464,17 +3327,26 @@ export interface paths { }; }; }; - "/metrics": { + "/scripts/{script_hash}": { /** - * Blockfrost usage metrics - * @description History of your Blockfrost usage metrics in the past 30 days. + * Specific script + * @description Information about a specific script */ get: { + parameters: { + path: { + /** + * @description Hash of the script + * @example e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e + */ + script_hash: string; + }; + }; responses: { - /** @description Return the last 30 days of metrics */ + /** @description Return the information about a specific script */ 200: { content: { - "application/json": components["schemas"]["metrics"]; + "application/json": components["schemas"]["script"]; }; }; 400: components["responses"]["400"]; @@ -3486,17 +3358,26 @@ export interface paths { }; }; }; - "/metrics/endpoints": { + "/scripts/{script_hash}/json": { /** - * Blockfrost endpoint usage metrics - * @description History of your Blockfrost usage metrics per endpoint in the past 30 days. + * Script JSON + * @description JSON representation of a `timelock` script */ get: { + parameters: { + path: { + /** + * @description Hash of the script + * @example e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e + */ + script_hash: string; + }; + }; responses: { - /** @description Return the last 30 days of metrics */ + /** @description Return the JSON representation of a `timelock` script */ 200: { content: { - "application/json": components["schemas"]["metrics_endpoints"]; + "application/json": components["schemas"]["script_json"]; }; }; 400: components["responses"]["400"]; @@ -3508,17 +3389,26 @@ export interface paths { }; }; }; - "/network": { + "/scripts/{script_hash}/cbor": { /** - * Network information - * @description Return detailed network information. + * Script CBOR + * @description CBOR representation of a `plutus` script */ get: { + parameters: { + path: { + /** + * @description Hash of the script + * @example e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e + */ + script_hash: string; + }; + }; responses: { - /** @description Return detailed network information. */ + /** @description Return the CBOR representation of a `plutus` script */ 200: { content: { - "application/json": components["schemas"]["network"]; + "application/json": components["schemas"]["script_cbor"]; }; }; 400: components["responses"]["400"]; @@ -3530,46 +3420,68 @@ export interface paths { }; }; }; - "/network/eras": { + "/scripts/{script_hash}/redeemers": { /** - * Query summary of blockchain eras - * @description Returns start and end of each era along with - * parameters that can vary between hard forks. + * Redeemers of a specific script + * @description List of redeemers of a specific script */ get: { + parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; + }; + path: { + /** + * @description Hash of the script + * @example e1457a0c47dfb7a2f6b8fbb059bdceab163c05d34f195b87b9f2b30e + */ + script_hash: string; + }; + }; responses: { - /** @description Returns era summaries content. */ + /** @description Return the information about redeemers of a specific script */ 200: { content: { - "application/json": components["schemas"]["network-eras"]; + "application/json": components["schemas"]["script_redeemers"]; }; }; 400: components["responses"]["400"]; 403: components["responses"]["403"]; 404: components["responses"]["404"]; 418: components["responses"]["418"]; - 425: components["responses"]["425"]; 429: components["responses"]["429"]; 500: components["responses"]["500"]; }; }; }; - "/nutlink/{address}": { + "/scripts/datum/{datum_hash}": { /** - * Specific nut.link address - * @description List metadata about specific address + * Datum value + * @description Query JSON value of a datum by its hash */ get: { parameters: { path: { - address: string; + /** + * @description Hash of the datum + * @example db583ad85881a96c73fbb26ab9e24d1120bb38f45385664bb9c797a2ea8d9a2d + */ + datum_hash: string; }; }; responses: { - /** @description Return the metadata about metadata oracle */ + /** @description Return the datum value */ 200: { content: { - "application/json": components["schemas"]["nutlink_address"]; + "application/json": components["schemas"]["script_datum"]; }; }; 400: components["responses"]["400"]; @@ -3581,33 +3493,26 @@ export interface paths { }; }; }; - "/nutlink/{address}/tickers": { + "/scripts/datum/{datum_hash}/cbor": { /** - * List of tickers of an oracle - * @description List of records of a specific oracle + * Datum CBOR value + * @description Query CBOR serialised datum by its hash */ get: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; + path: { /** - * @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. + * @description Hash of the datum + * @example db583ad85881a96c73fbb26ab9e24d1120bb38f45385664bb9c797a2ea8d9a2d */ - order?: "asc" | "desc"; - }; - path: { - address: string; + datum_hash: string; }; }; responses: { - /** @description Return the tickers provided by the metadata oracle */ + /** @description Return the CBOR serialised datum value */ 200: { content: { - "application/json": components["schemas"]["nutlink_address_tickers"]; + "application/json": components["schemas"]["script_datum_cbor"]; }; }; 400: components["responses"]["400"]; @@ -3619,34 +3524,36 @@ export interface paths { }; }; }; - "/nutlink/{address}/tickers/{ticker}": { + "/utils/addresses/xpub/{xpub}/{role}/{index}": { /** - * Specific ticker for an address - * @description List of records of a specific ticker + * Derive an address + * @description Derive Shelley address from an xpub */ get: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; + path: { /** - * @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. + * @description Hex xpub + * @example d507c8f866691bd96e131334c355188b1a1d0b2fa0ab11545075aab332d77d9eb19657ad13ee581b56b0f8d744d66ca356b93d42fe176b3de007d53e9c4c4e7a */ - order?: "asc" | "desc"; - }; - path: { - address: string; - ticker: string; + xpub: string; + /** + * @description Account role + * @example 0 + */ + role: number; + /** + * @description Address index + * @example 2 + */ + index: number; }; }; responses: { - /** @description Return the tickers provided by the metadata oracle */ + /** @description Return derivated Shelley address */ 200: { content: { - "application/json": components["schemas"]["nutlink_address_ticker"]; + "application/json": components["schemas"]["utils_addresses_xpub"]; }; }; 400: components["responses"]["400"]; @@ -3658,494 +3565,761 @@ export interface paths { }; }; }; - "/nutlink/tickers/{ticker}": { + "/utils/txs/evaluate": { /** - * Specific ticker - * @description List of records of a specific ticker + * Submit a transaction for execution units evaluation + * @description Submit an already serialized transaction to evaluate how much execution units it requires. + * + *+ * Hosted Endpoint only available for hosted variant. + *
*/ - get: { + post: { parameters: { - query?: { - /** @description The number of results displayed on one page. */ - count?: number; - /** @description The page number for listing the results. */ - page?: number; - /** - * @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. - */ - order?: "asc" | "desc"; + header: { + "Content-Type": "application/cbor"; }; - path: { - ticker: string; + }; + /** @description The transaction to submit, serialized in CBOR. */ + requestBody: { + content: { + /** @example 83a400818258208911f640d452c3be4ff3d89db63b41ce048c056951286e2e28bbf8a51588ab44000181825839009493315cd92eb5d8c4304e67b7e16ae36d61d34502694657811a2c8e32c728d3861e164cab28cb8f006448139c8f1740ffb8e7aa9e5232dc1a10b2531f021a00029519075820cb798b0bce50604eaf2e0dc89367896b18f0a6ef6b32b57e3c9f83f8ee71e608a1008182582073fea80d424276ad0978d4fe5310e8bc2d485f5f6bb3bf87612989f112ad5a7d5840c40425229749a9434763cf01b492057fd56d7091a6372eaa777a1c9b1ca508c914e6a4ee9c0d40fc10952ed668e9ad65378a28b149de6bd4204bd9f095b0a902a11907b0a1667469636b657281a266736f757263656b736f757263655f6e616d656576616c7565736675676961742076656e69616d206d696e7573 */ + "application/cbor": string; }; }; responses: { - /** @description Return the tickers provided by the metadata oracle */ + /** + * @description+ *
+ * Hosted Endpoint only available for hosted variant. + *
*/ - get: { - responses: { - /** @description root found */ - 200: { - content: { - "application/json": components["schemas"]["AggregatorFeaturesMessage"]; - }; + post: { + parameters: { + header: { + "Content-Type": "application/json"; }; - /** @description API version mismatch */ - 412: { - content: never; + }; + /** @description JSON payload */ + requestBody: { + content: { + "application/json": { + /** @description Transaction CBOR (encoded using base64 or base16). */ + cbor: string; + /** @description Additional UTXO as an array of tuples [TxIn, TxOut]. See https://ogmios.dev/mini-protocols/local-tx-submission/#additional-utxo-set. */ + additionalUtxoSet?: (({ + /** @description Transaction hash for the input */ + txId?: string; + /** @description Index of the output within the transaction */ + index?: number; + } | { + /** @description Output address */ + address: string; + value: { + /** @description Lovelace amount */ + coins: number; + /** @description Assets amount */ + assets?: { + [key: string]: number; + }; + }; + datum_hash?: string; + datum?: { + [key: string]: unknown; + }; + script?: { + [key: string]: unknown; + }; + })[])[]; + }; }; - /** @description root error */ - default: { + }; + responses: { + /** + * @description+ *
+ * Hosted Endpoint only available for hosted variant. + *
+ */ + post: operations["ipfs_add"]; + }; + "/ipfs/gateway/{IPFS_path}": { + /** + * Relay to an IPFS gateway + * @description Retrieve an object from the IPFS gateway (useful if you do not want to rely on a public gateway, such as `ipfs.blockfrost.dev`). + * + *+ * Hosted Endpoint only available for hosted variant. + *
*/ get: { + parameters: { + path: { + IPFS_path: string; + }; + }; responses: { - /** @description epoch settings found */ + /** @description Returns the object content */ 200: { content: { - "application/json": components["schemas"]["EpochSettingsMessage"]; - }; - }; - /** @description API version mismatch */ - 412: { - content: never; - }; - /** @description epoch settings error */ - default: { - content: { - "application/json": components["schemas"]["Error"]; + "application/octet-stream": string; }; }; + 400: components["responses"]["400"]; + 403: components["responses"]["403"]; + 404: components["responses"]["404"]; + 418: components["responses"]["418"]; + 429: components["responses"]["429"]; + 500: components["responses"]["500"]; }; }; }; - "/mithril/certificate-pending": { + "/ipfs/pin/add/{IPFS_path}": { /** - * Get current pending certificate information - * @description Returns the information related to the current pending certificate: - * * protocol parameters, for current and next epoch (to setup cryptography) - * * beacon information (where on the chain the pending certificate should be triggered) - * * entity type of the message that must be signed - * * verification keys of the signers, for current and next epoch + * Pin an object + * @description Pinning is necessary to avoid regular garbage collection (deletion) of IPFS objects. Non-pinned objects are regularly being removed without prior notice. Pinned objects are counted in your user storage quota. */ - get: { - responses: { - /** @description pending certificate found */ - 200: { - content: { - "application/json": components["schemas"]["CertificatePendingMessage"]; - }; - }; - /** @description no pending certificate available */ - 204: { - content: never; - }; - /** @description API version mismatch */ - 412: { - content: never; - }; - /** @description pending certificate error */ - default: { - content: { - "application/json": components["schemas"]["Error"]; - }; + post: { + parameters: { + path: { + IPFS_path: string; }; }; - }; - }; - "/mithril/certificates": { - /** - * Get most recent certificates - * @description Returns the list of the most recent certificates - */ - get: { responses: { - /** @description certificates found */ + /** @description Returns pinned object */ 200: { content: { - "application/json": components["schemas"]["CertificateListMessage"]; - }; - }; - /** @description API version mismatch */ - 412: { - content: never; - }; - /** @description certificates retrieval error */ - default: { - content: { - "application/json": components["schemas"]["Error"]; + "application/json": { + /** + * @description IPFS hash of the pinned object + * @example QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8 + */ + ipfs_hash: string; + /** + * @description State of the pin action + * @example queued + * @enum {string} + */ + state: "queued|pinned|unpinned|failed|gc"; + }; }; }; + 400: components["responses"]["400"]; + 403: components["responses"]["403"]; + 404: components["responses"]["404"]; + 418: components["responses"]["418"]; + 425: components["responses"]["425-2"]; + 429: components["responses"]["429"]; + 500: components["responses"]["500"]; }; }; }; - "/mithril/certificate/{certificate_hash}": { + "/ipfs/pin/list": { /** - * Get certificate by hash - * @description Returns the certificate identified by its hash + * List pinned objects + * @description List objects pinned to local storage + * + *+ * Hosted Endpoint only available for hosted variant. + *
*/ get: { parameters: { - path: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; /** - * @description Hash of the certificate to retrieve - * @example 7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572 + * @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. */ - certificate_hash: string; + order?: "asc" | "desc"; }; }; responses: { - /** @description certificate found */ + /** @description Returns pinned objects */ 200: { content: { - "application/json": components["schemas"]["CertificateMessage"]; - }; - }; - /** @description certificate not found */ - 404: { - content: never; - }; - /** @description API version mismatch */ - 412: { - content: never; - }; - /** @description pending certificate error */ - default: { - content: { - "application/json": components["schemas"]["Error"]; + "application/json": ({ + /** + * @description Creation time of the IPFS object on our backends + * @example 1615551024 + */ + time_created: number; + /** + * @description Pin time of the IPFS object on our backends + * @example 1615551024 + */ + time_pinned: number; + /** + * @description IPFS hash of the pinned object + * @example QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx + */ + ipfs_hash: string; + /** + * @description Size of the object in Bytes + * @example 1615551024 + */ + size: string; + /** + * @description State of the pinned object, which is `queued` when we are retriving object. If this + * is successful the state is changed to `pinned` or `failed` if not. The state `gc` means the + * pinned item has been garbage collected due to account being over storage quota or after it has + * been moved to `unpinned` state by removing the object pin. + * + * @example pinned + * @enum {string} + */ + state: "queued|pinned|unpinned|failed|gc"; + })[]; }; }; + 400: components["responses"]["400"]; + 403: components["responses"]["403"]; + 404: components["responses"]["404"]; + 418: components["responses"]["418"]; + 429: components["responses"]["429"]; + 500: components["responses"]["500"]; }; }; }; - "/mithril/artifact/snapshots": { + "/ipfs/pin/list/{IPFS_path}": { /** - * Get most recent snapshots - * @description Returns the list of the most recent snapshots + * Get details about pinned object + * @description Get information about locally pinned IPFS object + * + *+ * Hosted Endpoint only available for hosted variant. + *
*/ get: { + parameters: { + path: { + IPFS_path: string; + }; + }; responses: { - /** @description snapshots found */ + /** @description Returns the pins pinned */ 200: { content: { - "application/json": components["schemas"]["SnapshotListMessage"]; - }; - }; - /** @description API version mismatch */ - 412: { - content: never; - }; - /** @description snapshots retrieval error */ - default: { - content: { - "application/json": components["schemas"]["Error"]; + "application/json": { + /** + * @description Time of the creation of the IPFS object on our backends + * @example 1615551024 + */ + time_created: number; + /** + * @description Time of the pin of the IPFS object on our backends + * @example 1615551024 + */ + time_pinned: number; + /** + * @description IPFS hash of the pinned object + * @example QmdVMnULrY95mth2XkwjxDtMHvzuzmvUPTotKE1tgqKbCx + */ + ipfs_hash: string; + /** + * @description Size of the object in Bytes + * @example 1615551024 + */ + size: string; + /** + * @description State of the pinned object. We define 5 states: `queued`, `pinned`, `unpinned`, `failed`, `gc`. + * When the object is pending retrieval (i.e. after `/ipfs/pin/add/{IPFS_path}`), the state is `queued`. + * If the object is already successfully retrieved, state is changed to `pinned` or `failed` otherwise. + * When object is unpinned (i.e. after `/ipfs/pin/remove/{IPFS_path}`) it is marked for garbage collection. + * State `gc` means that a previously `unpinned` item has been garbage collected due to account being over storage quota. + * + * @example pinned + * @enum {string} + */ + state: "queued|pinned|unpinned|failed|gc"; + }; }; }; + 400: components["responses"]["400"]; + 403: components["responses"]["403"]; + 404: components["responses"]["404"]; + 418: components["responses"]["418"]; + 429: components["responses"]["429"]; + 500: components["responses"]["500"]; }; }; }; - "/mithril/artifact/snapshot/{digest}": { + "/ipfs/pin/remove/{IPFS_path}": { /** - * Get snapshot information - * @description Returns the information of a snapshot and where to retrieve its binary content + * Remove a IPFS pin + * @description Remove pinned objects from local storage + * + *+ * Hosted Endpoint only available for hosted variant. + *
*/ - get: { + post: { parameters: { path: { - /** - * @description Digest of the snapshot to retrieve - * @example 6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732 - */ - digest: string; + IPFS_path: string; }; }; responses: { - /** @description snapshot found */ + /** @description Returns the pins removed */ 200: { content: { - "application/json": components["schemas"]["SnapshotMessage"]; - }; - }; - /** @description snapshot not found */ - 404: { - content: never; - }; - /** @description API version mismatch */ - 412: { - content: never; - }; - /** @description snapshot retrieval error */ - default: { - content: { - "application/json": components["schemas"]["Error"]; + "application/json": { + /** + * @description IPFS hash of the pinned object + * @example QmPojRfAXYAXV92Dof7gtSgaVuxEk64xx9CKvprqu9VwA8 + */ + ipfs_hash: string; + /** + * @description State of the pin action + * @example unpinned + * @enum {string} + */ + state: "queued|pinned|unpinned|failed|gc"; + }; }; }; + 400: components["responses"]["400"]; + 403: components["responses"]["403"]; + 404: components["responses"]["404"]; + 418: components["responses"]["418"]; + 429: components["responses"]["429"]; + 500: components["responses"]["500"]; }; }; }; - "/mithril/artifact/snapshot/{digest}/download": { + "/metrics": { /** - * Download the snapshot - * @description Returns the snapshot archive binary content + * Blockfrost usage metrics + * @description History of your Blockfrost usage metrics in the past 30 days. */ get: { - parameters: { - path: { - /** - * @description Digest of the snapshot to download - * @example 6367ee65d0d1272e6e70736a1ea2cae34015874517f6328364f6b73930966732 - */ - digest: string; - }; - }; responses: { - /** @description snapshot found */ + /** @description Return the last 30 days of metrics */ 200: { content: { - "application/gzip": string; - }; - }; - /** @description snapshot not found */ - 404: { - content: never; - }; - /** @description API version mismatch */ - 412: { - content: never; - }; - /** @description snapshot retrieval error */ - default: { - content: { - "application/json": components["schemas"]["Error"]; + "application/json": components["schemas"]["metrics"]; }; }; + 400: components["responses"]["400"]; + 403: components["responses"]["403"]; + 404: components["responses"]["404"]; + 418: components["responses"]["418"]; + 429: components["responses"]["429"]; + 500: components["responses"]["500"]; }; }; }; - "/mithril/artifact/mithril-stake-distributions": { + "/metrics/endpoints": { /** - * Get most recent Mithril stake distributions - * @description Returns the list of the most recent Mithril stake distributions + * Blockfrost endpoint usage metrics + * @description History of your Blockfrost usage metrics per endpoint in the past 30 days. */ get: { responses: { - /** @description Mithril stake distribution found */ + /** @description Return the last 30 days of metrics */ 200: { content: { - "application/json": components["schemas"]["MithrilStakeDistributionListMessage"]; - }; - }; - /** @description API version mismatch */ - 412: { - content: never; - }; - /** @description Mithril stake distribution retrieval error */ - default: { - content: { - "application/json": components["schemas"]["Error"]; + "application/json": components["schemas"]["metrics_endpoints"]; }; }; + 400: components["responses"]["400"]; + 403: components["responses"]["403"]; + 404: components["responses"]["404"]; + 418: components["responses"]["418"]; + 429: components["responses"]["429"]; + 500: components["responses"]["500"]; }; }; }; - "/mithril/artifact/mithril-stake-distribution/{hash}": { + "/network": { /** - * Get Mithril stake distribution information - * @description Returns the information of a Mithril stake distribution + * Network information + * @description Return detailed network information. */ get: { - parameters: { - path: { - /** - * @description Hash of the Mithril stake distribution to retrieve - * @example 6da2b104ed68481ef829d72d72c2f6a20142916d17985e01774b14ed49f0fea1 - */ - hash: string; - }; - }; responses: { - /** @description Mithril stake distribution found */ + /** @description Return detailed network information. */ 200: { content: { - "application/json": components["schemas"]["MithrilStakeDistributionMessage"]; - }; - }; - /** @description Mithril stake distribution not found */ - 404: { - content: never; - }; - /** @description API version mismatch */ - 412: { - content: never; - }; - /** @description Mithril stake distribution retrieval error */ - default: { - content: { - "application/json": components["schemas"]["Error"]; + "application/json": components["schemas"]["network"]; }; }; + 400: components["responses"]["400"]; + 403: components["responses"]["403"]; + 404: components["responses"]["404"]; + 418: components["responses"]["418"]; + 429: components["responses"]["429"]; + 500: components["responses"]["500"]; }; }; }; - "/mithril/artifact/cardano-transactions": { + "/network/eras": { /** - * Get most recent Cardano transactions set snapshots - * @description Returns the list of the most recent Cardano transactions set snapshots + * Query summary of blockchain eras + * @description Returns start and end of each era along with + * parameters that can vary between hard forks. */ get: { responses: { - /** @description Cardano transactions set snapshots found */ + /** @description Returns era summaries content. */ 200: { content: { - "application/json": components["schemas"]["CardanoTransactionSnapshotListMessage"]; - }; - }; - /** @description API version mismatch */ - 412: { - content: never; - }; - /** @description Cardano transactions set snapshots retrieval error */ - default: { - content: { - "application/json": components["schemas"]["Error"]; + "application/json": components["schemas"]["network-eras"]; }; }; + 400: components["responses"]["400"]; + 403: components["responses"]["403"]; + 404: components["responses"]["404"]; + 418: components["responses"]["418"]; + 425: components["responses"]["425"]; + 429: components["responses"]["429"]; + 500: components["responses"]["500"]; }; }; }; - "/mithril/artifact/cardano-transaction/{hash}": { + "/nutlink/{address}": { /** - * Get Cardano transactions set snapshot information - * @description Returns the information of a Cardano transactions set snapshot + * Specific nut.link address + * @description List metadata about specific address */ get: { parameters: { path: { - /** - * @description Hash of the Cardano transactions set snapshot to retrieve - * @example 6da2b104ed68481ef829d72d72c2f6a20142916d17985e01774b14ed49f0fea1 - */ - hash: string; + address: string; }; }; responses: { - /** @description Cardano transactions set snapshot found */ + /** @description Return the metadata about metadata oracle */ 200: { content: { - "application/json": components["schemas"]["CardanoTransactionSnapshotMessage"]; - }; - }; - /** @description Cardano transactions set snapshot not found */ - 404: { - content: never; - }; - /** @description API version mismatch */ - 412: { - content: never; - }; - /** @description Cardano transactions set snapshot retrieval error */ - default: { - content: { - "application/json": components["schemas"]["Error"]; + "application/json": components["schemas"]["nutlink_address"]; }; }; + 400: components["responses"]["400"]; + 403: components["responses"]["403"]; + 404: components["responses"]["404"]; + 418: components["responses"]["418"]; + 429: components["responses"]["429"]; + 500: components["responses"]["500"]; }; }; }; - "/mithril/proof/cardano-transaction": { + "/nutlink/{address}/tickers": { /** - * Get the proofs of a Cardano transaction list - * @description Returns the transaction hashes and the corresponding proofs + * List of tickers of an oracle + * @description List of records of a specific oracle */ get: { parameters: { - query: { - /** @description Hashes of the Cardano transactions to retrieve proofs for */ - transaction_hashes: string[]; + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; + }; + path: { + address: string; }; }; responses: { - /** @description Cardano transaction proofs found */ + /** @description Return the tickers provided by the metadata oracle */ 200: { content: { - "application/json": components["schemas"]["CardanoTransactionProofMessage"]; - }; - }; - /** @description No Cardano transactions were ever signed */ - 404: { - content: never; - }; - /** @description API version mismatch */ - 412: { - content: never; - }; - /** @description Cardano transaction proofs retrieval error */ - default: { - content: { - "application/json": components["schemas"]["Error"]; + "application/json": components["schemas"]["nutlink_address_tickers"]; }; }; + 400: components["responses"]["400"]; + 403: components["responses"]["403"]; + 404: components["responses"]["404"]; + 418: components["responses"]["418"]; + 429: components["responses"]["429"]; + 500: components["responses"]["500"]; }; }; }; - "/mithril/signers/registered/{epoch}": { + "/nutlink/{address}/tickers/{ticker}": { /** - * Get registered signers for an epoch - * @description Returns the signers that registered at a given Epoch + * Specific ticker for an address + * @description List of records of a specific ticker */ get: { parameters: { - path: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; /** - * @description Cardano Epoch at which the signer registrations are registered - * @example 419 + * @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. */ - epoch: number; + order?: "asc" | "desc"; + }; + path: { + address: string; + ticker: string; }; }; responses: { - /** @description Registered Signers found */ + /** @description Return the tickers provided by the metadata oracle */ 200: { content: { - "application/json": components["schemas"]["SignerRegistrationsMessage"]; + "application/json": components["schemas"]["nutlink_address_ticker"]; }; }; - /** @description Registered Signers not found */ + 400: components["responses"]["400"]; + 403: components["responses"]["403"]; + 404: components["responses"]["404"]; + 418: components["responses"]["418"]; + 429: components["responses"]["429"]; + 500: components["responses"]["500"]; + }; + }; + }; + "/nutlink/tickers/{ticker}": { + /** + * Specific ticker + * @description List of records of a specific ticker + */ + get: { + parameters: { + query?: { + /** @description The number of results displayed on one page. */ + count?: number; + /** @description The page number for listing the results. */ + page?: number; + /** + * @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. + */ + order?: "asc" | "desc"; + }; + path: { + ticker: string; + }; + }; + responses: { + /** @description Return the tickers provided by the metadata oracle */ + 200: { + content: { + "application/json": components["schemas"]["nutlink_tickers_ticker"]; + }; + }; + 400: components["responses"]["400"]; + 403: components["responses"]["403"]; + 404: components["responses"]["404"]; + 418: components["responses"]["418"]; + 429: components["responses"]["429"]; + 500: components["responses"]["500"]; + }; + }; + }; + "/mithril/": { + /** + * Get public specifications about the aggregator + * @description Returns the specifications related to the aggregator: + * * Open API version + * * URL of Mithril documentation + * * Capabilities of the aggregator + * * Cardano transactions prover capabilities + */ + get: { + responses: { + /** @description root found */ + 200: { + content: { + "application/json": components["schemas"]["AggregatorFeaturesMessage"]; + }; + }; + /** @description API version mismatch */ + 412: { + content: never; + }; + /** @description root error */ + default: { + content: { + "application/json": components["schemas"]["Error"]; + }; + }; + }; + }; + }; + "/mithril/epoch-settings": { + /** + * Get current epoch settings + * @description Returns the information related to the current epoch: + * * protocol parameters for current epoch + * * protocol parameters for next epoch (to setup cryptography, allowing signers to register) + */ + get: { + responses: { + /** @description epoch settings found */ + 200: { + content: { + "application/json": components["schemas"]["EpochSettingsMessage"]; + }; + }; + /** @description API version mismatch */ + 412: { + content: never; + }; + /** @description epoch settings error */ + default: { + content: { + "application/json": components["schemas"]["Error"]; + }; + }; + }; + }; + }; + "/mithril/certificate-pending": { + /** + * Get current pending certificate information + * @description Returns the information related to the current pending certificate: + * * protocol parameters, for current and next epoch (to setup cryptography) + * * beacon information (where on the chain the pending certificate should be triggered) + * * entity type of the message that must be signed + * * verification keys of the signers, for current and next epoch + */ + get: { + responses: { + /** @description pending certificate found */ + 200: { + content: { + "application/json": components["schemas"]["CertificatePendingMessage"]; + }; + }; + /** @description no pending certificate available */ + 204: { + content: never; + }; + /** @description API version mismatch */ + 412: { + content: never; + }; + /** @description pending certificate error */ + default: { + content: { + "application/json": components["schemas"]["Error"]; + }; + }; + }; + }; + }; + "/mithril/certificates": { + /** + * Get most recent certificates + * @description Returns the list of the most recent certificates + */ + get: { + responses: { + /** @description certificates found */ + 200: { + content: { + "application/json": components["schemas"]["CertificateListMessage"]; + }; + }; + /** @description API version mismatch */ + 412: { + content: never; + }; + /** @description certificates retrieval error */ + default: { + content: { + "application/json": components["schemas"]["Error"]; + }; + }; + }; + }; + }; + "/mithril/certificate/{certificate_hash}": { + /** + * Get certificate by hash + * @description Returns the certificate identified by its hash + */ + get: { + parameters: { + path: { + /** + * @description Hash of the certificate to retrieve + * @example 7905e83ab5d7bc082c1bbc3033bfd19c539078830d19080d1f241c70aa532572 + */ + certificate_hash: string; + }; + }; + responses: { + /** @description certificate found */ + 200: { + content: { + "application/json": components["schemas"]["CertificateMessage"]; + }; + }; + /** @description certificate not found */ 404: { content: never; }; @@ -4153,7 +4327,7 @@ export interface paths { 412: { content: never; }; - /** @description Registered Signers retrieval error */ + /** @description pending certificate error */ default: { content: { "application/json": components["schemas"]["Error"]; @@ -4162,24 +4336,24 @@ export interface paths { }; }; }; - "/mithril/signers/tickers": { + "/mithril/artifact/snapshots": { /** - * Get the signers known by the aggregator - * @description Returns the signers party id and, if available, their pool ticker + * Get most recent snapshots + * @description Returns the list of the most recent snapshots */ get: { responses: { - /** @description Signers found */ + /** @description snapshots found */ 200: { content: { - "application/json": components["schemas"]["SignersTickersMessage"]; + "application/json": components["schemas"]["SnapshotListMessage"]; }; }; /** @description API version mismatch */ 412: { content: never; }; - /** @description Signers retrieval error */ + /** @description snapshots retrieval error */ default: { content: { "application/json": components["schemas"]["Error"]; @@ -4188,192 +4362,1173 @@ export interface paths { }; }; }; -} - -export type webhooks = Record