UNPKG

cactus-agent

Version:
821 lines (802 loc) 70.8 kB
# Changelog ## [13.0.0] ### Breaking change - The format of [`PoolState`](./src/api/cactus/farmer/farmer.ts)) has been changed. - `points_found_24h` and `points_acknowledged_24h` are now `Array<[uint32, uint64]>` (they were `Array<[float, uint64]>`) - `pool_errors_24h` is now `Array<[uint32, ErrorResponse]>` (it was `ErrorResponse[]`) - The following request properties of `send_transaction` and `cat_spend` Wallet RPC API were renamed - `exclude_coin_amounts` -> `excluded_coin_amounts` - `exclude_coins` -> `excluded_coins` - The previous property names(`exclude_coin_amounts`, `exclude_coins`) are preserved for backward compatibility - The following request properties of `create_signed_transaction` Wallet RPC API were renamed - `exclude_coin_amounts` -> `excluded_coin_amounts` - `exclude_coins` -> `excluded_coins` - The previous property name (`exclude_coins`) is preserved for backward compatibility - Unlike `send_transaction` and `cat_spend`, `exclude_coin_amounts` is removed by accident and not backward compatible. ### Changed - [Daemon WebSocket API](./src/api/ws/daemon) - [`start_plotting`](./src/api/ws/daemon/README.md#start_plottingdaemon-params) - The `t2` option for chiapos plotter is now optional - Added `compress` option for bladebit plotter - Added `cudaplot` plot type for bladebit plotter - [`get_plotters`](./src/api/ws/daemon/README.md#get_plottersdaemon) - Added `cuda_support` property to bladebit install info - [DataLayer RPC API](./src/api/rpc/data_layer) - Renamed the type `WsTakeOfferMessageDL` to `WsTakeOfferMessage` - Renamed the type `WsCancelOfferMessageDL` to `WsCancelOfferMessage` - [Farmer RPC API](./src/api/rpc/farmer) - [`get_pool_state`](./src/api/rpc/farmer/README.md#get_pool_stateagent) - Added new properties - `valid_partials_since_start` - `valid_partials_24h` - `invalid_partials_since_start` - `invalid_partials_24h` - `stale_partials_since_start` - `stale_partials_24h` - `missing_partials_since_start` - `missing_partials_24h` - [`get_harvesters`](./src/api/rpc/farmer/README.md#get_harvestersagent) - Added `total_effective_plot_size` and `harvesting_mode` to `harvesters` in response - [`get_harvesters_summary`](./src/api/rpc/farmer/README.md#get_harvesters_summaryagent) - Added `total_effective_plot_size` and `harvesting_mode` to `harvesters` in response - [Farmer WebSocket API](./src/api/ws/farmer) - [`on_new_farming_info`](./src/api/ws/farmer/README.md#on_new_farming_info) - Added `node_id` and `lookup_time` to `farming_info` Broadcast data - [`on_new_signage_point`](./src/api/ws/farmer/README.md#on_new_signage_point) - Added `missing_signage_points` to Broadcast data - [`on_submitted_partial`](./src/api/ws/farmer/README.md#on_submitted_partial) - Added `"wallet_ui""` to `destination` in Broadcast data - [`on_harvester_update`](./src/api/ws/farmer/README.md#on_harvester_update) - Added `total_effective_plot_size` and `harvesting_mode` to broadcast data - [Harvester RPC API](./src/api/rpc/harvester) - [`get_plots`](./src/api/rpc/harvester/README.md#get_plotsagent) - Added `compression_level` to response - [FullNode RPC API](./src/api/rpc/full_node) - [`get_blockchain_state`](./src/api/rpc/full_node/README.md#get_blockchain_stateagent) - Added `average_block_time` to response - [Wallet RPC API](./src/api/rpc/wallet) - [`get_farmed_amount`](./src/api/rpc/full_node/README.md#get_farmed_amountagent) - Added `last_time_farmed` to response - Added `blocks_won` to response ### Added - [Daemon WebSocket API](./src/api/ws/daemon) - [`get_routes`](./src/api/ws/daemon/README.md#get_routesdaemon) - [`get_wallet_addresses`](./src/api/ws/daemon/README.md#get_wallet_addressesdaemon) - [`get_keys_for_plotting`](./src/api/ws/daemon/README.md#get_keys_for_plottingdaemon) - [Farmer WebSocket API](./src/api/ws/farmer) - [`on_failed_partial`](./src/api/ws/farmer/README.md#on_failed_partial) - [DataLayer RPC API](./src/api/rpc/data_layer) - [`clear_pending_roots`](./src/api/rpc/data_layer/README.md#clear_pending_rootsagent-params) - [Harvester RPC API](./src/api/rpc/harvester) - [`get_harvester_config`](./src/api/rpc/harvester/README.md#get_harvester_configagent) - [`update_harvester_config`](./src/api/rpc/harvester/README.md#update_harvester_configagent) ### Fixed - Fixed documentation for plotter params. - `bladebit_params` => `bladebit_ramplot_params` - `bladebit2_params` => `bladebit_diskplot_params` - Fixed an issue where ts files related to the data layer RPC API had a circular dependency. - Fixed an issue where the following request parameters for the `did_find_lost_did` Wallet RPC API were missing. - `recovery_list_hash` - `num_verification` - `metadata` ## [12.1.0] ### Changed - [Wallet RPC API](./src/api/rpc/wallet) - [`get_transactions`](./src/api/rpc/wallet/README.md#get_transactionsagent-params) - Added `type_filter` to request parameter - Added `confirmed` to request parameter - Added `metadata` for each `transactions` in a response - [`get_transaction_count`](./src/api/rpc/wallet/README.md#get_transaction_countagent-params) - Added `type_filter` to request parameter - Added `confirmed` to request parameter - [`send_transaction`](./src/api/rpc/wallet/README.md#send_transactionagent-params) - Added `puzzle_decorator` to request parameter - [`did_get_info`](./src/api/rpc/wallet/README.md#did_get_infoagent-params) - Added `did_id` to response ### Added - [Wallet RPC API](./src/api/rpc/wallet) - [`set_auto_claim`](./src/api/rpc/wallet/README.md#set_auto_claimagent-params) - [`get_auto_claim`](./src/api/rpc/wallet/README.md#get_auto_claimagent-params) - [`get_wallet_balances`](./src/api/rpc/wallet/README.md#get_wallet_balancesagent-params) - [`spend_clawback_coins`](./src/api/rpc/wallet/README.md#spend_clawback_coinsagent-params) - [`get_coin_records`](./src/api/rpc/wallet/README.md#get_coin_recordsagent-params) - [`vc_mint`](./src/api/rpc/wallet/README.md#vc_mintagent-params) - [`vc_get`](./src/api/rpc/wallet/README.md#vc_getagent-params) - [`vc_get_list`](./src/api/rpc/wallet/README.md#vc_get_listagent-params) - [`vc_spend`](./src/api/rpc/wallet/README.md#vc_spendagent-params) - [`vc_add_proofs`](./src/api/rpc/wallet/README.md#vc_add_proofsagent-params) - [`vc_get_proofs_for_root`](./src/api/rpc/wallet/README.md#vc_get_proofs_for_rootagent-params) - [`vc_revoke`](./src/api/rpc/wallet/README.md#vc_revokeagent-params) ## [12.0.1] ### Changed - Replace the npm module `json-bigint` to `@chiamine/json-bigint`. ### Fixed - Fixed the type of `int64`, `uint64`, `uint128`, `uint512` to `number | bigint`. ## [12.0.0] ### Breaking change Now the types of `int64`, `uint64`, `uint128`, `uint512` are `number | BigInt` (Originally it was `number`). When the numeric value is larger than `Number.MAX_SAFE_INTEGER`, the value is parsed as a `BigInt`. You need to check a numeric member of API responses whether it is a `number` or `BigInt` if the type of it is either `int64`, `uint64`, `uint128` or `uint512`. You may also use `BigInt` for API request inputs wherever the type is one of the above. ## [11.1.1] Just updated documents. You don't need to update `cactus-agent` from `11.1.0` for `cactus-blockchain@1.8.1` because there are no API changes. ## [11.1.0] ### Changed - [Wallet RPC API](./src/api/rpc/wallet) - [`get_wallet_balance`](./src/api/rpc/wallet/README.md#get_wallet_balanceagent-params) - Part of response properties are replaced by `Balance` type. (* No new properties were added and no properties were removed to the response. Just part of props were managed separately) - [`cat_spend`](./src/api/rpc/wallet/README.md#cat_spendagent-params) - Added `extra_delta`, `tail_reveal` and `tail_solution` to request parameter. - In `cactus/wallet/nft_wallet/nft_info.py`, `nft_coin_confirmation_height` was added to `NFTInfo`. As a result of this change, the responses from following RPC API is affected. - ['nft_get_info`](./src/api/rpc/wallet/README.md#nft_get_infoagent-params) - Updated `yaml` to `2.2.2` ### Added - [New DataLayer RPC API](./src/api/ws/wallet) - [`check_plugins`](./src/api/rpc/data_layer/README.md#check_pluginsagent) ### Fixed - Added missing `get_sync_status` to `README.md` for RPC APIs - Added missing property `launcher_id` to `dl_history` in DataLayer RPC API ## [11.0.0] ### Breaking change JSONified `MempoolItem` replaced original `MempoolItem` in `cactus/types/mempool_items.py` for 2 RPC API responses listed below. As a result of this change, `removals` was added and `height_added_to_mempool`/`assert_height` were removed from those RPC API responses. - [FullNode RPC API](./src/api/rpc/full_node) - [`get_all_mempool_items`](./src/api/rpc/full_node/README.md#get_all_mempool_itemsagent) - [`get_mempool_item_by_tx_id`](./src/api/rpc/full_node/README.md#get_mempool_item_by_tx_idagent-params) ### Changed - [FullNode RPC API](./src/api/rpc/full_node) - [`get_blockchain_state`](./src/api/rpc/full_node/README.md#get_blockchain_stateagent) - The type of `mempool_fees` was changed to `int` from `Mojos`(`uint64`) - [`get_fee_estimate`](./src/api/rpc/full_node/README.md#get_fee_estimateagent-params) - The type of `mempool_fees` was changed to `int` from `Mojos`(`uint64`) - [Wallet RPC API](./src/api/rpc/wallet) - [`send_transaction`](./src/api/rpc/wallet/README.md#send_transactionagent-params) - Added `reuse_puzhash` to request parameter - [`sign_message_by_address`](./src/api/rpc/wallet/README.md#sign_message_by_addressagent-params) - Added `is_hex` to request parameter - [`sign_message_by_id`](./src/api/rpc/wallet/README.md#sign_message_by_idagent-params) - Added `is_hex` to request parameter - [`cat_spend`](./src/api/rpc/wallet/README.md#cat_spendagent-params) - Added `reuse_puzhash` to request parameter - [`create_offer_for_ids`](./src/api/rpc/wallet/README.md#create_offer_for_idsagent-params) - Added `reuse_puzhash` to request parameter - [`take_offer`](./src/api/rpc/wallet/README.md#take_offeragent-params) - Added `reuse_puzhash` to request parameter - [`did_update_recovery_ids`](./src/api/rpc/wallet/README.md#did_update_recovery_idsagent-params) - Added `reuse_puzhash` to request parameter - [`did_get_info`](./src/api/rpc/wallet/README.md#did_get_infoagent-params) - Added `solution` to response - [`did_update_metadata`](./src/api/rpc/wallet/README.md#did_update_metadataagent-params) - Added `reuse_puzhash` to request parameter - [`did_transfer_did`](./src/api/rpc/wallet/README.md#did_transfer_didagent-params) - Added `reuse_puzhash` to request parameter - [`nft_mint_nft`](./src/api/rpc/wallet/README.md#nft_mint_nftagent-params) - Added `reuse_puzhash` to request parameter - [`nft_set_nft_did`](./src/api/rpc/wallet/README.md#nft_set_nft_didagent-params) - Added `reuse_puzhash` to request parameter - [`nft_set_did_bulk`](./src/api/rpc/wallet/README.md#nft_set_did_bulkagent-params) - Added `reuse_puzhash` to request parameter - [`nft_transfer_bulk`](./src/api/rpc/wallet/README.md#nft_transfer_bulkagent-params) - Added `reuse_puzhash` to request parameter - [`nft_transfer_nft`](./src/api/rpc/wallet/README.md#nft_transfer_nftagent-params) - Added `reuse_puzhash` to request parameter - [`nft_add_uri`](./src/api/rpc/wallet/README.md#nft_add_uriagent-params) - Added `reuse_puzhash` to request parameter - [`nft_mint_bulk`](./src/api/rpc/wallet/README.md#nft_mint_bulkagent-params) - Added `reuse_puzhash` to request parameter - [Wallet WebSocket API](./src/api/ws/wallet) - [`on_state_changed_of_wallet`](./src/api/ws/wallet/README.md#on_state_changed_of_wallet) - Added `wallet_removed` to state list - Added `error` and `status` property to `tx_update` state changed event In `cactus/wallet/nft_wallet/nft_info.py`, `nft_id` was added to `NftInfo`. As a result of this change, the responses from following RPC APIs are affected. - [Wallet RPC API](./src/api/rpc/full_node) - [`nft_get_nfts`](./src/api/rpc/wallet/README.md#nft_get_nftsagent-params) - [`nft_get_info`](./src/api/rpc/wallet/README.md#nft_get_infoagent-params) ### Added - [New FullNode(Simulator) RPC API](./src/api/rpc/full_node) Big thanks to [Dishwasha](https://github.com/Dishwasha) for a PR for new Simulator API! - [`get_all_blocks`](./src/api/rpc/full_node/README.md#get_all_blocksagent-params) - [`farm_block`](./src/api/rpc/full_node/README.md#farm_blockagent-params) - [`set_auto_farming`](./src/api/rpc/full_node/README.md#set_auto_farmingagent-params) - [`get_auto_farming`](./src/api/rpc/full_node/README.md#get_auto_farmingagent-params) - [`get_farming_ph`](./src/api/rpc/full_node/README.md#get_farming_phagent-params) - [`get_all_coins`](./src/api/rpc/full_node/README.md#get_all_coinsagent-params) - [`get_all_puzzle_hashes`](./src/api/rpc/full_node/README.md#get_all_puzzle_hashesagent-params) - [`revert_blocks`](./src/api/rpc/full_node/README.md#revert_blocksagent-params) - [`reorg_blocks`](./src/api/rpc/full_node/README.md#reorg_blocksagent-params) - [New Farmer WebSocket API](./src/api/ws/farmer) - [`on_add_connection`](./src/api/ws/farmer/README.md#on_add_connection) - [`on_close_connection`](./src/api/ws/farmer/README.md#on_close_connection) - [New Harvester WebSocket API](./src/api/ws/harvester) - [`on_add_connection`](./src/api/ws/harvester/README.md#on_add_connection) - [`on_close_connection`](./src/api/ws/harvester/README.md#on_close_connection) - [New Wallet RPC API](./src/api/rpc/wallet) - [`set_wallet_resync_on_startup`](./src/api/rpc/wallet/README.md#set_wallet_resync_on_startupagent-params) - [`get_transaction_memo`](./src/api/rpc/wallet/README.md#get_transaction_memoagent-params) - [`nft_count_nfts`](./src/api/rpc/wallet/README.md#nft_count_nftsagent-params) - [New Wallet WebSocket API](./src/api/ws/wallet) - [`on_add_connection`](./src/api/ws/wallet/README.md#on_add_connection) - [`on_close_connection`](./src/api/ws/wallet/README.md#on_close_connection) ### Fixed - [Farmer WebSocket API](./src/api/ws/farmer) - [`on_submitted_partial`](./src/api/ws/farmer/README.md#on_submitted_partial) - Fixed an issue where `on_submitted_partial` was not working - [Wallet RPC API](./src/api/rpc/wallet) - [`verify_signature`](./src/api/rpc/wallet/README.md#verify_signatureagent-params) - Fixed an issue where `verify_signature` was not exposed via `require("cactus-agent/api/rpc")` - [Wallet WebSocket API](./src/api/ws/wallet) - [`on_sync_changed`](./src/api/ws/wallet/README.md#on_sync_changed) - Fixed an issue where `on_sync_changed` was defined as `on_sync_changed_of_wallet` - [`on_coin_added`](./src/api/ws/wallet/README.md#on_coin_added) - Fixed a typo. (WsCoindAddedMessage -> WsCoinAddedMessage) - Fixed an issue where `on_coin_added` was defined as `on_coin_added_of_wallet` ## [10.1.0] ### Indirect Change In `cactus/types/mempool_items.py`, `assert_height` was added to `MempoolItem`. As a result of this change, the responses from following RPC APIs are affected. - [FullNode RPC API](./src/api/rpc/full_node) - [`get_all_mempool_items`](./src/api/rpc/full_node/README.md#get_all_mempool_itemsagent) - [`get_mempool_item_by_tx_id`](./src/api/rpc/full_node/README.md#get_mempool_item_by_tx_idagent-params) ### Added - [New Wallet RPC API](./src/api/rpc/wallet) - [`get_timestamp_for_height`](./src/api/rpc/wallet/README.md#get_timestamp_for_heightagent) - [`nft_transfer_bulk`](./src/api/rpc/wallet/README.md#nft_transfer_bulkagent-params) ### Changed - [Common RPC API](./src/api/rpc/common) - [`open_connection`](./src/api/rpc/common/README.md#open_connectionagent-params) - Added `success` to response - Added `error` to response when `success` is `False` - [FullNode RPC API](./src/api/rpc/full_node) - [`get_blockchain_state`](./src/api/rpc/full_node/README.md#get_blockchain_stateagent) - Added `mempool_fees` to response - [`get_fee_estimate`](./src/api/rpc/full_node/README.md#get_fee_estimateagent-params) - Added `spend_type` to request parameter - Added `spend_count` to request parameter - Added `mempool_fees` to response - Added `num_spends` to response - Added `last_block_cost` to response - Added `fees_last_block` to response - Added `fee_rate_last_block` to response - Added `last_tx_block_height` to response - [Wallet RPC API](./src/api/rpc/wallet) - [`get_notifications`](./src/api/rpc/wallet/README.md#get_notificationsagent-params) - Added `height` to response - [`verify_signature`](./src/api/rpc/wallet/README.md#verify_signatureagent-params) - Added `signing_mode` to request parameter - [`sign_message_by_address`](./src/api/rpc/wallet/README.md#sign_message_by_addressagent-params) - Added `signing_mode` to response - [`sign_message_by_id`](./src/api/rpc/wallet/README.md#sign_message_by_idagent-params) - Added `None` type to `latest_coin_id` in response - Added `signing_mode` to response - [`cat_spend`](./src/api/rpc/wallet/README.md#cat_spendagent-params) - Added `coins` to response - [`get_offer_summary`](./src/api/rpc/wallet/README.md#get_offer_summaryagent-params) - Added `id` to response - [`check_offer_validity`](./src/api/rpc/wallet/README.md#check_offer_validityagent-params) - Added `id` to response - [`did_message_spend`](./src/api/rpc/wallet/README.md#did_message_spendagent-params) - Removed error response - [`nft_set_did_bulk`](./src/api/rpc/wallet/README.md#nft_set_did_bulkagent-params) - Added `tx_num to response - [`nft_get_wallet_did`](./src/api/rpc/wallet/README.md#nft_get_wallet_didagent-params) - Removed error response - [`nft_set_nft_status`](./src/api/rpc/wallet/README.md#nft_set_nft_statusagent-params) - Removed error response ### Fixed - [FullNode RPC API](./src/api/rpc/full_node) - [`get_blockchain_state`](./src/api/rpc/full_node/README.md#get_blockchain_stateagent) - Changed the type of `mempool_size` in response from `int` to `CLVMCost`(actually `uint64`) - [Wallet RPC API](./src/api/rpc/wallet) - [`nft_set_did_bulk`](./src/api/rpc/wallet/README.md#nft_set_did_bulkagent-params) - Fixed missing export and entry in [README](./src/api/README.md) - [`verify_signature`](./src/api/rpc/wallet/README.md#verify_signatureagent-params) - Added missing `message` to request parameter ## [10.0.0] ### Breaking change In `cactus/types/mempool_items.py`, `removals` of `MempoolItem` is now flagged as `@property`. As a result of this, `removals` of `MempoolItem` is removed from 2 RPC API responses listed below. - [FullNode RPC API](./src/api/rpc/full_node) - [`get_all_mempool_items`](./src/api/rpc/full_node/README.md#get_all_mempool_itemsagent) - [`get_mempool_item_by_tx_id`](./src/api/rpc/full_node/README.md#get_mempool_item_by_tx_idagent-params) ### Minor breaking change - Response params of`keyring_status` daemon WebSocket API below are deprecated - `needs_migration` - `can_remove_legacy_keys` ### Removed - [Daemon WebSocket API](./src/api/ws/daemon) (Code will remain awhile on cactus-agent for backward compatibility. Only document is removed for now.) - Removed `migrate_keyring` - Removed `notify_keyring_migration_completed` ### Added - [New DataLayer RPC API](./src/api/rpc/data_layer) - [`get_sync_status`](./src/api/rpc/data_layer/README.md#get_sync_statusagent-params) - [New Wallet RPC API](./src/api/rpc/wallet) - [`get_spendable_coins`](./src/api/rpc/wallet/README.md#get_spendable_coinsagent-params) - [`get_coin_records_by_names`](./src/api/rpc/wallet/README.md#get_coin_records_by_namesagent-params) - [`verify_signature`](./src/api/rpc/wallet/README.md#verify_signatureagent-params) - [`did_message_spend`](./src/api/rpc/wallet/README.md#did_message_spendagent-params) - [`did_get_info`](./src/api/rpc/wallet/README.md#did_get_infoagent-params) - [`did_find_lost_did`](./src/api/rpc/wallet/README.md#did_find_lost_didagent-params) - [`nft_set_did_bulk`](./src/api/rpc/wallet/README.md#nft_set_did_bulkagent-params) ### Changed - [Daemon WebSocket API](./src/api/ws/daemon) - [`keyring_status`](./src/api/ws/daemon/README.md#keyring_statusdaemon) - Removed `needs_migration` from response - Removed `can_remove_legacy_keys` from response - [FullNode RPC API](./src/api/rpc/full_node) - [`get_mempool_item_by_tx_id`](./src/api/rpc/full_node/README.md#get_mempool_item_by_tx_idagent-params) - Added `include_pending` to request parameter - [Wallet RPC API](./src/api/rpc/wallet) - [`send_transaction`](./src/api/rpc/wallet/README.md#send_transactionagent-params) - Added `max_coin_amount` to request parameter - Added `exclude_coin_amounts` to request parameter - Added `exclude_coin_ids` to request parameter - [`send_transaction_multi`](./src/api/rpc/wallet/README.md#send_transaction_multiagent-params) - Added `max_coin_amount` to request parameter - Added `exclude_coin_amounts` to request parameter - Added parameters for cat spends. - [`select_coins`](./src/api/rpc/wallet/README.md#select_coinsagent-params) - Added `max_coin_amount` to request parameter - Added `exclude_coin_amounts` to request parameter - [`cat_spend`](./src/api/rpc/wallet/README.md#cat_spendagent-params) - Added `additions` to request parameter - Added `max_coin_amount` to request parameter - Added `exclude_coin_amounts` to request parameter - Added `exclude_coin_ids` to request parameter - [`sign_message_by_id`](./src/api/rpc/wallet/README.md#sign_message_by_idagent-params) - Added `latest_coin_id` to request parameter - [`create_offer_for_ids`](./src/api/rpc/wallet/README.md#create_offer_for_idssagent-params) - Added `max_coin_amount` to request parameter - [`take_offer`](./src/api/rpc/wallet/README.md#take_offeragent-params) - Added `max_coin_amount` to request parameter - [`nft_mint_nft`](./src/api/rpc/wallet/README.md#nft_mint_nftagent-params) - Added `nft_id` to return parameter - [`nft_mint_bulk`](./src/api/rpc/wallet/README.md#nft_mint_bulkagent-params) - Added `nft_id_list` to return parameter - [`create_signed_transaction`](./src/api/rpc/wallet/README.md#create_signed_transactionagent-params) - Added `max_coin_amount` to return parameter - Added `exclude_coin_amounts` to return parameter - [Wallet WebSocket API](./src/api/ws/wallet) - [`state_changed`](./src/api/ws/wallet/README.md#onstatechangedofwallet) - Added `new_on_chain_notification` state. - `TBladeBitParams` has been renamed to `TBladeBitRamParams` - `plot_type: "ramplot"` has been added - `TBladeBit2Params` has been renamed to `TBladeBitDiskParams` - `plot_type: "diskplot"` has been added - `plotter` type has been converted to `"bladebit"` from `"bladebit2"` - Eased type requirement of `daemon.sendMessage()` and `agent.sendMessage()` You can request **RPC** API on Daemon WebSocket channel like this: ```typescript const {getDaemon} = require("cactus-agent"); const {get_harvesters_summary} = require("cactus-agent/api/rpc/farmer"); const daemon = getDaemon(); await daemon.connect(); res = await get_harvesters_summary(daemon); // or specify service name and API command res = await daemon.sendMessage("cactus_farmer", "get_harvesters_summary"); /* { ack: true, command: 'get_harvesters_summary', data: { harvesters: [ [Object] ], success: true }, destination: 'cactus_agent', origin: 'cactus_farmer', request_id: '4e31c04df234538901d9270932d04301b5b3a1a895d762144400852b8167973f' } */ ``` Please note that when you use RPC API, you can directly request to the RPC endpoint of the service(full_node/farmer/...). However, when you request RPC API on Daemon WebSocket channel, you get a response from the service which the daemon is connecting to. In other word, you can choose the exact ip:port of a service if you use RPC API, while it is the daemon which chooses the services it connects to if you use Daemon WebSocket channel. ### Fixed - [FullNode RPC API](./src/api/rpc/full_node) - [`get_blockchain_state`](./src/api/rpc/full_node/README.md#get_blockchain_stateagent) - Made `sync_tip_height` as `uint32`(previously `Optional<uint32>`) because `None` value would never be set - [Wallet RPC API](./src/api/rpc/wallet) - [`send_transaction_multi`](./src/api/rpc/wallet/README.md#send_transaction_multiagent-params) - Added missing `min_coin_amount` to request parameter - Added missing `exclude_coins` to request parameter - [`create_offer_for_ids`](./src/api/rpc/wallet/README.md#create_offer_for_idsagent-params) - Added missing `solver` to request parameter - [`create_signed_transaction`](./src/api/rpc/wallet/README.md#create_signed_transactionagent-params) - Added missing `wallet_id` to return parameter in README - Added missing `exclude_coins` to return parameter in README ## [9.2.0] ### Minor breaking change - `add_private_key` daemon WebSocket API now deprecated `passphrase` request param and added `label` param. - `program` property was removed from `MempoolItem` class. See [MempoolItem](./src/api/cactus/types/mempool_item.ts) for more detail. This impacts on API response below: - [`get_all_mempool_items`](./src/api/rpc/full_node/README.md#get_all_mempool_itemsagent) of FullNode RPC API - [`get_mempool_item_by_tx_id`](./src/api/rpc/full_node/README.md#get_mempool_item_by_tx_idagent-params) of FullNode RPC API ### Removed - [Wallet RPC API](./src/api/rpc/wallet) (Code will remain awhile on cactus-agent for backward compatibility. Only document is removed for now.) - Removed `rl_set_user_info` - Removed `send_clawback_transaction` - Removed `add_rate_limited_funds` - Removed RL Wallet type from `create_new_wallet` API - Removed `RATE_LIMITED` from [`WalletType`](./src/api/cactus/wallet/util/wallet_types.ts) ### Added - [New Daemon WebSocket API](./src/api/ws/daemon) - [`get_key`](./src/api/ws/daemon/README.md#get_keydaemon-params) - [`get_keys`](./src/api/ws/daemon/README.md#get_keysdaemon-params) - [`set_label`](./src/api/ws/daemon/README.md#set_labeldaemon-params) - [`delete_label`](./src/api/ws/daemon/README.md#delete_labeldaemon-params) - [`running_services`](./src/api/ws/daemon/README.md#running_servicesdaemon) - Added support for Bladebit2 plotting option - [New FullNode RPC API](./src/api/rpc/full_node) - [`get_fee_estimate`](./src/api/rpc/full_node/README.md#get_fee_estimateagent-params) - [New Wallet RPC API](./src/api/rpc/wallet) - [`push_transactions`](./src/api/rpc/wallet/README.md#push_transactionsagent-params) - [`get_notifications`](./src/api/rpc/wallet/README.md#get_notificationsagent-params) - [`delete_notifications`](./src/api/rpc/wallet/README.md#delete_notificationsagent-params) - [`send_notification`](./src/api/rpc/wallet/README.md#send_notificationagent-params) - [`sign_message_by_address`](./src/api/rpc/wallet/README.md#sign_message_by_addressagent-params) - [`sign_message_by_id`](./src/api/rpc/wallet/README.md#sign_message_by_idagent-params) - [`nft_calculate_royalties`](./src/api/rpc/wallet/README.md#nft_calculate_royaltiesagent-params) - [`nft_mint_bulk`](./src/api/rpc/wallet/README.md#nft_mint_bulkagent-params) ### Changed - [Daemon WebSocket API](./src/api/ws/daemon) - [`add_private_key`](./src/api/ws/daemon/README.md#add_private_keydaemon-params) - Removed `passphrase` request parameter - Added `label` request parameter - [DataLayer RPC API](./src/api/rpc/data_layer) - [`get_value`](./src/api/rpc/data_layer/README.md#get_valueagent-params) - Added `root_hash` request parameter - [FullNode RPC API](./src/api/rpc/full_node) - `program` property was removed from `MempoolItem` class. See [MempoolItem](./src/api/cactus/types/mempool_item.ts) for more detail. - [Wallet RPC API](./src/api/rpc/wallet) - [`nft_get_nfts`](./src/api/rpc/wallet/README.md#nft_get_nftsagent-params) - Made `wallet_id` optional request parameter - Added `start_index`, `num`, `ignore_size_limit` request parameters - [`nft_get_info`](./src/api/rpc/wallet/README.md#nft_get_infoagent-params) - Added `ignore_size_limit` request parameters - [`nft_add_uri`](./src/api/rpc/wallet/README.md#nft_add_uriagent-params) - Removed error response - [`create_signed_transaction`](./src/api/rpc/wallet/README.md#create_signed_transactionagent-params) - Added `signed_txs` to response - [Common RPC API](./src/api/rpc/common) - [`healthz`](./src/api/rpc/common/README.md#healthzagent) - Changed `success` type to `True` from `"true"` - `p2_address`, `minter_did`, `off_chain_metadata` were added to `NFTInfo` class. This impacts on API response below: - [`nft_get_nfts`](./src/api/rpc/wallet/README.md#nft_get_nftsagent-params) - [`nft_get_info`](./src/api/rpc/wallet/README.md#nft_get_infoagent-params) ### Fixed - [Wallet RPC API](./src/api/rpc/wallet) - [`nft_set_nft_did`](./src/api/rpc/wallet/README.md#nft_set_nft_didagent-params) - Fixed an issue where `did_id` request param was described to be required - [Common RPC API](./src/api/rpc/common) - [`get_routes`](./src/api/rpc/common/README.md#get_routesagent) - Added missing `success` response parameter. ## [9.1.0] ### Added - Added Common RPC API Error format description and type - [New DataLayer RPC API](./src/api/rpc/data_layer) - [`create_data_store`](./src/api/rpc/data_layer/README.md#create_data_storeagent-params) - [`get_owned_stores`](./src/api/rpc/data_layer/README.md#get_owned_storesagent) - [`batch_update`](./src/api/rpc/data_layer/README.md#batch_updateagent-params) - [`get_value`](./src/api/rpc/data_layer/README.md#get_valueagent-params) - [`get_keys`](./src/api/rpc/data_layer/README.md#get_keysagent-params) - [`get_keys_values`](./src/api/rpc/data_layer/README.md#get_keys_valuesagent-params) - [`get_ancestors`](./src/api/rpc/data_layer/README.md#get_ancestorsagent-params) - [`get_root`](./src/api/rpc/data_layer/README.md#get_rootagent-params) - [`get_local_root`](./src/api/rpc/data_layer/README.md#get_local_rootagent-params) - [`get_roots`](./src/api/rpc/data_layer/README.md#get_rootsagent-params) - [`delete_key`](./src/api/rpc/data_layer/README.md#delete_keyagent-params) - [`insert`](./src/api/rpc/data_layer/README.md#insertagent-params) - [`subscribe`](./src/api/rpc/data_layer/README.md#subscribeagent-params) - [`unsubscribe`](./src/api/rpc/data_layer/README.md#unsubscribeagent-params) - [`add_mirror`](./src/api/rpc/data_layer/README.md#add_mirroragent-params) - [`delete_mirror`](./src/api/rpc/data_layer/README.md#delete_mirroragent-params) - [`get_mirrors`](./src/api/rpc/data_layer/README.md#get_mirrorsagent-params) - [`remove_subscriptions`](./src/api/rpc/data_layer/README.md#remove_subscriptionsagent-params) - [`subscriptions`](./src/api/rpc/data_layer/README.md#subscriptionsagent) - [`get_kv_diff`](./src/api/rpc/data_layer/README.md#get_kv_diffagent-params) - [`get_root_history`](./src/api/rpc/data_layer/README.md#get_root_historyagent-params) - [`add_missing_files`](./src/api/rpc/data_layer/README.md#add_missing_filesagent-params) - [`make_offer`](./src/api/rpc/data_layer/README.md#make_offeragent-params) - [`take_offer`](./src/api/rpc/data_layer/README.md#take_offeragent-params) - [`verify_offer`](./src/api/rpc/data_layer/README.md#verify_offeragent-params) - [`cancel_offer`](./src/api/rpc/data_layer/README.md#cancel_offeragent-params) - [New Wallet RPC API](./src/api/rpc/wallet) - [`create_new_dl`](./src/api/rpc/wallet/README.md#create_new_dlagent-params) - [`dl_track_new`](./src/api/rpc/wallet/README.md#dl_track_newagent-params) - [`dl_stop_tracking`](./src/api/rpc/wallet/README.md#dl_stop_trackingagent-params) - [`dl_latest_singleton`](./src/api/rpc/wallet/README.md#dl_latest_singletonagent-params) - [`dl_singletons_by_root`](./src/api/rpc/wallet/README.md#dl_singletons_by_rootagent-params) - [`dl_update_root`](./src/api/rpc/wallet/README.md#dl_update_rootagent-params) - [`dl_update_multiple`](./src/api/rpc/wallet/README.md#dl_update_multipleagent-params) - [`dl_history`](./src/api/rpc/wallet/README.md#dl_historyagent-params) - [`dl_owned_singletons`](./src/api/rpc/wallet/README.md#dl_owned_singletonsagent-params) - [`dl_get_mirrors`](./src/api/rpc/wallet/README.md#dl_get_mirrorsagent-params) - [`dl_new_mirror`](./src/api/rpc/wallet/README.md#dl_new_mirroragent-params) - [`dl_delete_mirror`](./src/api/rpc/wallet/README.md#dl_delete_mirroragent-params) - [New Wallet WebSocket API](./src/api/ws/wallet) - Added `offer_added`, `offer_cancelled` to `state_changed` event. ### Changed - [Wallet RPC API](./src/api/rpc/wallet) - [`get_offer_summary`](./src/api/rpc/wallet/README.md#get_offer_summaryagent-params) - Added `advanced` request parameter - [`take_offer`](./src/api/rpc/wallet/README.md#take_offeragent-params) - Added `solver` request parameter ## [9.0.1] ### Fixed - Fixed an issue where wallet `state_changed` events(notified via WebSocket API) below were missing. - did_coin_added - nft_coin_added - nft_coin_removed - nft_coin_updated - nft_coin_did_set ## [9.0.0] ### Breaking Change `series_total` and `series_number` in `NFTInfo` class have been renamed to `edition_total` and `edition_number` (defined in `cactus/wallet/nft_wallet/nft_info.py`.) As a result, the following Wallet RPC APIs in `cactus-blockchain@1.5.1` become not compatible with `cactus-blockchain@1.5.0` - [`nft_get_info`](./src/api/rpc/wallet/README.md#nft_get_infoagent-params) - `nft_info.series_total` was renamed to `nft_info.edition_total` - `nft_info.series_number` was renamed to `nft_info.edition_number` - [`nft_get_nfts`](./src/api/rpc/wallet/README.md#nft_get_nftsagent-params) - `nft_list.series_total` was renamed to `nft_list.edition_total` - `nft_list.series_number` was renamed to `nft_list.edition_number` ### Added - [New FullNode RPC API](./src/api/rpc/full_node) - [`get_block_spends`](./src/api/rpc/full_node/README.md#get_block_spendsagent-params) - [New Wallet RPC API](./src/api/rpc/wallet) - [`cancel_offers`](./src/api/rpc/wallet/README.md#cancel_offersagent-params) ### Changed - [Farmer RPC API](./src/api/rpc/farmer) - [`get_harvester_plots_valid`](./src/api/rpc/farmer/README.md#get_harvester_plots_validagent-params) - [`get_harvester_plots_invalid`](./src/api/rpc/farmer/README.md#get_harvester_plots_invalidagent-params) - [`get_harvester_plots_keys_missing`](./src/api/rpc/farmer/README.md#get_harvester_plots_keys_missingagent-params) - [`get_harvester_plots_duplicates`](./src/api/rpc/farmer/README.md#get_harvester_plots_duplicatesagent-params) - Changed type of `page` to `uint32` from `int` - Changed type of `page_size` to `uint32` from `int` - [Wallet RPC API](./src/api/rpc/wallet) - [`get_wallets`](./src/api/rpc/wallet/README.md#get_walletsagent-params) - Added `fingerprint` to response - [`create_new_wallet`](./src/api/rpc/wallet/README.md#create_new_walletagent-params) - Added new error response - [`get_wallet_balance`](./src/api/rpc/wallet/README.md#get_wallet_balanceagent-params) - Added `wallet_type` to response - Added `asset_id` to response - [`send_transaction`](./src/api/rpc/wallet/README.md#send_transactionagent-params) - Changed request type of `wallet_id` to `uint32` from `int` - Changed request type of `min_coin_amount` to `uint64` from `uint128` - [`select_coins`](./src/api/rpc/wallet/README.md#select_coinsagent-params) - Added `min_coin_amount` to request. - Added `excluded_coins` to request. - [`cat_set_name`](./src/api/rpc/wallet/README.md#cat_set_nameagent-params) - Changed type of `wallet_id` to `uint32` from `int` - [`cat_get_name`](./src/api/rpc/wallet/README.md#cat_get_nameagent-params) - Changed type of `wallet_id` to `uint32` from `int` - [`cat_spend`](./src/api/rpc/wallet/README.md#cat_spendagent-params) - Changed type of `wallet_id` to `uint32` from `int` - Changed request type of `min_coin_amount` to `uint64` from `uint128` - [`cat_get_asset_id`](./src/api/rpc/wallet/README.md#cat_get_asset_idagent-params) - Changed type of `wallet_id` to `uint32` from `int` - [`create_offer_for_ids`](./src/api/rpc/wallet/README.md#create_offer_for_idsagent-params) - Changed request type of `min_coin_amount` to `uint64` from `uint128` - [`take_offer`](./src/api/rpc/wallet/README.md#take_offeragent-params) - Changed request type of `min_coin_amount` to `uint64` from `uint128` - [`send_clawback_transaction`](./src/api/rpc/wallet/README.md#send_clawback_transactionagent-params) - Changed type of `wallet_id` to `uint32` from `int` - [`create_signed_transaction`](./src/api/rpc/wallet/README.md#create_signed_transactionagent-params) - Changed request type of `min_coin_amount` to `uint64` from `uint128` - Added `excluded_coins` to request. - [`pw_self_pool`](./src/api/rpc/wallet/README.md#pw_self_poolagent-params) - [`pw_absorb_rewards`](./src/api/rpc/wallet/README.md#pw_absorb_rewardsagent-params) - [`pw_status`](./src/api/rpc/wallet/README.md#pw_statusagent-params) - Removed error response - [`nft_get_info`](./src/api/rpc/wallet/README.md#nft_get_infoagent-params) - `nft_info.series_total` was renamed to `nft_info.edition_total` - `nft_info.series_number` was renamed to `nft_info.edition_number` - [`nft_get_nfts`](./src/api/rpc/wallet/README.md#nft_get_nftsagent-params) - `nft_list.series_total` was renamed to `nft_list.edition_total` - `nft_list.series_number` was renamed to `nft_list.edition_number` - [Wallet WebSocket API](./src/api/ws/wallet) - Added `added_stray_cat`, `new_derivation_index` events ### Fixed - Fixed an issue where type information of `get_puzzle_and_solution` was missing. - Fixed an issue where event destination of `sync_changed` and `coin_added` Wallet WebSocket API was not correct. - Fixed an issue where `healthz` common RPC API was missing. ## [8.0.0] ### Breaking Change - [`nft_mint_nft`](./src/api/rpc/wallet/README.md#nft_mint_nftagent-params) - Renamed `series_number` to `edition_number`. - Renamed `series_total` to `edition_total`. ### Added - [New Wallet RPC API](./src/api/rpc/wallet) - [`get_current_derivation_index`](./src/api/rpc/wallet/README.md#get_current_derivation_indexagent) - [`extend_derivation_index`](./src/api/rpc/wallet/README.md#extend_derivation_indexagent-params) ### Changed - [`send_transaction`](./src/api/rpc/wallet/README.md#send_transactionagent-params) - Added `min_coin_amount` to request parameter - [`cat_spend`](./src/api/rpc/wallet/README.md#cat_spendagent-params) - Added `min_coin_amount` to request parameter - [`create_offer_for_ids`](./src/api/rpc/wallet/README.md#create_offer_for_idsagent-params) - Added `min_coin_amount` to request parameter - [`take_offer`](./src/api/rpc/wallet/README.md#take_offeragent-params) - Added `min_coin_amount` to request parameter - [`nft_mint_nft`](./src/api/rpc/wallet/README.md#nft_mint_nftagent-params) - Renamed `series_number` to `edition_number`. - Renamed `series_total` to `edition_total`. - [`create_signed_transaction`](./src/api/rpc/wallet/README.md#create_signed_transactionagent-params) - Added `min_coin_amount` to request parameter ## [7.0.0] ### Breaking Change - [`create_new_wallet`](./src/api/rpc/wallet/README.md#create_new_walletagent-params) - Renamed `filename` to `backup_data`. - [`did_get_recovery_list`](./src/api/rpc/wallet/README.md#did_get_recovery_listagent-params) - Renamed `recover_list` to `recovery_list`. - [`did_recovery_spend`](./src/api/rpc/wallet/README.md#did_recovery_spendagent-params) - Renamed `attest_filenames` to `attest_data`. - Changed the type of `success` response property to `bool` from `SpendBundle`. - Added `spend_bundle` to response. - [`did_create_attest`](./src/api/rpc/wallet/README.md#did_create_attestagent-params) - Removed `filename` from request. - Added `attest_data` to response. - [`did_create_backup_file`](./src/api/rpc/wallet/README.md#did_create_backup_fileagent-params) - Removed `filename` from request. - Added `backup_data` to response. ### Added - [New Farmer WebSocket API](./src/api/ws/farmer) - [`on_proof`](./src/api/ws/farmer/README.md#on_proof) - [`on_submitted_partial`](./src/api/ws/farmer/README.md#on_submitted_partial) - [New Harvester WebSocket API](./src/api/ws/harvester) - [`on_farming_info`](./src/api/ws/harvester/README.md#on_farming_info) - [New Wallet RPC API](./src/api/rpc/wallet) - [`did_set_wallet_name`](./src/api/rpc/wallet/README.md#did_set_wallet_nameagent-params) - [`did_get_wallet_name`](./src/api/rpc/wallet/README.md#did_get_wallet_nameagent-params) - [`did_update_metadata`](./src/api/rpc/wallet/README.md#did_update_metadataagent-params) - [`did_get_metadata`](./src/api/rpc/wallet/README.md#did_get_metadataagent-params) - [`did_get_current_coin_info`](./src/api/rpc/wallet/README.md#did_get_current_coin_infoagent-params) - [`did_transfer_did`](./src/api/rpc/wallet/README.md#did_transfer_didagent-params) - [`nft_mint_nft`](./src/api/rpc/wallet/README.md#nft_mint_nftagent-params) - [`nft_get_nfts`](./src/api/rpc/wallet/README.md#nft_get_nftsagent-params) - [`nft_set_nft_did`](./src/api/rpc/wallet/README.md#nft_set_nft_didagent-params) - [`nft_get_by_did`](./src/api/rpc/wallet/README.md#nft_get_by_didagent-params) - [`nft_get_wallet_did`](./src/api/rpc/wallet/README.md#nft_get_wallet_didagent-params) - [`nft_get_wallets_with_dids`](./src/api/rpc/wallet/README.md#nft_get_wallets_with_didsagent) - [`nft_set_nft_status`](./src/api/rpc/wallet/README.md#nft_set_nft_statusagent-params) - [`nft_transfer_nft`](./src/api/rpc/wallet/README.md#nft_transfer_nftagent-params) - [`nft_get_info`](./src/api/rpc/wallet/README.md#nft_get_infoagent-params) - [`nft_add_uri`](./src/api/rpc/wallet/README.md#nft_add_uriagent-params) ### Changed - [`get_reward_targets`](./src/api/rpc/farmer/README.md#get_reward_targetsagent-params) - Added `max_ph_to_search` to request parameter - [`check_delete_key`](./src/api/rpc/wallet/README.md#check_delete_keyagent-params) - Added `max_ph_to_search` to request parameter - [`get_wallets`](./src/api/rpc/wallet/README.md#get_walletsagent-params) - Added `include_data` to request parameter - [`create_new_wallet`](./src/api/rpc/wallet/README.md#create_new_walletagent-params) - Added `metadata` and `wallet_name` to request parameter for DID wallet - Changed parameter name from `filename` and `backup_data` for request parameter for DID wallet recovery - Added NFT Wallet type - [`create_offer_for_ids`](./src/api/rpc/wallet/README.md#create_offer_for_idsagent-params) - Added `driver_dict` to request parameter - [`get_offer_summary`](./src/api/rpc/wallet/README.md#get_offer_summaryagent-params) - Added `infos` to response parameter - [`did_update_recovery_ids`](./src/api/rpc/wallet/README.md#did_update_recovery_idsagent-params) - Changed the type of `wallet_id` to `uint32` from `int`. - [`did_get_did`](./src/api/rpc/wallet/README.md#did_get_didagent-params) - Changed the type of `wallet_id` to `uint32` from `int`. - [`did_get_recovery_list`](./src/api/rpc/wallet/README.md#did_get_recovery_listagent-params) - Changed the type of `wallet_id` to `uint32` from `int`. - Renamed `recover_list` to `recovery_list`. - [`did_recovery_spend`](./src/api/rpc/wallet/README.md#did_recovery_spendagent-params) - Changed the type of `wallet_id` to `uint32` from `int`. - Renamed `attest_filenames` to `attest_data`. - Changed response dict format - [`did_get_pubkey`](./src/api/rpc/wallet/README.md#did_get_pubkeyagent-params) - Changed the type of `wallet_id` to `uint32` from `int`. - [`did_create_attest`](./src/api/rpc/wallet/README.md#did_create_attestagent-params) - Changed the type of `wallet_id` to `uint32` from `int`. - Removed `filename` from request. - Added `attest_data` to response. - [`did_get_information_needed_for_recovery`](./src/api/rpc/wallet/README.md#did_get_information_needed_for_recoveryagent-params) - Changed the type of `wallet_id` to `uint32` from `int`. - [`did_create_backup_file`](./src/api/rpc/wallet/README.md#did_create_backup_fileagent-params) - Changed the type of `wallet_id` to `uint32` from `int`. - Removed `filename` from request. - Added `backup_data` to response. - `TradeRecordConvenience` type at `cactus/wallet/trade_record.py` was changed. (Added `infos` property to `summary` dict) As a result, the following APIs are affected: - `create_offer_for_ids` of Wallet RPC API - `take_offer` of Wallet RPC API - `get_offer` of Wallet RPC API - `get_all_offers` of Wallet RPC API - Renamed `DISTRIBUTED_ID` to `DECENTRALIZED_ID` of `WalletType` in `src/api/cactus/wallet/util/wallet_type.ts`. - Added `NFT` to `WalletType` in `src/api/cactus/wallet/util/wallet_type.ts`. ### Fixed - Fixed an issue where README description for `did_get_pubkey` was wrong. - Fixed an issue where the type of `pubkey` response property for `did_get_pubkey` was wrong. ## [6.0.0] ### Minor Breaking Change - At cactus-blockchain@1.3.5, a farmer websocket API `new_plots` was replaced by `harvester_update` and `harvester_removed`. This change is not critical because in application's point of view it may just miss new plot info but farming will continue without problem. ### Removed - [Farmer WebSocket API](./src/api/ws/farmer) - `on_new_plots` ### Added - [New Farmer WebSocket API](./src/api/ws/farmer) - [`harvester_updated`](./src/api/ws/farmer/README.md#on_harvester_update) - [`harvester_removed`](./src/api/ws/farmer/README.md#on_harvester_removed) - [New Farmer RPC API](./src/api/rpc/farmer) - [`get_harvesters_summary`](./src/api/rpc/farmer/README.md#get_harvesters_summaryagent) - [`get_harvester_plots_valid`](./src/api/rpc/farmer/README.md#get_harvester_plots_validagent-params) - [`get_harvester_plots_invalid`](./src/api/rpc/farmer/README.md#get_harvester_plots_invalidagent-params) - [`get_harvester_plots_keys_missing`](./src/api/rpc/farmer/README.md#get_harvester_plots_keys_missingagent-params) - [`get_harvester_plots_duplicates`](./src/api/rpc/farmer/README.md#get_harvester_plots_duplicatesagent-params) ### Changed - `Plot` type at `cactus/harvester/harvester.py` was changed. (Removed deprecated `plot-seed` and change the type of `time_modified` to `int` from `float`) As a result, the following APIs are affected: - `get_plots` of Harvester RPC API - `on_get_plots` of Harvester WebSocket API - [`get_pool_state`](./src/api/rpc/farmer/README.md#get_pool_stateagent) - `plot_count` property is added ### Fixed - Fixed an issue where README description of `get_harvesters`(Farmer RPC API) did not reflect actual API format - Added missing `get_pool_login_link` of Farmer RPC API to `./src/api/rpc/index.ts` ## [5.0.0] ### Breaking Change - At cactus-blockchain@1.3.4, in `cactus/consensus/cost_calculator.py`, `NPCResult.npc_list` was removed and `NPCResult.conds` was added. As a result, the RPC APIs below might be incompatible between `1.3.3` and `1.3.4`. - `get_all_mempool_items` Of FullNode RPC API - `get_mempool_item_by_tx_id` Of FullNode RPC API ### Added - [New FullNode RPC API](./src/api/rpc/full_node) - [`get_coin_records_by_hint`](./src/api/rpc/full_node/README.md#get_coin_records_by_hintagent-params) - [New Wallet RPC API](./src/api/rpc/wallet) - [`select_coins`](./src/api/rpc/wallet/README.md#select_coinsagent-params) - [`get_stray_cats`](./src/api/rpc/wallet/README.md#get_stray_catsagent) ### Changed - [FullNode RPC API](./src/api/rpc/full_node) - Updated [`get_additions_and_removals`](./src/api/rpc/full_node/README.md#get_additions_and_removalsagent-params) - [Wallet RPC API](./src/api/rpc/wallet) - Updated [`get_wallets`](./src/api/rpc/wallet/README.md#get_walletsagent-params) - Updated [`pw_absorb_rewards`](./src/api/rpc/wallet/README.md#pw_absorb_rewardsagent-params) - The following APIs changed because a new property was added to `TradeRecord` class at `cactus/wallet/trade_record.py` This is not a breaking change because just adding a property is backward compatible. - [`create_offer_for_ids`](./src/api/rpc/wallet/README.md#create_offer_for_idsagent-params) - [`take_offer`](./src/api/rpc/wallet/README.md#take_offeragent-params) - [`get_offer`](./src/api/rpc/wallet/README.md#get_offeragent-params) - [`get_all_offers`](./src/api/rpc/wallet/README.md#get_all_offersagent-params) ### Fixed - Fixed issues where the following full_node RPC APIs were not exported from `api/rpc/index.ts`. - `get_coin_record_by_names` - `get_coin_records_by_parent_ids` - Fixed issues where the following wallet RPC APIs were not exported from `api/rpc/index.ts`. - `delete_unconfirmed_transactions` - Fixed an issue where README description of `get_blockchain_state` of FullNode RPC API was missing some properties. ## [4.0.0] ### Breaking Change - At cactus-blockchain@1.3.0, in `cactus/consensus/cost_calculator.py`, `NPCResult.clvm_cost` was renamed to `NPCResult.cost`. As a result, the RPC APIs below might be incompatible between `1.2.11` and `1.3.0`. - `get_all_mempool_items` Of FullNode RPC API - `get_mempool_item_by_tx_id` Of FullNode RPC API - In `cactus/pools/pool_config.py`, `authentication_public_key` was removed from `PoolWalletConfig`. As a result, the RPC APIs below might be incompatible between `1.2.11` and `1.3.0`. - `get_pool_state` of Farmer RPC API - In `cactus/types/coin_record.py`, `CoinRecord.spen