blockfrost-client 0.9.2.0 → 0.10.0.0
raw patch · 4 files changed
+196/−2 lines, 4 filesdep ~blockfrost-apiPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: blockfrost-api
API changes (from Hackage documentation)
- Blockfrost.Client.Types: [$sel:countPerPage:Paged] :: Paged -> Int
- Blockfrost.Client.Types: [$sel:pageNumber:Paged] :: Paged -> Int
- Blockfrost.Client.Types: [$sel:projectEnv:Project] :: Project -> Env
- Blockfrost.Client.Types: [$sel:projectId:Project] :: Project -> Text
- Blockfrost.Client.Types: [$sel:unBlockfrostClientT:BlockfrostClientT] :: BlockfrostClientT m a -> ExceptT BlockfrostError (ReaderT ClientConfig m) a
+ Blockfrost.Client: AccountsAPI :: (route :- (Summary "Specific account address" :> (Description "Obtain information about a specific stake account." :> (Capture "stake_address" Address :> Get '[JSON] AccountInfo)))) -> (route :- (Summary "Specific reward history" :> (Description "Obtain information about the reward history of a specific account." :> (Capture "stake_address" Address :> ("rewards" :> (Pagination :> (Sorting :> Get '[JSON] [AccountReward]))))))) -> (route :- (Summary "Account history" :> (Description "Obtain information about the history of a specific account." :> (Capture "stake_address" Address :> ("history" :> (Pagination :> (Sorting :> Get '[JSON] [AccountHistory]))))))) -> (route :- (Summary "Account delegation history" :> (Description "Obtain information about the delegation of a specific account." :> (Capture "stake_address" Address :> ("delegations" :> (Pagination :> (Sorting :> Get '[JSON] [AccountDelegation]))))))) -> (route :- (Summary "Account registration history" :> (Description "Obtain information about the registrations and deregistrations of a specific account." :> (Capture "stake_address" Address :> ("registrations" :> (Pagination :> (Sorting :> Get '[JSON] [AccountRegistration]))))))) -> (route :- (Summary "Account withdrawal history" :> (Description "Obtain information about the withdrawals of a specific account." :> (Capture "stake_address" Address :> ("withdrawals" :> (Pagination :> (Sorting :> Get '[JSON] [AccountWithdrawal]))))))) -> (route :- (Summary "Account MIR history" :> (Description "Obtain information about the MIRs of a specific account." :> (Capture "stake_address" Address :> ("mirs" :> (Pagination :> (Sorting :> Get '[JSON] [AccountMir]))))))) -> (route :- (Summary "Account associated addresses" :> (Description "Obtain information about the addresses of a specific account." :> (Capture "stake_address" Address :> ("addresses" :> (Pagination :> (Sorting :> Get '[JSON] [AddressAssociated]))))))) -> (route :- (Summary "Assets associated with the account addresses" :> (Description "Obtain information about assets associated with addresses of a specific account." :> (Capture "stake_address" Address :> ("addresses" :> ("assets" :> (Pagination :> (Sorting :> Get '[JSON] [Amount])))))))) -> (route :- (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." :> (Capture "stake_address" Address :> ("addresses" :> ("total" :> Get '[JSON] AddressAssociatedTotal)))))) -> AccountsAPI route
+ Blockfrost.Client: AddressesAPI :: (route :- (Summary "Specific address" :> (Description "Obtain information about a specific address." :> (Capture "address" Address :> Get '[JSON] AddressInfo)))) -> (route :- (Summary "Specific address - extended" :> (Description "Obtain extended information about a specific address." :> (Capture "address" Address :> ("extended" :> Get '[JSON] AddressInfoExtended))))) -> (route :- (Summary "Address details" :> (Description "Obtain details about an address." :> (Capture "address" Address :> ("total" :> Get '[JSON] AddressDetails))))) -> (route :- (Summary "Address UTXOs" :> (Description "UTXOs of the address." :> (Capture "address" Address :> ("utxos" :> (Pagination :> (Sorting :> Get '[JSON] [AddressUtxo]))))))) -> (route :- (Summary "Address UTXOs of a given asset" :> (Description "UTXOs of the address." :> (Capture "address" Address :> ("utxos" :> (Capture "asset" AssetId :> (Pagination :> (Sorting :> Get '[JSON] [AddressUtxo])))))))) -> (route :- (Summary "Address transactions" :> (Description "Transactions on the address." :> (Capture "address" Address :> ("transactions" :> (Pagination :> (Sorting :> (QueryParam "from" BlockIndex :> (QueryParam "to" BlockIndex :> Get '[JSON] [AddressTransaction]))))))))) -> AddressesAPI route
+ Blockfrost.Client: AssetsAPI :: (route :- (Summary "Assets" :> (Description "List of assets." :> (Pagination :> (Sorting :> Get '[JSON] [AssetInfo]))))) -> (route :- (Summary "Specific asset" :> (Description "Information about a specific asset." :> (Capture "asset" AssetId :> Get '[JSON] AssetDetails)))) -> (route :- (Summary "Asset history" :> (Description "History of a specific asset." :> (Capture "asset" AssetId :> ("history" :> (Pagination :> (Sorting :> Get '[JSON] [AssetHistory]))))))) -> (route :- (Summary "Asset transactions" :> (Description "List of a specific asset transactions" :> (Capture "asset" AssetId :> ("transactions" :> (Pagination :> (Sorting :> Get '[JSON] [AssetTransaction]))))))) -> (route :- (Summary "Asset addresses" :> (Description "List of a addresses containing a specific asset" :> (Capture "asset" AssetId :> ("addresses" :> (Pagination :> (Sorting :> Get '[JSON] [AssetAddress]))))))) -> (route :- (Summary "Assets of a specific policy" :> (Description "List of asset minted under a specific policy." :> ("policy" :> (Capture "policy_id" PolicyId :> (Pagination :> (Sorting :> Get '[JSON] [AssetInfo]))))))) -> AssetsAPI route
+ Blockfrost.Client: BlockfrostAPI :: (route :- ("api" :> ("v0" :> (BlockfrostAuth :> (UserAgent :> ToServantApi BlockfrostV0API))))) -> BlockfrostAPI route
+ Blockfrost.Client: BlockfrostV0API :: (route :- ToServantApi CommonAPI) -> (route :- ToServantApi CardanoAPI) -> (route :- ("ipfs" :> ToServantApi IPFSAPI)) -> (route :- ("nutlink" :> (Tag "Nut.link" :> ToServantApi NutLinkAPI))) -> BlockfrostV0API route
+ Blockfrost.Client: BlocksAPI :: (route :- (Summary "Latest block" :> (Description "Return the latest block available to the backends, also known as the tip of the blockchain." :> ("latest" :> Get '[JSON] Block)))) -> (route :- (Summary "Latest block transactions" :> (Description "Return the transactions within the latest block." :> ("latest" :> ("txs" :> (Pagination :> (Sorting :> Get '[JSON] [TxHash]))))))) -> (route :- (Summary "Latest transactions with CBOR data" :> (Description "Return the transactions within the latest block, including CBOR representations." :> ("latest" :> ("txs" :> ("cbor" :> (Pagination :> (Sorting :> Get '[JSON] [TxHashCBOR])))))))) -> (route :- (Summary "Latest block transactions" :> (Description "Return the transactions within the latest block." :> (Capture "hash_or_number" (Either Integer BlockHash) :> Get '[JSON] Block)))) -> (route :- (Summary "Specific block in a slot" :> (Description "Return the content of a requested block for a specific slot." :> ("slot" :> (Capture "slot_number" Slot :> Get '[JSON] Block))))) -> (route :- (Summary "Specific block in a slot in an epoch" :> (Description "Return the content of a requested block for a specific slot in an epoch." :> ("epoch" :> (Capture "epoch_number" Epoch :> ("slot" :> (Capture "slot_number" Slot :> Get '[JSON] Block))))))) -> (route :- (Summary "Listing of next blocks" :> (Description "Return the list of blocks following a specific block." :> (Capture "hash_or_number" (Either Integer BlockHash) :> ("next" :> (Pagination :> Get '[JSON] [Block])))))) -> (route :- (Summary "Listing of preious blocks" :> (Description "Return the list of blocks preceeding a specific block." :> (Capture "hash_or_number" (Either Integer BlockHash) :> ("previous" :> (Pagination :> Get '[JSON] [Block])))))) -> (route :- (Summary "Block transactions" :> (Description "Return the transactions within the block." :> (Capture "hash_or_number" (Either Integer BlockHash) :> ("txs" :> (Pagination :> (Sorting :> Get '[JSON] [TxHash]))))))) -> (route :- (Summary "Block transactions with CBOR data" :> (Description "Return the transactions within the block, including CBOR representations." :> (Capture "hash_or_number" (Either Integer BlockHash) :> ("txs" :> ("cbor" :> (Pagination :> (Sorting :> Get '[JSON] [TxHashCBOR])))))))) -> (route :- (Summary "Addresses affected in a specific block" :> (Description "Return list of addresses affected in the specified block with additional information, sorted by the bech32 address, ascending." :> (Capture "hash_or_number" (Either Integer BlockHash) :> ("addresses" :> (Pagination :> Get '[JSON] [(Address, [TxHash])])))))) -> BlocksAPI route
+ Blockfrost.Client: CardanoAPI :: (route :- ("accounts" :> (Tag "Cardano \187 Accounts" :> ToServantApi AccountsAPI))) -> (route :- ("addresses" :> (Tag "Cardano \187 Addresses" :> ToServantApi AddressesAPI))) -> (route :- ("assets" :> (Tag "Cardano \187 Assets" :> ToServantApi AssetsAPI))) -> (route :- ("blocks" :> (Tag "Cardano \187 Blocks" :> ToServantApi BlocksAPI))) -> (route :- ("epochs" :> (Tag "Cardano \187 Epochs" :> ToServantApi EpochsAPI))) -> (route :- ("governance" :> (Tag "Cardano \187 Governance" :> ToServantApi GovernanceAPI))) -> (route :- ("genesis" :> (Tag "Cardano \187 Ledger" :> ToServantApi LedgerAPI))) -> (route :- ("mempool" :> (Tag "Cardano \187 Mempool" :> ToServantApi MempoolAPI))) -> (route :- ("metadata" :> (Tag "Cardano \187 Metadata" :> ToServantApi MetadataAPI))) -> (route :- ("network" :> (Tag "Cardano \187 Network" :> ToServantApi NetworkAPI))) -> (route :- ("pools" :> (Tag "Cardano \187 Pools" :> ToServantApi PoolsAPI))) -> (route :- ("scripts" :> (Tag "Cardano \187 Scripts" :> ToServantApi ScriptsAPI))) -> (route :- ("txs" :> (Tag "Cardano \187 Transactions" :> ToServantApi TransactionsAPI))) -> (route :- (Summary "Submit a transaction" :> (Description "Submit an already serialized transaction to the network." :> (Tag "Cardano \187 Transactions" :> ("tx" :> ("submit" :> (ReqBody '[CBOR] CBORString :> Post '[JSON] TxHash))))))) -> (route :- ("utils" :> (Tag "Cardano \187 Utilities" :> ToServantApi UtilsAPI))) -> CardanoAPI route
+ Blockfrost.Client: CommonAPI :: (route :- (Summary "Root endpoint" :> (Description "Root endpoint has no other function than to point end users to documentation." :> (Tag "Health" :> Get '[JSON] URLVersion)))) -> (route :- (Summary "Backend health status" :> (Description "Return backend status as a boolean. Your application should handle situations when backend for the given chain is unavailable." :> (Tag "Health" :> ("health" :> Get '[JSON] Healthy))))) -> (route :- (Summary "Current backend time" :> (Description "This endpoint provides the current UNIX time. Your application might use this to verify if the client clock is not out of sync." :> (Tag "Health" :> ("health" :> ("clock" :> Get '[JSON] ServerTime)))))) -> (route :- (Summary "Blockfrost usage metrics" :> (Description "History of your Blockfrost usage metrics in the past 30 days." :> (Tag "Metrics" :> ("metrics" :> Get '[JSON] [Metric]))))) -> (route :- (Summary "Blockfrost endpoint usage metrics" :> (Description "History of your Blockfrost usage metrics per endpoint in the past 30 days." :> (Tag "Metrics" :> ("metrics" :> ("endpoints" :> Get '[JSON] [(Text, Metric)])))))) -> CommonAPI route
+ Blockfrost.Client: EpochsAPI :: (route :- (Summary "Latest epoch" :> (Description "Return the information about the latest, therefore current, epoch." :> ("latest" :> Get '[JSON] EpochInfo)))) -> (route :- (Summary "Latest epoch protocol parameters" :> (Description "Return the protocol parameters for the latest epoch." :> ("latest" :> ("parameters" :> Get '[JSON] ProtocolParams))))) -> (route :- (Summary "Specific epoch" :> (Description "Return the content of the requested epoch." :> (Capture "epoch_number" Epoch :> Get '[JSON] EpochInfo)))) -> (route :- (Summary "List of next epochs" :> (Description "Return the list of epochs following a specific epoch." :> (Capture "epoch_number" Epoch :> ("next" :> (Pagination :> Get '[JSON] [EpochInfo])))))) -> (route :- (Summary "List of previous epochs" :> (Description "Return the list of epochs preceding a specific epoch." :> (Capture "epoch_number" Epoch :> ("previous" :> (Pagination :> Get '[JSON] [EpochInfo])))))) -> (route :- (Summary "Stake distribution" :> (Description "Return the active stake distribution for the specified epoch." :> (Capture "epoch_number" Epoch :> ("stakes" :> (Pagination :> Get '[JSON] [StakeDistribution])))))) -> (route :- (Summary "Stake distribution by pool" :> (Description "Return the active stake distribution for the epoch specified by stake pool." :> (Capture "epoch_number" Epoch :> ("stakes" :> (Capture "pool_id" PoolId :> (Pagination :> Get '[JSON] [PoolStakeDistribution]))))))) -> (route :- (Summary "Block distribution" :> (Description "Return the blocks minted for the epoch specified." :> (Capture "epoch_number" Epoch :> ("blocks" :> (Pagination :> (Sorting :> Get '[JSON] [BlockHash]))))))) -> (route :- (Summary "Block distribution by pool" :> (Description "Return the block minted for the epoch specified by stake pool." :> (Capture "epoch_number" Epoch :> ("blocks" :> (Capture "pool_id" PoolId :> (Pagination :> (Sorting :> Get '[JSON] [BlockHash])))))))) -> (route :- (Summary "Protocol parameters" :> (Description "Return the protocol parameters for the specified epoch." :> (Capture "epoch_number" Epoch :> ("parameters" :> Get '[JSON] ProtocolParams))))) -> EpochsAPI route
+ Blockfrost.Client: Form :: Text -> FilePath -> Form
+ Blockfrost.Client: GovernanceAPI :: (route :- (Summary "Delegate Representatives (DReps)" :> (Description "Return the information about Delegate Representatives (DReps)." :> ("dreps" :> (Pagination :> (Sorting :> Get '[JSON] [DRep])))))) -> (route :- (Summary "Specific DRep" :> (Description "DRep information." :> ("dreps" :> (Capture "drep_id" DRepId :> Get '[JSON] DRepInfo))))) -> (route :- (Summary "DRep delegators" :> (Description "List of Drep delegators." :> ("dreps" :> (Capture "drep_id" DRepId :> ("delegators" :> (Pagination :> (Sorting :> Get '[JSON] [DRepDelegator])))))))) -> (route :- (Summary "DRep metadata" :> (Description "DRep metadata information." :> ("dreps" :> (Capture "drep_id" DRepId :> ("metadata" :> Get '[JSON] DRepMeta)))))) -> (route :- (Summary "DRep updates" :> (Description "List of certificate updates to the DRep." :> ("dreps" :> (Capture "drep_id" DRepId :> ("updates" :> (Pagination :> (Sorting :> Get '[JSON] [DRepUpdate])))))))) -> (route :- (Summary "DRep votes" :> (Description "History of DReps votes." :> ("dreps" :> (Capture "drep_id" DRepId :> ("votes" :> (Pagination :> (Sorting :> Get '[JSON] [DRepVote])))))))) -> (route :- (Summary "Proposals" :> (Description "List of proposals." :> ("proposals" :> (Pagination :> (Sorting :> Get '[JSON] [Proposal])))))) -> (route :- (Summary "Specific proposal" :> (Description "Proposal details." :> ("proposals" :> (Capture "hash" TxHash :> (Capture "cert_index" Integer :> Get '[JSON] ProposalInfo)))))) -> (route :- (Summary "Specific parameters proposal" :> (Description "Parameter proposal details." :> ("proposals" :> (Capture "hash" TxHash :> (Capture "cert_index" Integer :> ("parameters" :> Get '[JSON] ParamProposal))))))) -> (route :- (Summary "Specific withdrawals proposal" :> (Description "Withdrawals proposal details." :> ("proposals" :> (Capture "hash" TxHash :> (Capture "cert_index" Integer :> ("withdrawals" :> Get '[JSON] [WithdrawalProposal]))))))) -> (route :- (Summary "Proposal votes" :> (Description "History of proposal votes." :> ("proposals" :> (Capture "hash" TxHash :> (Capture "cert_index" Integer :> ("votes" :> (Pagination :> (Sorting :> Get '[JSON] [ProposalVote]))))))))) -> (route :- (Summary "Specific proposal metadata" :> (Description "Proposal metadata information." :> ("proposals" :> (Capture "hash" TxHash :> (Capture "cert_index" Integer :> ("metadata" :> Get '[JSON] ProposalMeta))))))) -> GovernanceAPI route
+ Blockfrost.Client: IPFSAPI :: (route :- (Summary "Add a file or directory to IPFS" :> (Description "You need to `/ipfs/pin/add` an object to avoid it being garbage collected. This usage is being counted in your user account quota." :> (Tag "IPFS \187 Add" :> ("add" :> (MultipartForm Tmp Form :> Post '[JSON] IPFSAdd)))))) -> (route :- (Summary "Relay to an IPFS gateway" :> (Description "Retrieve an object from the IFPS gateway. (Useful if you do not want to rely on a public gateway, such as ``ipfs.blockfrost.dev`)." :> (Tag "IPFS \187 Gateway" :> ("gateway" :> (Capture "IPFS_path" Text :> Get '[PlainText, OctetStream] IPFSData)))))) -> (route :- (Summary "Pin an object" :> (Description "Pinned objects are counted in your user storage quota." :> (Tag "IPFS \187 Pins" :> ("pin" :> ("add" :> (Capture "IPFS_path" Text :> Post '[JSON] IPFSPinChange))))))) -> (route :- (Summary "List pinned objects" :> (Description "List objects pinned to local storage." :> (Tag "IPFS \187 Pins" :> ("pin" :> ("list" :> (Pagination :> (Sorting :> Get '[JSON] [IPFSPin])))))))) -> (route :- (Summary "Get pinned object details" :> (Description "Obtain inormation about specific pinned object." :> (Tag "IPFS \187 Pins" :> ("pin" :> ("list" :> (Capture "IPFS_path" Text :> Get '[JSON] IPFSPin))))))) -> (route :- (Summary "Remove pinned object from local storage" :> (Description "Remove pinned object from local storage" :> (Tag "IPFS \187 Pins" :> ("pin" :> ("remove" :> (Capture "IPFS_path" Text :> Post '[JSON] IPFSPinChange))))))) -> IPFSAPI route
+ Blockfrost.Client: LedgerAPI :: (route :- (Summary "Blockchain genesis" :> (Description "Return the information about blockchain genesis." :> Get '[JSON] Genesis))) -> LedgerAPI route
+ Blockfrost.Client: MempoolAPI :: (route :- (Summary "Transactions in Mempool." :> (Description "Tx hash list of all transactions that are currently stored in the mempool." :> (Pagination :> (Sorting :> Get '[JSON] [TxHashObject]))))) -> (route :- (Summary "Transaction in mempoool." :> (Description "Content of a specific transaction in the mempool." :> (Capture "hash" TxHash :> Get '[JSON] MempoolTransaction)))) -> (route :- (Summary "Transactions involving an address in mempool." :> (Description "List of transactions in the mempool that involves a specific address." :> ("addresses" :> (Capture "address" Address :> (Pagination :> (Sorting :> Get '[JSON] [TxHashObject]))))))) -> MempoolAPI route
+ Blockfrost.Client: MetadataAPI :: (route :- (Summary "Transaction metadata labels" :> (Description "List of all used transaction metadata labels." :> ("txs" :> ("labels" :> (Pagination :> (Sorting :> Get '[JSON] [TxMeta]))))))) -> (route :- (Summary "Transaction metadata content in JSON" :> (Description "Transaction metadata per label." :> ("txs" :> ("labels" :> (Capture "label" Text :> (Pagination :> (Sorting :> Get '[JSON] [TxMetaJSON])))))))) -> (route :- (Summary "Transaction metadata content in CBOR" :> (Description "Transaction metadata per label." :> ("txs" :> ("labels" :> (Capture "label" Text :> ("cbor" :> (Pagination :> (Sorting :> Get '[JSON] [TxMetaCBOR]))))))))) -> MetadataAPI route
+ Blockfrost.Client: NetworkAPI :: (route :- (Summary "Network information" :> (Description "Return detailed network information." :> Get '[JSON] Network))) -> (route :- (Summary "Query summary of blockchain eras" :> (Description "Returns start and end of each era along with parameters that can vary between hard forks." :> ("eras" :> Get '[JSON] [NetworkEraSummary])))) -> NetworkAPI route
+ Blockfrost.Client: NutLinkAPI :: (route :- (Summary "List metadata about specific address" :> (Description "List metadata about specific address" :> (Capture "address" Address :> Get '[JSON] NutlinkAddress)))) -> (route :- (Summary "List tickers for a specific metadata oracle" :> (Description "List tickers for a specific metadata oracle" :> (Capture "address" Address :> ("tickers" :> (Pagination :> (Sorting :> Get '[JSON] [NutlinkAddressTicker]))))))) -> (route :- (Summary "List of records of a specific ticker" :> (Description "List of records of a specific ticker" :> (Capture "address" Address :> ("tickers" :> (Capture "ticker" Text :> (Pagination :> (Sorting :> Get '[JSON] [NutlinkTicker])))))))) -> (route :- (Summary "List of records of a specific ticker" :> (Description "List of records of a specific ticker" :> ("tickers" :> (Capture "ticker" Text :> (Pagination :> (Sorting :> Get '[JSON] [(Address, NutlinkTicker)]))))))) -> NutLinkAPI route
+ Blockfrost.Client: PoolsAPI :: (route :- (Summary "List of stake pools" :> (Description "List of registered stake pools." :> (Pagination :> (Sorting :> Get '[JSON] [PoolId]))))) -> (route :- (Summary "List of stake pools with additional information" :> (Description "List of registered stake pools with additional information." :> ("extended" :> (Pagination :> (Sorting :> Get '[JSON] [Pool])))))) -> (route :- (Summary "List of retired stake pools" :> (Description "List of already retired stake pools." :> ("retired" :> (Pagination :> (Sorting :> Get '[JSON] [PoolEpoch])))))) -> (route :- (Summary "List of retiring stake pools" :> (Description "List of stake pools retiring in the upcoming epochs" :> ("retiring" :> (Pagination :> (Sorting :> Get '[JSON] [PoolEpoch])))))) -> (route :- (Summary "Specific stake pool" :> (Description "Pool information." :> (Capture "pool_id" PoolId :> Get '[JSON] PoolInfo)))) -> (route :- (Summary "Stake pool history" :> (Description "History of stake pool parameters over epochs." :> (Capture "pool_id" PoolId :> ("history" :> (Pagination :> (Sorting :> Get '[JSON] [PoolHistory]))))))) -> (route :- (Summary "Stake pool metadata" :> (Description "Stake pool registration metadata." :> (Capture "pool_id" PoolId :> ("metadata" :> Get '[JSON] PoolMetadataResponse))))) -> (route :- (Summary "Stake pool relays" :> (Description "Relays of a stake pool." :> (Capture "pool_id" PoolId :> ("relays" :> Get '[JSON] [PoolRelay]))))) -> (route :- (Summary "Stake pool delegators" :> (Description "List of current stake pools delegators." :> (Capture "pool_id" PoolId :> ("delegators" :> (Pagination :> (Sorting :> Get '[JSON] [PoolDelegator]))))))) -> (route :- (Summary "Stake pool blocks" :> (Description "List of stake pool blocks." :> (Capture "pool_id" PoolId :> ("blocks" :> (Pagination :> (Sorting :> Get '[JSON] [BlockHash]))))))) -> (route :- (Summary "Stake pool updates" :> (Description "List of certificate updates to the stake pool." :> (Capture "pool_id" PoolId :> ("updates" :> (Pagination :> (Sorting :> Get '[JSON] [PoolUpdate]))))))) -> PoolsAPI route
+ Blockfrost.Client: Project :: Env -> Text -> Project
+ Blockfrost.Client: ScriptsAPI :: (route :- (Summary "Scripts" :> (Description "List of scripts." :> (Pagination :> (Sorting :> Get '[JSON] ScriptHashList))))) -> (route :- (Summary "Specific scripts" :> (Description "Information about a specific script." :> (Capture "script_hash" ScriptHash :> Get '[JSON] Script)))) -> (route :- (Summary "Redeemers of a specific script" :> (Description "List of redeemers of a specific script." :> (Capture "script_hash" ScriptHash :> (Pagination :> (Sorting :> ("redeemers" :> Get '[JSON] [ScriptRedeemer]))))))) -> (route :- (Summary "Datum value" :> (Description "Query JSON value of a datum by its hash" :> ("datum" :> (Capture "datum_hash" DatumHash :> Get '[JSON] ScriptDatum))))) -> (route :- (Summary "Datum CBOR value" :> (Description "Query CBOR serialised datum by its hash" :> ("datum" :> (Capture "datum_hash" DatumHash :> ("cbor" :> Get '[JSON] ScriptDatumCBOR)))))) -> (route :- (Summary "Script JSON" :> (Description "JSON representation of a `timelock` script" :> (Capture "script_hash" ScriptHash :> ("json" :> Get '[JSON] ScriptJSON))))) -> (route :- (Summary "Script CBOR" :> (Description "CBOR representation of a `plutus` script" :> (Capture "script_hash" ScriptHash :> ("cbor" :> Get '[JSON] ScriptCBOR))))) -> ScriptsAPI route
+ Blockfrost.Client: TransactionsAPI :: (route :- (Summary "Specific transaction" :> (Description "Return content of the requested transaction." :> (Capture "hash" TxHash :> Get '[JSON] Transaction)))) -> (route :- (Summary "Transaction UTXOs" :> (Description "Return the inputs and UTXOs of the specific transaction." :> (Capture "hash" TxHash :> ("utxos" :> Get '[JSON] TransactionUtxos))))) -> (route :- (Summary "Transaction redeemers" :> (Description "Obtain the transaction redeemers." :> (Capture "hash" TxHash :> ("redeemers" :> Get '[JSON] [TransactionRedeemer]))))) -> (route :- (Summary "Transaction stake addresses certificates " :> (Description "Obtain information about (de)registration of stake addresses within a transaction." :> (Capture "hash" TxHash :> ("stakes" :> Get '[JSON] [TransactionStake]))))) -> (route :- (Summary "Transaction delegation certificates" :> (Description "Obtain information about delegation certificates of a specific transaction." :> (Capture "hash" TxHash :> ("delegations" :> Get '[JSON] [TransactionDelegation]))))) -> (route :- (Summary "Transaction withdrawal" :> (Description "Obtain information about withdrawals of a specific transaction." :> (Capture "hash" TxHash :> ("withdrawals" :> Get '[JSON] [TransactionWithdrawal]))))) -> (route :- (Summary "Transaction MIRs" :> (Description "Obtain information about Move Instantaneous Rewards (MIRs) of a specific transaction." :> (Capture "hash" TxHash :> ("mirs" :> Get '[JSON] [TransactionMir]))))) -> (route :- (Summary "Transaction stake pool registration and update certificates" :> (Description "Obtain information about stake pool registration and update certificates of a specific transaction." :> (Capture "hash" TxHash :> ("pool_updates" :> Get '[JSON] [TransactionPoolUpdate]))))) -> (route :- (Summary "Transaction stake pool retirement certificates" :> (Description "Obtain information about stake pool retirements within a specific transaction." :> (Capture "hash" TxHash :> ("pool_retires" :> Get '[JSON] [TransactionPoolRetiring]))))) -> (route :- (Summary "Transaction metadata" :> (Description "Obtain the transaction metadata." :> (Capture "hash" TxHash :> ("metadata" :> Get '[JSON] [TransactionMetaJSON]))))) -> (route :- (Summary "Transaction in CBOR" :> (Description "Obtain the CBOR serialized transaction." :> (Capture "hash" TxHash :> ("cbor" :> Get '[JSON] TransactionCBOR))))) -> (route :- (Summary "Transaction metadata in CBOR" :> (Description "Obtain the transaction metadata in CBOR." :> (Capture "hash" TxHash :> ("metadata" :> ("cbor" :> Get '[JSON] [TransactionMetaCBOR])))))) -> TransactionsAPI route
+ Blockfrost.Client: UtilsAPI :: (route :- (Summary "Derive an address" :> (Description "Derive Shelley address from an xpub." :> ("addresses" :> ("xpub" :> (Capture "xpub" Text :> (Capture "role" Integer :> (Capture "index" Integer :> Get '[JSON] DerivedAddress)))))))) -> (route :- (Summary "Submit a transaction for execution units evaluation" :> (Description "Submit an already serialized transaction to evaluate how much execution units it requires." :> ("txs" :> ("evaluate" :> (ReqBody '[CBOR] CBORString :> Post '[JSON] TxEval)))))) -> (route :- (Summary "Submit a transaction for execution units evaluation (additional UTXO set)" :> (Description "Submit a JSON payload with transaction CBOR and additional UTXO set to evaluate how much execution units it requires." :> ("txs" :> ("evaluate" :> ("utxos" :> (ReqBody '[JSON] TxEvalInput :> Post '[JSON] TxEval))))))) -> UtilsAPI route
+ Blockfrost.Client: [__blockEpochSlot] :: BlocksAPI route -> route :- (Summary "Specific block in a slot in an epoch" :> (Description "Return the content of a requested block for a specific slot in an epoch." :> ("epoch" :> (Capture "epoch_number" Epoch :> ("slot" :> (Capture "slot_number" Slot :> Get '[JSON] Block))))))
+ Blockfrost.Client: [__blockSlot] :: BlocksAPI route -> route :- (Summary "Specific block in a slot" :> (Description "Return the content of a requested block for a specific slot." :> ("slot" :> (Capture "slot_number" Slot :> Get '[JSON] Block))))
+ Blockfrost.Client: [_accountAssociatedAddresses] :: AccountsAPI route -> route :- (Summary "Account associated addresses" :> (Description "Obtain information about the addresses of a specific account." :> (Capture "stake_address" Address :> ("addresses" :> (Pagination :> (Sorting :> Get '[JSON] [AddressAssociated]))))))
+ Blockfrost.Client: [_accountAssociatedAssets] :: AccountsAPI route -> route :- (Summary "Assets associated with the account addresses" :> (Description "Obtain information about assets associated with addresses of a specific account." :> (Capture "stake_address" Address :> ("addresses" :> ("assets" :> (Pagination :> (Sorting :> Get '[JSON] [Amount])))))))
+ Blockfrost.Client: [_accountAssociatedTotal] :: AccountsAPI route -> route :- (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." :> (Capture "stake_address" Address :> ("addresses" :> ("total" :> Get '[JSON] AddressAssociatedTotal)))))
+ Blockfrost.Client: [_accountDelegations] :: AccountsAPI route -> route :- (Summary "Account delegation history" :> (Description "Obtain information about the delegation of a specific account." :> (Capture "stake_address" Address :> ("delegations" :> (Pagination :> (Sorting :> Get '[JSON] [AccountDelegation]))))))
+ Blockfrost.Client: [_accountHistory] :: AccountsAPI route -> route :- (Summary "Account history" :> (Description "Obtain information about the history of a specific account." :> (Capture "stake_address" Address :> ("history" :> (Pagination :> (Sorting :> Get '[JSON] [AccountHistory]))))))
+ Blockfrost.Client: [_accountMirs] :: AccountsAPI route -> route :- (Summary "Account MIR history" :> (Description "Obtain information about the MIRs of a specific account." :> (Capture "stake_address" Address :> ("mirs" :> (Pagination :> (Sorting :> Get '[JSON] [AccountMir]))))))
+ Blockfrost.Client: [_accountRegistrations] :: AccountsAPI route -> route :- (Summary "Account registration history" :> (Description "Obtain information about the registrations and deregistrations of a specific account." :> (Capture "stake_address" Address :> ("registrations" :> (Pagination :> (Sorting :> Get '[JSON] [AccountRegistration]))))))
+ Blockfrost.Client: [_accountRewards] :: AccountsAPI route -> route :- (Summary "Specific reward history" :> (Description "Obtain information about the reward history of a specific account." :> (Capture "stake_address" Address :> ("rewards" :> (Pagination :> (Sorting :> Get '[JSON] [AccountReward]))))))
+ Blockfrost.Client: [_accountWithdrawals] :: AccountsAPI route -> route :- (Summary "Account withdrawal history" :> (Description "Obtain information about the withdrawals of a specific account." :> (Capture "stake_address" Address :> ("withdrawals" :> (Pagination :> (Sorting :> Get '[JSON] [AccountWithdrawal]))))))
+ Blockfrost.Client: [_account] :: AccountsAPI route -> route :- (Summary "Specific account address" :> (Description "Obtain information about a specific stake account." :> (Capture "stake_address" Address :> Get '[JSON] AccountInfo)))
+ Blockfrost.Client: [_accounts] :: CardanoAPI route -> route :- ("accounts" :> (Tag "Cardano \187 Accounts" :> ToServantApi AccountsAPI))
+ Blockfrost.Client: [_add] :: IPFSAPI route -> route :- (Summary "Add a file or directory to IPFS" :> (Description "You need to `/ipfs/pin/add` an object to avoid it being garbage collected. This usage is being counted in your user account quota." :> (Tag "IPFS \187 Add" :> ("add" :> (MultipartForm Tmp Form :> Post '[JSON] IPFSAdd)))))
+ Blockfrost.Client: [_addressDetails] :: AddressesAPI route -> route :- (Summary "Address details" :> (Description "Obtain details about an address." :> (Capture "address" Address :> ("total" :> Get '[JSON] AddressDetails))))
+ Blockfrost.Client: [_addressInfoExtended] :: AddressesAPI route -> route :- (Summary "Specific address - extended" :> (Description "Obtain extended information about a specific address." :> (Capture "address" Address :> ("extended" :> Get '[JSON] AddressInfoExtended))))
+ Blockfrost.Client: [_addressInfo] :: AddressesAPI route -> route :- (Summary "Specific address" :> (Description "Obtain information about a specific address." :> (Capture "address" Address :> Get '[JSON] AddressInfo)))
+ Blockfrost.Client: [_addressTickers] :: NutLinkAPI route -> route :- (Summary "List of records of a specific ticker" :> (Description "List of records of a specific ticker" :> (Capture "address" Address :> ("tickers" :> (Capture "ticker" Text :> (Pagination :> (Sorting :> Get '[JSON] [NutlinkTicker])))))))
+ Blockfrost.Client: [_addressTransactions] :: AddressesAPI route -> route :- (Summary "Address transactions" :> (Description "Transactions on the address." :> (Capture "address" Address :> ("transactions" :> (Pagination :> (Sorting :> (QueryParam "from" BlockIndex :> (QueryParam "to" BlockIndex :> Get '[JSON] [AddressTransaction]))))))))
+ Blockfrost.Client: [_addressUtxosAsset] :: AddressesAPI route -> route :- (Summary "Address UTXOs of a given asset" :> (Description "UTXOs of the address." :> (Capture "address" Address :> ("utxos" :> (Capture "asset" AssetId :> (Pagination :> (Sorting :> Get '[JSON] [AddressUtxo])))))))
+ Blockfrost.Client: [_addressUtxos] :: AddressesAPI route -> route :- (Summary "Address UTXOs" :> (Description "UTXOs of the address." :> (Capture "address" Address :> ("utxos" :> (Pagination :> (Sorting :> Get '[JSON] [AddressUtxo]))))))
+ Blockfrost.Client: [_address] :: NutLinkAPI route -> route :- (Summary "List metadata about specific address" :> (Description "List metadata about specific address" :> (Capture "address" Address :> Get '[JSON] NutlinkAddress)))
+ Blockfrost.Client: [_addresses] :: CardanoAPI route -> route :- ("addresses" :> (Tag "Cardano \187 Addresses" :> ToServantApi AddressesAPI))
+ Blockfrost.Client: [_apiV0] :: BlockfrostAPI route -> route :- ("api" :> ("v0" :> (BlockfrostAuth :> (UserAgent :> ToServantApi BlockfrostV0API))))
+ Blockfrost.Client: [_assetAddresses] :: AssetsAPI route -> route :- (Summary "Asset addresses" :> (Description "List of a addresses containing a specific asset" :> (Capture "asset" AssetId :> ("addresses" :> (Pagination :> (Sorting :> Get '[JSON] [AssetAddress]))))))
+ Blockfrost.Client: [_assetDetails] :: AssetsAPI route -> route :- (Summary "Specific asset" :> (Description "Information about a specific asset." :> (Capture "asset" AssetId :> Get '[JSON] AssetDetails)))
+ Blockfrost.Client: [_assetHistory] :: AssetsAPI route -> route :- (Summary "Asset history" :> (Description "History of a specific asset." :> (Capture "asset" AssetId :> ("history" :> (Pagination :> (Sorting :> Get '[JSON] [AssetHistory]))))))
+ Blockfrost.Client: [_assetTransactions] :: AssetsAPI route -> route :- (Summary "Asset transactions" :> (Description "List of a specific asset transactions" :> (Capture "asset" AssetId :> ("transactions" :> (Pagination :> (Sorting :> Get '[JSON] [AssetTransaction]))))))
+ Blockfrost.Client: [_assets] :: CardanoAPI route -> route :- ("assets" :> (Tag "Cardano \187 Assets" :> ToServantApi AssetsAPI))
+ Blockfrost.Client: [_blockAffectedAddresses] :: BlocksAPI route -> route :- (Summary "Addresses affected in a specific block" :> (Description "Return list of addresses affected in the specified block with additional information, sorted by the bech32 address, ascending." :> (Capture "hash_or_number" (Either Integer BlockHash) :> ("addresses" :> (Pagination :> Get '[JSON] [(Address, [TxHash])])))))
+ Blockfrost.Client: [_blockNext] :: BlocksAPI route -> route :- (Summary "Listing of next blocks" :> (Description "Return the list of blocks following a specific block." :> (Capture "hash_or_number" (Either Integer BlockHash) :> ("next" :> (Pagination :> Get '[JSON] [Block])))))
+ Blockfrost.Client: [_blockPrevious] :: BlocksAPI route -> route :- (Summary "Listing of preious blocks" :> (Description "Return the list of blocks preceeding a specific block." :> (Capture "hash_or_number" (Either Integer BlockHash) :> ("previous" :> (Pagination :> Get '[JSON] [Block])))))
+ Blockfrost.Client: [_blockTxsCBOR] :: BlocksAPI route -> route :- (Summary "Block transactions with CBOR data" :> (Description "Return the transactions within the block, including CBOR representations." :> (Capture "hash_or_number" (Either Integer BlockHash) :> ("txs" :> ("cbor" :> (Pagination :> (Sorting :> Get '[JSON] [TxHashCBOR])))))))
+ Blockfrost.Client: [_blockTxs] :: BlocksAPI route -> route :- (Summary "Block transactions" :> (Description "Return the transactions within the block." :> (Capture "hash_or_number" (Either Integer BlockHash) :> ("txs" :> (Pagination :> (Sorting :> Get '[JSON] [TxHash]))))))
+ Blockfrost.Client: [_block] :: BlocksAPI route -> route :- (Summary "Latest block transactions" :> (Description "Return the transactions within the latest block." :> (Capture "hash_or_number" (Either Integer BlockHash) :> Get '[JSON] Block)))
+ Blockfrost.Client: [_blocks] :: CardanoAPI route -> route :- ("blocks" :> (Tag "Cardano \187 Blocks" :> ToServantApi BlocksAPI))
+ Blockfrost.Client: [_cardano] :: BlockfrostV0API route -> route :- ToServantApi CardanoAPI
+ Blockfrost.Client: [_common] :: BlockfrostV0API route -> route :- ToServantApi CommonAPI
+ Blockfrost.Client: [_deriveAddr] :: UtilsAPI route -> route :- (Summary "Derive an address" :> (Description "Derive Shelley address from an xpub." :> ("addresses" :> ("xpub" :> (Capture "xpub" Text :> (Capture "role" Integer :> (Capture "index" Integer :> Get '[JSON] DerivedAddress)))))))
+ Blockfrost.Client: [_drepDelegators] :: GovernanceAPI route -> route :- (Summary "DRep delegators" :> (Description "List of Drep delegators." :> ("dreps" :> (Capture "drep_id" DRepId :> ("delegators" :> (Pagination :> (Sorting :> Get '[JSON] [DRepDelegator])))))))
+ Blockfrost.Client: [_drepMetadata] :: GovernanceAPI route -> route :- (Summary "DRep metadata" :> (Description "DRep metadata information." :> ("dreps" :> (Capture "drep_id" DRepId :> ("metadata" :> Get '[JSON] DRepMeta)))))
+ Blockfrost.Client: [_drepUpdates] :: GovernanceAPI route -> route :- (Summary "DRep updates" :> (Description "List of certificate updates to the DRep." :> ("dreps" :> (Capture "drep_id" DRepId :> ("updates" :> (Pagination :> (Sorting :> Get '[JSON] [DRepUpdate])))))))
+ Blockfrost.Client: [_drepVotes] :: GovernanceAPI route -> route :- (Summary "DRep votes" :> (Description "History of DReps votes." :> ("dreps" :> (Capture "drep_id" DRepId :> ("votes" :> (Pagination :> (Sorting :> Get '[JSON] [DRepVote])))))))
+ Blockfrost.Client: [_drep] :: GovernanceAPI route -> route :- (Summary "Specific DRep" :> (Description "DRep information." :> ("dreps" :> (Capture "drep_id" DRepId :> Get '[JSON] DRepInfo))))
+ Blockfrost.Client: [_dreps] :: GovernanceAPI route -> route :- (Summary "Delegate Representatives (DReps)" :> (Description "Return the information about Delegate Representatives (DReps)." :> ("dreps" :> (Pagination :> (Sorting :> Get '[JSON] [DRep])))))
+ Blockfrost.Client: [_epochs] :: CardanoAPI route -> route :- ("epochs" :> (Tag "Cardano \187 Epochs" :> ToServantApi EpochsAPI))
+ Blockfrost.Client: [_gateway] :: IPFSAPI route -> route :- (Summary "Relay to an IPFS gateway" :> (Description "Retrieve an object from the IFPS gateway. (Useful if you do not want to rely on a public gateway, such as ``ipfs.blockfrost.dev`)." :> (Tag "IPFS \187 Gateway" :> ("gateway" :> (Capture "IPFS_path" Text :> Get '[PlainText, OctetStream] IPFSData)))))
+ Blockfrost.Client: [_genesis] :: LedgerAPI route -> route :- (Summary "Blockchain genesis" :> (Description "Return the information about blockchain genesis." :> Get '[JSON] Genesis))
+ Blockfrost.Client: [_getClock] :: CommonAPI route -> route :- (Summary "Current backend time" :> (Description "This endpoint provides the current UNIX time. Your application might use this to verify if the client clock is not out of sync." :> (Tag "Health" :> ("health" :> ("clock" :> Get '[JSON] ServerTime)))))
+ Blockfrost.Client: [_getEpochBlocksByPool] :: EpochsAPI route -> route :- (Summary "Block distribution by pool" :> (Description "Return the block minted for the epoch specified by stake pool." :> (Capture "epoch_number" Epoch :> ("blocks" :> (Capture "pool_id" PoolId :> (Pagination :> (Sorting :> Get '[JSON] [BlockHash])))))))
+ Blockfrost.Client: [_getEpochBlocks] :: EpochsAPI route -> route :- (Summary "Block distribution" :> (Description "Return the blocks minted for the epoch specified." :> (Capture "epoch_number" Epoch :> ("blocks" :> (Pagination :> (Sorting :> Get '[JSON] [BlockHash]))))))
+ Blockfrost.Client: [_getEpochProtocolParams] :: EpochsAPI route -> route :- (Summary "Protocol parameters" :> (Description "Return the protocol parameters for the specified epoch." :> (Capture "epoch_number" Epoch :> ("parameters" :> Get '[JSON] ProtocolParams))))
+ Blockfrost.Client: [_getEpochStakeByPool] :: EpochsAPI route -> route :- (Summary "Stake distribution by pool" :> (Description "Return the active stake distribution for the epoch specified by stake pool." :> (Capture "epoch_number" Epoch :> ("stakes" :> (Capture "pool_id" PoolId :> (Pagination :> Get '[JSON] [PoolStakeDistribution]))))))
+ Blockfrost.Client: [_getEpochStake] :: EpochsAPI route -> route :- (Summary "Stake distribution" :> (Description "Return the active stake distribution for the specified epoch." :> (Capture "epoch_number" Epoch :> ("stakes" :> (Pagination :> Get '[JSON] [StakeDistribution])))))
+ Blockfrost.Client: [_getEpoch] :: EpochsAPI route -> route :- (Summary "Specific epoch" :> (Description "Return the content of the requested epoch." :> (Capture "epoch_number" Epoch :> Get '[JSON] EpochInfo)))
+ Blockfrost.Client: [_getHealth] :: CommonAPI route -> route :- (Summary "Backend health status" :> (Description "Return backend status as a boolean. Your application should handle situations when backend for the given chain is unavailable." :> (Tag "Health" :> ("health" :> Get '[JSON] Healthy))))
+ Blockfrost.Client: [_getNextEpochs] :: EpochsAPI route -> route :- (Summary "List of next epochs" :> (Description "Return the list of epochs following a specific epoch." :> (Capture "epoch_number" Epoch :> ("next" :> (Pagination :> Get '[JSON] [EpochInfo])))))
+ Blockfrost.Client: [_getPin] :: IPFSAPI route -> route :- (Summary "Get pinned object details" :> (Description "Obtain inormation about specific pinned object." :> (Tag "IPFS \187 Pins" :> ("pin" :> ("list" :> (Capture "IPFS_path" Text :> Get '[JSON] IPFSPin))))))
+ Blockfrost.Client: [_getPoolBlocks] :: PoolsAPI route -> route :- (Summary "Stake pool blocks" :> (Description "List of stake pool blocks." :> (Capture "pool_id" PoolId :> ("blocks" :> (Pagination :> (Sorting :> Get '[JSON] [BlockHash]))))))
+ Blockfrost.Client: [_getPoolDelegators] :: PoolsAPI route -> route :- (Summary "Stake pool delegators" :> (Description "List of current stake pools delegators." :> (Capture "pool_id" PoolId :> ("delegators" :> (Pagination :> (Sorting :> Get '[JSON] [PoolDelegator]))))))
+ Blockfrost.Client: [_getPoolHistory] :: PoolsAPI route -> route :- (Summary "Stake pool history" :> (Description "History of stake pool parameters over epochs." :> (Capture "pool_id" PoolId :> ("history" :> (Pagination :> (Sorting :> Get '[JSON] [PoolHistory]))))))
+ Blockfrost.Client: [_getPoolMetadata] :: PoolsAPI route -> route :- (Summary "Stake pool metadata" :> (Description "Stake pool registration metadata." :> (Capture "pool_id" PoolId :> ("metadata" :> Get '[JSON] PoolMetadataResponse))))
+ Blockfrost.Client: [_getPoolRelays] :: PoolsAPI route -> route :- (Summary "Stake pool relays" :> (Description "Relays of a stake pool." :> (Capture "pool_id" PoolId :> ("relays" :> Get '[JSON] [PoolRelay]))))
+ Blockfrost.Client: [_getPoolUpdates] :: PoolsAPI route -> route :- (Summary "Stake pool updates" :> (Description "List of certificate updates to the stake pool." :> (Capture "pool_id" PoolId :> ("updates" :> (Pagination :> (Sorting :> Get '[JSON] [PoolUpdate]))))))
+ Blockfrost.Client: [_getPool] :: PoolsAPI route -> route :- (Summary "Specific stake pool" :> (Description "Pool information." :> (Capture "pool_id" PoolId :> Get '[JSON] PoolInfo)))
+ Blockfrost.Client: [_getPreviousEpochs] :: EpochsAPI route -> route :- (Summary "List of previous epochs" :> (Description "Return the list of epochs preceding a specific epoch." :> (Capture "epoch_number" Epoch :> ("previous" :> (Pagination :> Get '[JSON] [EpochInfo])))))
+ Blockfrost.Client: [_getRoot] :: CommonAPI route -> route :- (Summary "Root endpoint" :> (Description "Root endpoint has no other function than to point end users to documentation." :> (Tag "Health" :> Get '[JSON] URLVersion)))
+ Blockfrost.Client: [_getScriptCBOR] :: ScriptsAPI route -> route :- (Summary "Script CBOR" :> (Description "CBOR representation of a `plutus` script" :> (Capture "script_hash" ScriptHash :> ("cbor" :> Get '[JSON] ScriptCBOR))))
+ Blockfrost.Client: [_getScriptDatumCBOR] :: ScriptsAPI route -> route :- (Summary "Datum CBOR value" :> (Description "Query CBOR serialised datum by its hash" :> ("datum" :> (Capture "datum_hash" DatumHash :> ("cbor" :> Get '[JSON] ScriptDatumCBOR)))))
+ Blockfrost.Client: [_getScriptDatum] :: ScriptsAPI route -> route :- (Summary "Datum value" :> (Description "Query JSON value of a datum by its hash" :> ("datum" :> (Capture "datum_hash" DatumHash :> Get '[JSON] ScriptDatum))))
+ Blockfrost.Client: [_getScriptJSON] :: ScriptsAPI route -> route :- (Summary "Script JSON" :> (Description "JSON representation of a `timelock` script" :> (Capture "script_hash" ScriptHash :> ("json" :> Get '[JSON] ScriptJSON))))
+ Blockfrost.Client: [_getScriptRedeemers] :: ScriptsAPI route -> route :- (Summary "Redeemers of a specific script" :> (Description "List of redeemers of a specific script." :> (Capture "script_hash" ScriptHash :> (Pagination :> (Sorting :> ("redeemers" :> Get '[JSON] [ScriptRedeemer]))))))
+ Blockfrost.Client: [_getScript] :: ScriptsAPI route -> route :- (Summary "Specific scripts" :> (Description "Information about a specific script." :> (Capture "script_hash" ScriptHash :> Get '[JSON] Script)))
+ Blockfrost.Client: [_governance] :: CardanoAPI route -> route :- ("governance" :> (Tag "Cardano \187 Governance" :> ToServantApi GovernanceAPI))
+ Blockfrost.Client: [_ipfs] :: BlockfrostV0API route -> route :- ("ipfs" :> ToServantApi IPFSAPI)
+ Blockfrost.Client: [_latestEpochProtocolParams] :: EpochsAPI route -> route :- (Summary "Latest epoch protocol parameters" :> (Description "Return the protocol parameters for the latest epoch." :> ("latest" :> ("parameters" :> Get '[JSON] ProtocolParams))))
+ Blockfrost.Client: [_latestEpoch] :: EpochsAPI route -> route :- (Summary "Latest epoch" :> (Description "Return the information about the latest, therefore current, epoch." :> ("latest" :> Get '[JSON] EpochInfo)))
+ Blockfrost.Client: [_latestTxsCBOR] :: BlocksAPI route -> route :- (Summary "Latest transactions with CBOR data" :> (Description "Return the transactions within the latest block, including CBOR representations." :> ("latest" :> ("txs" :> ("cbor" :> (Pagination :> (Sorting :> Get '[JSON] [TxHashCBOR])))))))
+ Blockfrost.Client: [_latestTxs] :: BlocksAPI route -> route :- (Summary "Latest block transactions" :> (Description "Return the transactions within the latest block." :> ("latest" :> ("txs" :> (Pagination :> (Sorting :> Get '[JSON] [TxHash]))))))
+ Blockfrost.Client: [_latest] :: BlocksAPI route -> route :- (Summary "Latest block" :> (Description "Return the latest block available to the backends, also known as the tip of the blockchain." :> ("latest" :> Get '[JSON] Block)))
+ Blockfrost.Client: [_ledger] :: CardanoAPI route -> route :- ("genesis" :> (Tag "Cardano \187 Ledger" :> ToServantApi LedgerAPI))
+ Blockfrost.Client: [_listAddressTickers] :: NutLinkAPI route -> route :- (Summary "List tickers for a specific metadata oracle" :> (Description "List tickers for a specific metadata oracle" :> (Capture "address" Address :> ("tickers" :> (Pagination :> (Sorting :> Get '[JSON] [NutlinkAddressTicker]))))))
+ Blockfrost.Client: [_listAssetsPolicy] :: AssetsAPI route -> route :- (Summary "Assets of a specific policy" :> (Description "List of asset minted under a specific policy." :> ("policy" :> (Capture "policy_id" PolicyId :> (Pagination :> (Sorting :> Get '[JSON] [AssetInfo]))))))
+ Blockfrost.Client: [_listAssets] :: AssetsAPI route -> route :- (Summary "Assets" :> (Description "List of assets." :> (Pagination :> (Sorting :> Get '[JSON] [AssetInfo]))))
+ Blockfrost.Client: [_listPins] :: IPFSAPI route -> route :- (Summary "List pinned objects" :> (Description "List objects pinned to local storage." :> (Tag "IPFS \187 Pins" :> ("pin" :> ("list" :> (Pagination :> (Sorting :> Get '[JSON] [IPFSPin])))))))
+ Blockfrost.Client: [_listPoolsExtended] :: PoolsAPI route -> route :- (Summary "List of stake pools with additional information" :> (Description "List of registered stake pools with additional information." :> ("extended" :> (Pagination :> (Sorting :> Get '[JSON] [Pool])))))
+ Blockfrost.Client: [_listPools] :: PoolsAPI route -> route :- (Summary "List of stake pools" :> (Description "List of registered stake pools." :> (Pagination :> (Sorting :> Get '[JSON] [PoolId]))))
+ Blockfrost.Client: [_listRetiredPools] :: PoolsAPI route -> route :- (Summary "List of retired stake pools" :> (Description "List of already retired stake pools." :> ("retired" :> (Pagination :> (Sorting :> Get '[JSON] [PoolEpoch])))))
+ Blockfrost.Client: [_listRetiringPools] :: PoolsAPI route -> route :- (Summary "List of retiring stake pools" :> (Description "List of stake pools retiring in the upcoming epochs" :> ("retiring" :> (Pagination :> (Sorting :> Get '[JSON] [PoolEpoch])))))
+ Blockfrost.Client: [_listScripts] :: ScriptsAPI route -> route :- (Summary "Scripts" :> (Description "List of scripts." :> (Pagination :> (Sorting :> Get '[JSON] ScriptHashList))))
+ Blockfrost.Client: [_mempoolTransactions] :: MempoolAPI route -> route :- (Summary "Transactions in Mempool." :> (Description "Tx hash list of all transactions that are currently stored in the mempool." :> (Pagination :> (Sorting :> Get '[JSON] [TxHashObject]))))
+ Blockfrost.Client: [_mempool] :: CardanoAPI route -> route :- ("mempool" :> (Tag "Cardano \187 Mempool" :> ToServantApi MempoolAPI))
+ Blockfrost.Client: [_metadata] :: CardanoAPI route -> route :- ("metadata" :> (Tag "Cardano \187 Metadata" :> ToServantApi MetadataAPI))
+ Blockfrost.Client: [_metricsEndpoints] :: CommonAPI route -> route :- (Summary "Blockfrost endpoint usage metrics" :> (Description "History of your Blockfrost usage metrics per endpoint in the past 30 days." :> (Tag "Metrics" :> ("metrics" :> ("endpoints" :> Get '[JSON] [(Text, Metric)])))))
+ Blockfrost.Client: [_metrics] :: CommonAPI route -> route :- (Summary "Blockfrost usage metrics" :> (Description "History of your Blockfrost usage metrics in the past 30 days." :> (Tag "Metrics" :> ("metrics" :> Get '[JSON] [Metric]))))
+ Blockfrost.Client: [_networkEras] :: NetworkAPI route -> route :- (Summary "Query summary of blockchain eras" :> (Description "Returns start and end of each era along with parameters that can vary between hard forks." :> ("eras" :> Get '[JSON] [NetworkEraSummary])))
+ Blockfrost.Client: [_networkInfo] :: NetworkAPI route -> route :- (Summary "Network information" :> (Description "Return detailed network information." :> Get '[JSON] Network))
+ Blockfrost.Client: [_network] :: CardanoAPI route -> route :- ("network" :> (Tag "Cardano \187 Network" :> ToServantApi NetworkAPI))
+ Blockfrost.Client: [_nutLink] :: BlockfrostV0API route -> route :- ("nutlink" :> (Tag "Nut.link" :> ToServantApi NutLinkAPI))
+ Blockfrost.Client: [_paramProposal] :: GovernanceAPI route -> route :- (Summary "Specific parameters proposal" :> (Description "Parameter proposal details." :> ("proposals" :> (Capture "hash" TxHash :> (Capture "cert_index" Integer :> ("parameters" :> Get '[JSON] ParamProposal))))))
+ Blockfrost.Client: [_pin] :: IPFSAPI route -> route :- (Summary "Pin an object" :> (Description "Pinned objects are counted in your user storage quota." :> (Tag "IPFS \187 Pins" :> ("pin" :> ("add" :> (Capture "IPFS_path" Text :> Post '[JSON] IPFSPinChange))))))
+ Blockfrost.Client: [_pools] :: CardanoAPI route -> route :- ("pools" :> (Tag "Cardano \187 Pools" :> ToServantApi PoolsAPI))
+ Blockfrost.Client: [_proposalMeta] :: GovernanceAPI route -> route :- (Summary "Specific proposal metadata" :> (Description "Proposal metadata information." :> ("proposals" :> (Capture "hash" TxHash :> (Capture "cert_index" Integer :> ("metadata" :> Get '[JSON] ProposalMeta))))))
+ Blockfrost.Client: [_proposalVotes] :: GovernanceAPI route -> route :- (Summary "Proposal votes" :> (Description "History of proposal votes." :> ("proposals" :> (Capture "hash" TxHash :> (Capture "cert_index" Integer :> ("votes" :> (Pagination :> (Sorting :> Get '[JSON] [ProposalVote]))))))))
+ Blockfrost.Client: [_proposal] :: GovernanceAPI route -> route :- (Summary "Specific proposal" :> (Description "Proposal details." :> ("proposals" :> (Capture "hash" TxHash :> (Capture "cert_index" Integer :> Get '[JSON] ProposalInfo)))))
+ Blockfrost.Client: [_proposals] :: GovernanceAPI route -> route :- (Summary "Proposals" :> (Description "List of proposals." :> ("proposals" :> (Pagination :> (Sorting :> Get '[JSON] [Proposal])))))
+ Blockfrost.Client: [_removePin] :: IPFSAPI route -> route :- (Summary "Remove pinned object from local storage" :> (Description "Remove pinned object from local storage" :> (Tag "IPFS \187 Pins" :> ("pin" :> ("remove" :> (Capture "IPFS_path" Text :> Post '[JSON] IPFSPinChange))))))
+ Blockfrost.Client: [_scripts] :: CardanoAPI route -> route :- ("scripts" :> (Tag "Cardano \187 Scripts" :> ToServantApi ScriptsAPI))
+ Blockfrost.Client: [_specificAddress] :: MempoolAPI route -> route :- (Summary "Transactions involving an address in mempool." :> (Description "List of transactions in the mempool that involves a specific address." :> ("addresses" :> (Capture "address" Address :> (Pagination :> (Sorting :> Get '[JSON] [TxHashObject]))))))
+ Blockfrost.Client: [_specificTransaction] :: MempoolAPI route -> route :- (Summary "Transaction in mempoool." :> (Description "Content of a specific transaction in the mempool." :> (Capture "hash" TxHash :> Get '[JSON] MempoolTransaction)))
+ Blockfrost.Client: [_tickers] :: NutLinkAPI route -> route :- (Summary "List of records of a specific ticker" :> (Description "List of records of a specific ticker" :> ("tickers" :> (Capture "ticker" Text :> (Pagination :> (Sorting :> Get '[JSON] [(Address, NutlinkTicker)]))))))
+ Blockfrost.Client: [_transactions] :: CardanoAPI route -> route :- ("txs" :> (Tag "Cardano \187 Transactions" :> ToServantApi TransactionsAPI))
+ Blockfrost.Client: [_txCBOR] :: TransactionsAPI route -> route :- (Summary "Transaction in CBOR" :> (Description "Obtain the CBOR serialized transaction." :> (Capture "hash" TxHash :> ("cbor" :> Get '[JSON] TransactionCBOR))))
+ Blockfrost.Client: [_txDelegations] :: TransactionsAPI route -> route :- (Summary "Transaction delegation certificates" :> (Description "Obtain information about delegation certificates of a specific transaction." :> (Capture "hash" TxHash :> ("delegations" :> Get '[JSON] [TransactionDelegation]))))
+ Blockfrost.Client: [_txEvaluateUTXOs] :: UtilsAPI route -> route :- (Summary "Submit a transaction for execution units evaluation (additional UTXO set)" :> (Description "Submit a JSON payload with transaction CBOR and additional UTXO set to evaluate how much execution units it requires." :> ("txs" :> ("evaluate" :> ("utxos" :> (ReqBody '[JSON] TxEvalInput :> Post '[JSON] TxEval))))))
+ Blockfrost.Client: [_txEvaluate] :: UtilsAPI route -> route :- (Summary "Submit a transaction for execution units evaluation" :> (Description "Submit an already serialized transaction to evaluate how much execution units it requires." :> ("txs" :> ("evaluate" :> (ReqBody '[CBOR] CBORString :> Post '[JSON] TxEval)))))
+ Blockfrost.Client: [_txMetadataByLabelCBOR] :: MetadataAPI route -> route :- (Summary "Transaction metadata content in CBOR" :> (Description "Transaction metadata per label." :> ("txs" :> ("labels" :> (Capture "label" Text :> ("cbor" :> (Pagination :> (Sorting :> Get '[JSON] [TxMetaCBOR]))))))))
+ Blockfrost.Client: [_txMetadataByLabelJSON] :: MetadataAPI route -> route :- (Summary "Transaction metadata content in JSON" :> (Description "Transaction metadata per label." :> ("txs" :> ("labels" :> (Capture "label" Text :> (Pagination :> (Sorting :> Get '[JSON] [TxMetaJSON])))))))
+ Blockfrost.Client: [_txMetadataCBOR] :: TransactionsAPI route -> route :- (Summary "Transaction metadata in CBOR" :> (Description "Obtain the transaction metadata in CBOR." :> (Capture "hash" TxHash :> ("metadata" :> ("cbor" :> Get '[JSON] [TransactionMetaCBOR])))))
+ Blockfrost.Client: [_txMetadataJSON] :: TransactionsAPI route -> route :- (Summary "Transaction metadata" :> (Description "Obtain the transaction metadata." :> (Capture "hash" TxHash :> ("metadata" :> Get '[JSON] [TransactionMetaJSON]))))
+ Blockfrost.Client: [_txMetadataLabels] :: MetadataAPI route -> route :- (Summary "Transaction metadata labels" :> (Description "List of all used transaction metadata labels." :> ("txs" :> ("labels" :> (Pagination :> (Sorting :> Get '[JSON] [TxMeta]))))))
+ Blockfrost.Client: [_txMirs] :: TransactionsAPI route -> route :- (Summary "Transaction MIRs" :> (Description "Obtain information about Move Instantaneous Rewards (MIRs) of a specific transaction." :> (Capture "hash" TxHash :> ("mirs" :> Get '[JSON] [TransactionMir]))))
+ Blockfrost.Client: [_txPoolRetiring] :: TransactionsAPI route -> route :- (Summary "Transaction stake pool retirement certificates" :> (Description "Obtain information about stake pool retirements within a specific transaction." :> (Capture "hash" TxHash :> ("pool_retires" :> Get '[JSON] [TransactionPoolRetiring]))))
+ Blockfrost.Client: [_txPoolUpdates] :: TransactionsAPI route -> route :- (Summary "Transaction stake pool registration and update certificates" :> (Description "Obtain information about stake pool registration and update certificates of a specific transaction." :> (Capture "hash" TxHash :> ("pool_updates" :> Get '[JSON] [TransactionPoolUpdate]))))
+ Blockfrost.Client: [_txRedeemers] :: TransactionsAPI route -> route :- (Summary "Transaction redeemers" :> (Description "Obtain the transaction redeemers." :> (Capture "hash" TxHash :> ("redeemers" :> Get '[JSON] [TransactionRedeemer]))))
+ Blockfrost.Client: [_txStakes] :: TransactionsAPI route -> route :- (Summary "Transaction stake addresses certificates " :> (Description "Obtain information about (de)registration of stake addresses within a transaction." :> (Capture "hash" TxHash :> ("stakes" :> Get '[JSON] [TransactionStake]))))
+ Blockfrost.Client: [_txSubmit] :: CardanoAPI route -> route :- (Summary "Submit a transaction" :> (Description "Submit an already serialized transaction to the network." :> (Tag "Cardano \187 Transactions" :> ("tx" :> ("submit" :> (ReqBody '[CBOR] CBORString :> Post '[JSON] TxHash))))))
+ Blockfrost.Client: [_txUtxos] :: TransactionsAPI route -> route :- (Summary "Transaction UTXOs" :> (Description "Return the inputs and UTXOs of the specific transaction." :> (Capture "hash" TxHash :> ("utxos" :> Get '[JSON] TransactionUtxos))))
+ Blockfrost.Client: [_txWithdrawals] :: TransactionsAPI route -> route :- (Summary "Transaction withdrawal" :> (Description "Obtain information about withdrawals of a specific transaction." :> (Capture "hash" TxHash :> ("withdrawals" :> Get '[JSON] [TransactionWithdrawal]))))
+ Blockfrost.Client: [_tx] :: TransactionsAPI route -> route :- (Summary "Specific transaction" :> (Description "Return content of the requested transaction." :> (Capture "hash" TxHash :> Get '[JSON] Transaction)))
+ Blockfrost.Client: [_utils] :: CardanoAPI route -> route :- ("utils" :> (Tag "Cardano \187 Utilities" :> ToServantApi UtilsAPI))
+ Blockfrost.Client: [_withdrawalProposal] :: GovernanceAPI route -> route :- (Summary "Specific withdrawals proposal" :> (Description "Withdrawals proposal details." :> ("proposals" :> (Capture "hash" TxHash :> (Capture "cert_index" Integer :> ("withdrawals" :> Get '[JSON] [WithdrawalProposal]))))))
+ Blockfrost.Client: [formFileName] :: Form -> Text
+ Blockfrost.Client: [formFilePath] :: Form -> FilePath
+ Blockfrost.Client: [projectEnv] :: Project -> Env
+ Blockfrost.Client: [projectId] :: Project -> Text
+ Blockfrost.Client: api :: Proxy (ToServantApi BlockfrostAPI)
+ Blockfrost.Client: api0 :: Proxy (ToServantApi BlockfrostV0API)
+ Blockfrost.Client: data AccountsAPI route
+ Blockfrost.Client: data AddressesAPI route
+ Blockfrost.Client: data AssetsAPI route
+ Blockfrost.Client: data BlockfrostV0API route
+ Blockfrost.Client: data BlocksAPI route
+ Blockfrost.Client: data CardanoAPI route
+ Blockfrost.Client: data CommonAPI route
+ Blockfrost.Client: data EpochsAPI route
+ Blockfrost.Client: data Form
+ Blockfrost.Client: data GovernanceAPI route
+ Blockfrost.Client: data IPFSAPI route
+ Blockfrost.Client: data LedgerAPI route
+ Blockfrost.Client: data MempoolAPI route
+ Blockfrost.Client: data MetadataAPI route
+ Blockfrost.Client: data NetworkAPI route
+ Blockfrost.Client: data NutLinkAPI route
+ Blockfrost.Client: data PoolsAPI route
+ Blockfrost.Client: data Project
+ Blockfrost.Client: data ScriptsAPI route
+ Blockfrost.Client: data TransactionsAPI route
+ Blockfrost.Client: data UtilsAPI route
+ Blockfrost.Client: getDRep :: MonadBlockfrost m => DRepId -> m DRepInfo
+ Blockfrost.Client: getDRepDelegators :: MonadBlockfrost m => DRepId -> m [DRepDelegator]
+ Blockfrost.Client: getDRepDelegators' :: MonadBlockfrost m => DRepId -> Paged -> SortOrder -> m [DRepDelegator]
+ Blockfrost.Client: getDRepMetadata :: MonadBlockfrost m => DRepId -> m DRepMeta
+ Blockfrost.Client: getDRepUpdates :: MonadBlockfrost m => DRepId -> m [DRepUpdate]
+ Blockfrost.Client: getDRepUpdates' :: MonadBlockfrost m => DRepId -> Paged -> SortOrder -> m [DRepUpdate]
+ Blockfrost.Client: getDRepVotes :: MonadBlockfrost m => DRepId -> m [DRepVote]
+ Blockfrost.Client: getDRepVotes' :: MonadBlockfrost m => DRepId -> Paged -> SortOrder -> m [DRepVote]
+ Blockfrost.Client: getDReps :: MonadBlockfrost m => m [DRep]
+ Blockfrost.Client: getDReps' :: MonadBlockfrost m => Paged -> SortOrder -> m [DRep]
+ Blockfrost.Client: getParamProposal :: MonadBlockfrost m => TxHash -> Integer -> m ParamProposal
+ Blockfrost.Client: getProposal :: MonadBlockfrost m => TxHash -> Integer -> m ProposalInfo
+ Blockfrost.Client: getProposalMetadata :: MonadBlockfrost m => TxHash -> Integer -> m ProposalMeta
+ Blockfrost.Client: getProposalVotes :: MonadBlockfrost m => TxHash -> Integer -> m [ProposalVote]
+ Blockfrost.Client: getProposalVotes' :: MonadBlockfrost m => TxHash -> Integer -> Paged -> SortOrder -> m [ProposalVote]
+ Blockfrost.Client: getProposals :: MonadBlockfrost m => m [Proposal]
+ Blockfrost.Client: getProposals' :: MonadBlockfrost m => Paged -> SortOrder -> m [Proposal]
+ Blockfrost.Client: getWithdrawalProposal :: MonadBlockfrost m => TxHash -> Integer -> m [WithdrawalProposal]
+ Blockfrost.Client: newtype BlockfrostAPI route
+ Blockfrost.Client: type BlockfrostAuth = ProjectAuth '[APIKeyInHeader "project_id"] Project
+ Blockfrost.Client: type ServantBlockfrostAPI = ToServantApi BlockfrostAPI
+ Blockfrost.Client.Cardano.Governance: getDRep :: MonadBlockfrost m => DRepId -> m DRepInfo
+ Blockfrost.Client.Cardano.Governance: getDRepDelegators :: MonadBlockfrost m => DRepId -> m [DRepDelegator]
+ Blockfrost.Client.Cardano.Governance: getDRepDelegators' :: MonadBlockfrost m => DRepId -> Paged -> SortOrder -> m [DRepDelegator]
+ Blockfrost.Client.Cardano.Governance: getDRepMetadata :: MonadBlockfrost m => DRepId -> m DRepMeta
+ Blockfrost.Client.Cardano.Governance: getDRepUpdates :: MonadBlockfrost m => DRepId -> m [DRepUpdate]
+ Blockfrost.Client.Cardano.Governance: getDRepUpdates' :: MonadBlockfrost m => DRepId -> Paged -> SortOrder -> m [DRepUpdate]
+ Blockfrost.Client.Cardano.Governance: getDRepVotes :: MonadBlockfrost m => DRepId -> m [DRepVote]
+ Blockfrost.Client.Cardano.Governance: getDRepVotes' :: MonadBlockfrost m => DRepId -> Paged -> SortOrder -> m [DRepVote]
+ Blockfrost.Client.Cardano.Governance: getDReps :: MonadBlockfrost m => m [DRep]
+ Blockfrost.Client.Cardano.Governance: getDReps' :: MonadBlockfrost m => Paged -> SortOrder -> m [DRep]
+ Blockfrost.Client.Cardano.Governance: getParamProposal :: MonadBlockfrost m => TxHash -> Integer -> m ParamProposal
+ Blockfrost.Client.Cardano.Governance: getProposal :: MonadBlockfrost m => TxHash -> Integer -> m ProposalInfo
+ Blockfrost.Client.Cardano.Governance: getProposalMetadata :: MonadBlockfrost m => TxHash -> Integer -> m ProposalMeta
+ Blockfrost.Client.Cardano.Governance: getProposalVotes :: MonadBlockfrost m => TxHash -> Integer -> m [ProposalVote]
+ Blockfrost.Client.Cardano.Governance: getProposalVotes' :: MonadBlockfrost m => TxHash -> Integer -> Paged -> SortOrder -> m [ProposalVote]
+ Blockfrost.Client.Cardano.Governance: getProposals :: MonadBlockfrost m => m [Proposal]
+ Blockfrost.Client.Cardano.Governance: getProposals' :: MonadBlockfrost m => Paged -> SortOrder -> m [Proposal]
+ Blockfrost.Client.Cardano.Governance: getWithdrawalProposal :: MonadBlockfrost m => TxHash -> Integer -> m [WithdrawalProposal]
+ Blockfrost.Client.Types: [countPerPage] :: Paged -> Int
+ Blockfrost.Client.Types: [pageNumber] :: Paged -> Int
+ Blockfrost.Client.Types: [projectEnv] :: Project -> Env
+ Blockfrost.Client.Types: [projectId] :: Project -> Text
+ Blockfrost.Client.Types: [unBlockfrostClientT] :: BlockfrostClientT (m :: Type -> Type) a -> ExceptT BlockfrostError (ReaderT ClientConfig m) a
- Blockfrost.Client.Types: BlockfrostClientT :: ExceptT BlockfrostError (ReaderT ClientConfig m) a -> BlockfrostClientT m a
+ Blockfrost.Client.Types: BlockfrostClientT :: ExceptT BlockfrostError (ReaderT ClientConfig m) a -> BlockfrostClientT (m :: Type -> Type) a
- Blockfrost.Client.Types: api0Client :: MonadBlockfrost m => Project -> BlockfrostV0API (AsClientT m)
+ Blockfrost.Client.Types: api0Client :: forall (m :: Type -> Type). MonadBlockfrost m => Project -> BlockfrostV0API (AsClientT m)
- Blockfrost.Client.Types: apiClient :: MonadBlockfrost m => BlockfrostAPI (AsClientT m)
+ Blockfrost.Client.Types: apiClient :: forall (m :: Type -> Type). MonadBlockfrost m => BlockfrostAPI (AsClientT m)
- Blockfrost.Client.Types: cardanoClient :: MonadBlockfrost m => Project -> CardanoAPI (AsClientT m)
+ Blockfrost.Client.Types: cardanoClient :: forall (m :: Type -> Type). MonadBlockfrost m => Project -> CardanoAPI (AsClientT m)
- Blockfrost.Client.Types: class MonadIO m => MonadBlockfrost m
+ Blockfrost.Client.Types: class MonadIO m => MonadBlockfrost (m :: Type -> Type)
- Blockfrost.Client.Types: commonClient :: MonadBlockfrost m => Project -> CommonAPI (AsClientT m)
+ Blockfrost.Client.Types: commonClient :: forall (m :: Type -> Type). MonadBlockfrost m => Project -> CommonAPI (AsClientT m)
- Blockfrost.Client.Types: data () => AsClientT (m :: Type -> Type)
+ Blockfrost.Client.Types: data AsClientT (m :: Type -> Type)
- Blockfrost.Client.Types: data () => BlockfrostError
+ Blockfrost.Client.Types: data BlockfrostError
- Blockfrost.Client.Types: data () => Paged
+ Blockfrost.Client.Types: data Paged
- Blockfrost.Client.Types: data () => Project
+ Blockfrost.Client.Types: data Project
- Blockfrost.Client.Types: data () => SortOrder
+ Blockfrost.Client.Types: data SortOrder
- Blockfrost.Client.Types: ipfsClient :: MonadBlockfrost m => Project -> IPFSAPI (AsClientT m)
+ Blockfrost.Client.Types: ipfsClient :: forall (m :: Type -> Type). MonadBlockfrost m => Project -> IPFSAPI (AsClientT m)
- Blockfrost.Client.Types: newtype BlockfrostClientT m a
+ Blockfrost.Client.Types: newtype BlockfrostClientT (m :: Type -> Type) a
- Blockfrost.Client.Types: nutLinkClient :: MonadBlockfrost m => Project -> NutLinkAPI (AsClientT m)
+ Blockfrost.Client.Types: nutLinkClient :: forall (m :: Type -> Type). MonadBlockfrost m => Project -> NutLinkAPI (AsClientT m)
Files
- CHANGELOG.md +6/−0
- blockfrost-client.cabal +3/−2
- src/Blockfrost/Client.hs +20/−0
- src/Blockfrost/Client/Cardano/Governance.hs +167/−0
CHANGELOG.md view
@@ -1,3 +1,9 @@+# Version [0.10.0.0](https://github.com/blockfrost/blockfrost-haskell/compare/client-0.9.2.0...client-0.10.0.0) (2025-06-03)++* Additions+ * Governance support [#77](https://github.com/blockfrost/blockfrost-haskell/pull/77)+ * `AccountInfo` extended with `drepId` field [#77](https://github.com/blockfrost/blockfrost-haskell/pull/77)+ # Version [0.9.2.0](https://github.com/blockfrost/blockfrost-haskell/compare/client-0.9.1.0...client-0.9.2.0) (2025-04-07) * Additions
blockfrost-client.cabal view
@@ -1,6 +1,6 @@ cabal-version: 2.2 name: blockfrost-client-version: 0.9.2.0+version: 0.10.0.0 synopsis: blockfrost.io basic client description: Simple Blockfrost clients for use with transformers or mtl homepage: https://github.com/blockfrost/blockfrost-haskell@@ -57,6 +57,7 @@ , Blockfrost.Client.Cardano.Assets , Blockfrost.Client.Cardano.Blocks , Blockfrost.Client.Cardano.Epochs+ , Blockfrost.Client.Cardano.Governance , Blockfrost.Client.Cardano.Ledger , Blockfrost.Client.Cardano.Mempool , Blockfrost.Client.Cardano.Metadata@@ -68,7 +69,7 @@ , Blockfrost.Client.IPFS , Blockfrost.Client.NutLink build-depends: base >= 4.7 && < 5- , blockfrost-api >= 0.12.2+ , blockfrost-api >= 0.13 , blockfrost-client-core ^>= 0.6 , bytestring , directory
src/Blockfrost/Client.hs view
@@ -92,6 +92,25 @@ , getEpochBlocksByPool , getEpochBlocksByPool' , getEpochProtocolParams+ -- Cardano - Governance+ , getDReps+ , getDReps'+ , getDRep+ , getDRepDelegators+ , getDRepDelegators'+ , getDRepMetadata+ , getDRepUpdates+ , getDRepUpdates'+ , getDRepVotes+ , getDRepVotes'+ , getProposals+ , getProposals'+ , getProposal+ , getParamProposal+ , getWithdrawalProposal+ , getProposalVotes+ , getProposalVotes'+ , getProposalMetadata -- Cardano - Ledger , getLedgerGenesis -- Cardano - Metadata@@ -185,6 +204,7 @@ import Blockfrost.Client.Cardano.Assets import Blockfrost.Client.Cardano.Blocks import Blockfrost.Client.Cardano.Epochs+import Blockfrost.Client.Cardano.Governance import Blockfrost.Client.Cardano.Ledger import Blockfrost.Client.Cardano.Mempool import Blockfrost.Client.Cardano.Metadata
+ src/Blockfrost/Client/Cardano/Governance.hs view
@@ -0,0 +1,167 @@+-- | Governance queries++module Blockfrost.Client.Cardano.Governance+ ( getDReps+ , getDReps'+ , getDRep+ , getDRepDelegators+ , getDRepDelegators'+ , getDRepMetadata+ , getDRepUpdates+ , getDRepUpdates'+ , getDRepVotes+ , getDRepVotes'+ , getProposals+ , getProposals'+ , getProposal+ , getParamProposal+ , getWithdrawalProposal+ , getProposalVotes+ , getProposalVotes'+ , getProposalMetadata+ ) where++import Blockfrost.API+import Blockfrost.Client.Types+import Blockfrost.Types++governanceClient :: MonadBlockfrost m => Project -> GovernanceAPI (AsClientT m)+governanceClient = fromServant . _governance . cardanoClient++getDReps_ :: MonadBlockfrost m => Project -> Paged -> SortOrder -> m [DRep]+getDReps_ = _dreps . governanceClient++-- | Return the information about Delegate Representatives (DReps).+-- Allows custom paging and ordering using 'Paged' and 'SortOrder'.+getDReps' :: MonadBlockfrost m => Paged -> SortOrder -> m [DRep]+getDReps' pg s = go (\p -> getDReps_ p pg s)++-- | Return the information about Delegate Representatives (DReps).+--+-- Queries 100 entries. To query all entries use 'Blockfrost.Client.Core.allPages'+-- with principled variant of this function (suffixed with @'@)+-- that accepts 'Paged' argument.+getDReps :: MonadBlockfrost m => m [DRep]+getDReps = getDReps' def def++getDRep_ :: MonadBlockfrost m => Project -> DRepId -> m DRepInfo+getDRep_ = _drep . governanceClient++-- | Return the information about specific Delegate Representative (DRep).+getDRep :: MonadBlockfrost m => DRepId -> m DRepInfo+getDRep d = go (`getDRep_` d)++getDRepDelegators_ :: MonadBlockfrost m => Project -> DRepId -> Paged -> SortOrder -> m [DRepDelegator]+getDRepDelegators_ = _drepDelegators . governanceClient++-- | Get a list of DRep delegators+-- Allows custom paging and ordering using 'Paged' and 'SortOrder'.+getDRepDelegators' :: MonadBlockfrost m => DRepId -> Paged -> SortOrder -> m [DRepDelegator]+getDRepDelegators' d pg s = go (\p -> getDRepDelegators_ p d pg s)++-- | Get a list of DRep delegators+--+-- Queries 100 entries. To query all entries use 'Blockfrost.Client.Core.allPages'+-- with principled variant of this function (suffixed with @'@)+-- that accepts 'Paged' argument.+getDRepDelegators :: MonadBlockfrost m => DRepId -> m [DRepDelegator]+getDRepDelegators d = getDRepDelegators' d def def++getDRepMetadata_ :: MonadBlockfrost m => Project -> DRepId -> m DRepMeta+getDRepMetadata_ = _drepMetadata . governanceClient++-- | Get DRep metadata information.+getDRepMetadata :: MonadBlockfrost m => DRepId -> m DRepMeta+getDRepMetadata d = go (`getDRepMetadata_` d)++getDRepUpdates_ :: MonadBlockfrost m => Project -> DRepId -> Paged -> SortOrder -> m [DRepUpdate]+getDRepUpdates_ = _drepUpdates . governanceClient++-- | Get a list of certificate updates to the DRep.+-- Allows custom paging and ordering using 'Paged' and 'SortOrder'.+getDRepUpdates' :: MonadBlockfrost m => DRepId -> Paged -> SortOrder -> m [DRepUpdate]+getDRepUpdates' d pg s = go (\p -> getDRepUpdates_ p d pg s)++-- | Get a list of certificate updates to the DRep.+--+-- Queries 100 entries. To query all entries use 'Blockfrost.Client.Core.allPages'+-- with principled variant of this function (suffixed with @'@)+-- that accepts 'Paged' argument.+getDRepUpdates :: MonadBlockfrost m => DRepId -> m [DRepUpdate]+getDRepUpdates d = getDRepUpdates' d def def++getDRepVotes_ :: MonadBlockfrost m => Project -> DRepId -> Paged -> SortOrder -> m [DRepVote]+getDRepVotes_ = _drepVotes . governanceClient++-- | Get a history of DReps votes.+-- Allows custom paging and ordering using 'Paged' and 'SortOrder'.+getDRepVotes' :: MonadBlockfrost m => DRepId -> Paged -> SortOrder -> m [DRepVote]+getDRepVotes' d pg s = go (\p -> getDRepVotes_ p d pg s)++-- | Get a history of DReps votes.+--+-- Queries 100 entries. To query all entries use 'Blockfrost.Client.Core.allPages'+-- with principled variant of this function (suffixed with @'@)+-- that accepts 'Paged' argument.+getDRepVotes :: MonadBlockfrost m => DRepId -> m [DRepVote]+getDRepVotes d = getDRepVotes' d def def++getProposals_ :: MonadBlockfrost m => Project -> Paged -> SortOrder -> m [Proposal]+getProposals_ = _proposals . governanceClient++-- | Get a history of DReps proposals.+-- Allows custom paging and ordering using 'Paged' and 'SortOrder'.+getProposals' :: MonadBlockfrost m => Paged -> SortOrder -> m [Proposal]+getProposals' pg s = go (\p -> getProposals_ p pg s)++-- | Get a history of DReps proposals.+--+-- Queries 100 entries. To query all entries use 'Blockfrost.Client.Core.allPages'+-- with principled variant of this function (suffixed with @'@)+-- that accepts 'Paged' argument.+getProposals :: MonadBlockfrost m => m [Proposal]+getProposals = getProposals' def def++getProposal_ :: MonadBlockfrost m => Project -> TxHash -> Integer -> m ProposalInfo+getProposal_ = _proposal . governanceClient++-- | Get a proposal details.+getProposal :: MonadBlockfrost m => TxHash -> Integer -> m ProposalInfo+getProposal txHash certIdx = go (\p -> getProposal_ p txHash certIdx)++getParamProposal_ :: MonadBlockfrost m => Project -> TxHash -> Integer -> m ParamProposal+getParamProposal_ = _paramProposal . governanceClient++-- | Get a parameter proposal details.+getParamProposal :: MonadBlockfrost m => TxHash -> Integer -> m ParamProposal+getParamProposal txHash certIdx = go (\p -> getParamProposal_ p txHash certIdx)++getWithdrawalProposal_ :: MonadBlockfrost m => Project -> TxHash -> Integer -> m [WithdrawalProposal]+getWithdrawalProposal_ = _withdrawalProposal . governanceClient++-- | Get a witdhrawal proposal details.+getWithdrawalProposal :: MonadBlockfrost m => TxHash -> Integer -> m [WithdrawalProposal]+getWithdrawalProposal txHash certIdx = go (\p -> getWithdrawalProposal_ p txHash certIdx)++getProposalVotes_ :: MonadBlockfrost m => Project -> TxHash -> Integer -> Paged -> SortOrder -> m [ProposalVote]+getProposalVotes_ = _proposalVotes . governanceClient++-- | Get a history of DReps proposals.+-- Allows custom paging and ordering using 'Paged' and 'SortOrder'.+getProposalVotes' :: MonadBlockfrost m => TxHash -> Integer -> Paged -> SortOrder -> m [ProposalVote]+getProposalVotes' txHash certIdx pg s = go (\p -> getProposalVotes_ p txHash certIdx pg s)++-- | Get a history of DReps proposals.+--+-- Queries 100 entries. To query all entries use 'Blockfrost.Client.Core.allPages'+-- with principled variant of this function (suffixed with @'@)+-- that accepts 'Paged' argument.+getProposalVotes :: MonadBlockfrost m => TxHash -> Integer -> m [ProposalVote]+getProposalVotes txHash certIdx = getProposalVotes' txHash certIdx def def++getProposalMetadata_ :: MonadBlockfrost m => Project -> TxHash -> Integer -> m ProposalMeta+getProposalMetadata_ = _proposalMeta . governanceClient++-- | Get a parameter proposal details.+getProposalMetadata :: MonadBlockfrost m => TxHash -> Integer -> m ProposalMeta+getProposalMetadata txHash certIdx = go (\p -> getProposalMetadata_ p txHash certIdx)