6f7498b622
* [WIP] feat: Add nv22 skeleton Addition of Network Version 22 skeleton * update FFI * feat: drand: refactor round verification * feat: sealing: Support nv22 DDO features in the sealing pipeline (#11226) * Initial work supporting DDO pieces in lotus-miner * sealing: Update pipeline input to operate on UniversalPiece * sealing: Update pipeline checks/sealing states to operate on UniversalPiece * sealing: Make pipeline build with UniversalPiece * move PieceDealInfo out of api * make gen * make sealing pipeline unit tests pass * fix itest ensemble build * don't panic in SectorsStatus with deals * stop linter from complaining about checkPieces * fix sector import tests * mod tidy * sealing: Add logic for (pre)committing DDO sectors * sealing: state-types with method defs * DDO non-snap pipeline works(?), DDO Itests * DDO support in snapdeals pipeline * make gen * update actor bundles * update the gst market fix * fix: chain: use PreCommitSectorsBatch2 when setting up genesis * some bug fixes * integration working changes * update actor bundles * Make TestOnboardRawPieceSnap pass * Appease the linter * Make deadlines test pass with v12 actors * Update go-state-types, abstract market DealState * make gen * mod tidy, lint fixes * Fix some more tests * Bump version in master Bump version in master * Make gen Make gen * fix sender * fix: lotus-provider: Fix winning PoSt * fix: sql Scan cannot write to an object * Actually show miner-addrs in info-log Actually show miner-addrs in lotus-provider info-log * [WIP] feat: Add nv22 skeleton Addition of Network Version 22 skeleton * update FFI * ddo is now nv22 * make gen * temp actor bundle with ddo * use working go-state-types * gst with v13 market migration * update bundle, builtin.MethodsMiner.ProveCommitSectors2 -> 3 * actually working v13 migration, v13 migration itest * Address review * sealing: Correct DDO snap pledge math * itests: Mixed ddo itest * pipeline: Fix sectorWeight * sealing: convert market deals into PAMs in mixed sectors * sealing: make market to ddo conversion work * fix lint * update gst * Update actors and GST to lastest integ branch * commit batcher: Update ProveCommitSectors3Params builder logic * make gen * use builtin-actors master * ddo: address review * itests: Add commd assertions to ddo tests * make gen * gst with fixed types * config knobs for RequireActivationSuccess * storage: Drop obsolete flaky tasts --------- Co-authored-by: Jennifer Wang <jiayingw703@gmail.com> Co-authored-by: Aayush <arajasek94@gmail.com> Co-authored-by: Shrenuj Bansal <shrenuj.bansal@protocol.ai> Co-authored-by: Phi <orjan.roren@gmail.com> Co-authored-by: Andrew Jackson (Ajax) <snadrus@gmail.com> Co-authored-by: TippyFlits <james.bluett@protocol.ai> * feat: implement FIP-0063 * chore: deps: update to go-multiaddr v0.12.2 (#11602) * feat: fvm: update the FVM/FFI to v4.1 (#11608) (#11612) This: 1. Adds nv22 support. 2. Updates the message tracing format. Co-authored-by: Steven Allen <steven@stebalien.com> * AggregateProofType nil when doing batch updates Use latest nv22 go-state-types version with matching update * Update to v13.0.0-rc.2 bundle * chore: Upgrade heights and codename Update upgrade heights Co-Authored-By: Steven Allen <steven@stebalien.com> * Update epoch after nv22 DRAND switch Update epoch after nv22 DRAND switch * Update Mango codename to Phoneix Make the codename for the Drand-change inline with Dragon style. * Add UpgradePhoenixHeight to API params * set UpgradePhoenixHeight to be one hour after Dragon * Make gen Make gen and UpgradePhoenixHeight in butterfly and local devnet to be in line with Calibration and Mainnet * Update epoch heights (#11637) Update epoch heights * new: add forest bootstrap nodes (#11636) Signed-off-by: samuelarogbonlo <sbayo971@gmail.com> * Merge pull request #11491 from filecoin-project/fix/remove-decommissioned-pl-bootstrap-nodes Remove PL operated bootstrap nodes from mainnet.pi * feat: api: new verified registry methods to get all allocations and claims (#11631) * new verireg methods * update changelog and add itest * update itest and cli * update new method's support till v9 * remove gateway APIs * fix cli internal var names * chore:: backport #11609 to the feat/nv22 branch (#11644) * feat: api: improve the correctness of Eth's trace_block (#11609) * Improve the correctness of Eth's trace_block - Improve encoding/decoding of parameters and return values: - Encode "native" parameters and return values with Solidity ABI. - Correctly decode parameters to "create" calls. - Use the correct (ish) output for "create" calls. - Handle all forms of "create". - Make robust with respect to reverts: - Use the actor ID/address from the trace instead of looking it up in the state-tree (may not exist in the state-tree due to a revert). - Gracefully handle failed actor/contract creation. - Improve performance: - We avoid looking anything up in the state-tree when translating the trace, which should significantly improve performance. - Improve code readability: - Remove all "backtracking" logic. - Use an "environment" struct to store temporary state instead of attaching it to the trace. - Fix random bugs: - Fix an allocation bug in the "address" logic (need to set the capacity before modifying the slice). - Improved error checking/handling. - Use correct types for `trace_block` action/results (create, call, etc.). - And use the correct types for Result/Action structs instead of reusing the same "Call" action every time. - Improve error messages. * Make gen Make gen --------- Co-authored-by: Steven Allen <steven@stebalien.com> * fix: add UpgradePhoenixHeight to StateGetNetworkParams (#11648) * chore: deps: update to go-state-types v13.0.0-rc.1 * do NOT update the cache when running the real migration * Merge pull request #11632 from hanabi1224/hm/drand-test feat: drand quicknet: allow scheduling drand quicknet upgrade before nv22 on 2k devnet * chore: deps: update to go-state-types v13.0.0-rc.2 chore: deps: update to go-state-types v13.0.0-rc.2 * feat: set migration config UpgradeEpoch for v13 actors upgrade * Built-in actor events first draft * itest for DDO non-market verified data w/ builtin actor events * Tests for builtin actor events API * Clean up DDO+Events tests, add lots of explainer comments * Minor tweaks to events types * Avoid duplicate messages when looking for receipts * Rename internal events modules for clarity * Adjust actor event API after review * s/ActorEvents/Events/g in global config * Manage event sending rate for SubscribeActorEvents * Terminate SubscribeActorEvents chan when at max height * Document future API changes * More clarity in actor event API docs * More post-review changes, lots of tests for SubscribeActorEvents Use BlockDelay as the window for receiving events on the SubscribeActorEvents channel. We expect the user to have received the initial batch of historical events (if any) in one block's time. For real-time events we expect them to not fall behind by roughly one block's time. * Remove duplicate code from actor event type marshalling tests Reduce verbosity and remove duplicate test logic from actor event types JSON marshalling tests. * Rename actor events test to follow go convention Add missing `s` to `actor_events` test file to follow golang convention used across the repo. * Run actor events table tests in deterministic order Refactor `map` usage for actor event table tests to ensure deterministic test execution order, making debugging potential issues easier. If non-determinism is a target, leverage Go's built-in parallel testing capabilities. * Reduce scope for filter removal failure when getting actor events Use a fresh context to remove the temporary filter installed solely to get the actor events. This should reduce chances of failure in a case where the original context may be expired/cancelled. Refactor removal into a `defer` statement for a more readable, concise return statement. * Use fixed RNG seed for actor event tests Improve determinism in actor event tests by using a fixed RNG seed. This makes up a more reproducible test suit. * Use provided libraries to assert eventual conditions Use the functionalities already provided by `testify` to assert eventual conditions, and remove the use of `time.Sleep`. Remove duplicate code in utility functions that are already defined. Refactor assertion helper functions to use consistent terminology: "require" implies fatal error, whereas "assert" implies error where the test may proceed executing. * Update changelog for actor events APIs * Fix concerns and docs identified by review * Update actor bundle to v13.0.0-rc3 Update actor bundle to v13.0.0-rc3 * Prep Lotus v1.26.0-rc1 - For sanity reverting the mainnet upgrade epoch to 99999999, and then only set it when cutting the final release -Update Calibnet CIDs to v13.0.0-rc3 - Add GetActorEvents, SubscribeActorEvents, GetAllClaims and GetAllAllocations methods to the changelog Co-Authored-By: Jiaying Wang <42981373+jennijuju@users.noreply.github.com> * Update CHANGELOG.md Co-authored-by: Masih H. Derkani <m@derkani.org> * Make gen Make gen * fix: beacon: validate drand change at nv16 correctly * bump to v1.26.0-rc2 * test: cleanup ddo verified itest, extract steps to functions also add allocation-removed event case * test: extract verified DDO test to separate file, add more checks * test: add additional actor events checks * Add verification for "deal-activated" actor event * docs(drand): document the meaning of "IsChained" (#11692) * Resolve conflicts I encountered multiple issues when trying to run make gen. And these changes fixed a couple of them: - go mod tidy - Remove RaftState/RaftLeader - Revert `if ts.Height() > claim.TermMax+claim.TermStart || !cctx.IsSet("expired")` to the what is in the release/v1.26.0: `if tsHeight > val.TermMax || !expired` * fixup imports, make jen * Update version Update version in master to v1.27.0-dev * Update node/impl/full/dummy.go Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com> * Adjust ListClaimsCmd Adjust ListClaimsCmd according to review --------- Signed-off-by: samuelarogbonlo <sbayo971@gmail.com> Co-authored-by: TippyFlits <james.bluett@protocol.ai> Co-authored-by: Aayush <arajasek94@gmail.com> Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com> Co-authored-by: Jennifer Wang <jiayingw703@gmail.com> Co-authored-by: Shrenuj Bansal <shrenuj.bansal@protocol.ai> Co-authored-by: Andrew Jackson (Ajax) <snadrus@gmail.com> Co-authored-by: Steven Allen <steven@stebalien.com> Co-authored-by: Rod Vagg <rod@vagg.org> Co-authored-by: Samuel Arogbonlo <47984109+samuelarogbonlo@users.noreply.github.com> Co-authored-by: LexLuthr <88259624+LexLuthr@users.noreply.github.com> Co-authored-by: tom123222 <160735201+tom123222@users.noreply.github.com> Co-authored-by: Aarsh Shah <aarshkshah1992@gmail.com> Co-authored-by: Masih H. Derkani <m@derkani.org> Co-authored-by: Jiaying Wang <42981373+jennijuju@users.noreply.github.com>
9428 lines
166 KiB
Markdown
9428 lines
166 KiB
Markdown
# Groups
|
|
* [](#)
|
|
* [Closing](#Closing)
|
|
* [Discover](#Discover)
|
|
* [Session](#Session)
|
|
* [Shutdown](#Shutdown)
|
|
* [Version](#Version)
|
|
* [Auth](#Auth)
|
|
* [AuthNew](#AuthNew)
|
|
* [AuthVerify](#AuthVerify)
|
|
* [Chain](#Chain)
|
|
* [ChainBlockstoreInfo](#ChainBlockstoreInfo)
|
|
* [ChainCheckBlockstore](#ChainCheckBlockstore)
|
|
* [ChainDeleteObj](#ChainDeleteObj)
|
|
* [ChainExport](#ChainExport)
|
|
* [ChainExportRangeInternal](#ChainExportRangeInternal)
|
|
* [ChainGetBlock](#ChainGetBlock)
|
|
* [ChainGetBlockMessages](#ChainGetBlockMessages)
|
|
* [ChainGetEvents](#ChainGetEvents)
|
|
* [ChainGetGenesis](#ChainGetGenesis)
|
|
* [ChainGetMessage](#ChainGetMessage)
|
|
* [ChainGetMessagesInTipset](#ChainGetMessagesInTipset)
|
|
* [ChainGetNode](#ChainGetNode)
|
|
* [ChainGetParentMessages](#ChainGetParentMessages)
|
|
* [ChainGetParentReceipts](#ChainGetParentReceipts)
|
|
* [ChainGetPath](#ChainGetPath)
|
|
* [ChainGetTipSet](#ChainGetTipSet)
|
|
* [ChainGetTipSetAfterHeight](#ChainGetTipSetAfterHeight)
|
|
* [ChainGetTipSetByHeight](#ChainGetTipSetByHeight)
|
|
* [ChainHasObj](#ChainHasObj)
|
|
* [ChainHead](#ChainHead)
|
|
* [ChainHotGC](#ChainHotGC)
|
|
* [ChainNotify](#ChainNotify)
|
|
* [ChainPrune](#ChainPrune)
|
|
* [ChainPutObj](#ChainPutObj)
|
|
* [ChainReadObj](#ChainReadObj)
|
|
* [ChainSetHead](#ChainSetHead)
|
|
* [ChainStatObj](#ChainStatObj)
|
|
* [ChainTipSetWeight](#ChainTipSetWeight)
|
|
* [Client](#Client)
|
|
* [ClientCalcCommP](#ClientCalcCommP)
|
|
* [ClientCancelDataTransfer](#ClientCancelDataTransfer)
|
|
* [ClientCancelRetrievalDeal](#ClientCancelRetrievalDeal)
|
|
* [ClientDataTransferUpdates](#ClientDataTransferUpdates)
|
|
* [ClientDealPieceCID](#ClientDealPieceCID)
|
|
* [ClientDealSize](#ClientDealSize)
|
|
* [ClientExport](#ClientExport)
|
|
* [ClientFindData](#ClientFindData)
|
|
* [ClientGenCar](#ClientGenCar)
|
|
* [ClientGetDealInfo](#ClientGetDealInfo)
|
|
* [ClientGetDealStatus](#ClientGetDealStatus)
|
|
* [ClientGetDealUpdates](#ClientGetDealUpdates)
|
|
* [ClientGetRetrievalUpdates](#ClientGetRetrievalUpdates)
|
|
* [ClientHasLocal](#ClientHasLocal)
|
|
* [ClientImport](#ClientImport)
|
|
* [ClientListDataTransfers](#ClientListDataTransfers)
|
|
* [ClientListDeals](#ClientListDeals)
|
|
* [ClientListImports](#ClientListImports)
|
|
* [ClientListRetrievals](#ClientListRetrievals)
|
|
* [ClientMinerQueryOffer](#ClientMinerQueryOffer)
|
|
* [ClientQueryAsk](#ClientQueryAsk)
|
|
* [ClientRemoveImport](#ClientRemoveImport)
|
|
* [ClientRestartDataTransfer](#ClientRestartDataTransfer)
|
|
* [ClientRetrieve](#ClientRetrieve)
|
|
* [ClientRetrieveTryRestartInsufficientFunds](#ClientRetrieveTryRestartInsufficientFunds)
|
|
* [ClientRetrieveWait](#ClientRetrieveWait)
|
|
* [ClientStartDeal](#ClientStartDeal)
|
|
* [ClientStatelessDeal](#ClientStatelessDeal)
|
|
* [Create](#Create)
|
|
* [CreateBackup](#CreateBackup)
|
|
* [Eth](#Eth)
|
|
* [EthAccounts](#EthAccounts)
|
|
* [EthAddressToFilecoinAddress](#EthAddressToFilecoinAddress)
|
|
* [EthBlockNumber](#EthBlockNumber)
|
|
* [EthCall](#EthCall)
|
|
* [EthChainId](#EthChainId)
|
|
* [EthEstimateGas](#EthEstimateGas)
|
|
* [EthFeeHistory](#EthFeeHistory)
|
|
* [EthGasPrice](#EthGasPrice)
|
|
* [EthGetBalance](#EthGetBalance)
|
|
* [EthGetBlockByHash](#EthGetBlockByHash)
|
|
* [EthGetBlockByNumber](#EthGetBlockByNumber)
|
|
* [EthGetBlockTransactionCountByHash](#EthGetBlockTransactionCountByHash)
|
|
* [EthGetBlockTransactionCountByNumber](#EthGetBlockTransactionCountByNumber)
|
|
* [EthGetCode](#EthGetCode)
|
|
* [EthGetFilterChanges](#EthGetFilterChanges)
|
|
* [EthGetFilterLogs](#EthGetFilterLogs)
|
|
* [EthGetLogs](#EthGetLogs)
|
|
* [EthGetMessageCidByTransactionHash](#EthGetMessageCidByTransactionHash)
|
|
* [EthGetStorageAt](#EthGetStorageAt)
|
|
* [EthGetTransactionByBlockHashAndIndex](#EthGetTransactionByBlockHashAndIndex)
|
|
* [EthGetTransactionByBlockNumberAndIndex](#EthGetTransactionByBlockNumberAndIndex)
|
|
* [EthGetTransactionByHash](#EthGetTransactionByHash)
|
|
* [EthGetTransactionByHashLimited](#EthGetTransactionByHashLimited)
|
|
* [EthGetTransactionCount](#EthGetTransactionCount)
|
|
* [EthGetTransactionHashByCid](#EthGetTransactionHashByCid)
|
|
* [EthGetTransactionReceipt](#EthGetTransactionReceipt)
|
|
* [EthGetTransactionReceiptLimited](#EthGetTransactionReceiptLimited)
|
|
* [EthMaxPriorityFeePerGas](#EthMaxPriorityFeePerGas)
|
|
* [EthNewBlockFilter](#EthNewBlockFilter)
|
|
* [EthNewFilter](#EthNewFilter)
|
|
* [EthNewPendingTransactionFilter](#EthNewPendingTransactionFilter)
|
|
* [EthProtocolVersion](#EthProtocolVersion)
|
|
* [EthSendRawTransaction](#EthSendRawTransaction)
|
|
* [EthSubscribe](#EthSubscribe)
|
|
* [EthSyncing](#EthSyncing)
|
|
* [EthTraceBlock](#EthTraceBlock)
|
|
* [EthTraceReplayBlockTransactions](#EthTraceReplayBlockTransactions)
|
|
* [EthUninstallFilter](#EthUninstallFilter)
|
|
* [EthUnsubscribe](#EthUnsubscribe)
|
|
* [Filecoin](#Filecoin)
|
|
* [FilecoinAddressToEthAddress](#FilecoinAddressToEthAddress)
|
|
* [Gas](#Gas)
|
|
* [GasEstimateFeeCap](#GasEstimateFeeCap)
|
|
* [GasEstimateGasLimit](#GasEstimateGasLimit)
|
|
* [GasEstimateGasPremium](#GasEstimateGasPremium)
|
|
* [GasEstimateMessageGas](#GasEstimateMessageGas)
|
|
* [Get](#Get)
|
|
* [GetActorEvents](#GetActorEvents)
|
|
* [I](#I)
|
|
* [ID](#ID)
|
|
* [Log](#Log)
|
|
* [LogAlerts](#LogAlerts)
|
|
* [LogList](#LogList)
|
|
* [LogSetLevel](#LogSetLevel)
|
|
* [Market](#Market)
|
|
* [MarketAddBalance](#MarketAddBalance)
|
|
* [MarketGetReserved](#MarketGetReserved)
|
|
* [MarketReleaseFunds](#MarketReleaseFunds)
|
|
* [MarketReserveFunds](#MarketReserveFunds)
|
|
* [MarketWithdraw](#MarketWithdraw)
|
|
* [Miner](#Miner)
|
|
* [MinerCreateBlock](#MinerCreateBlock)
|
|
* [MinerGetBaseInfo](#MinerGetBaseInfo)
|
|
* [Mpool](#Mpool)
|
|
* [MpoolBatchPush](#MpoolBatchPush)
|
|
* [MpoolBatchPushMessage](#MpoolBatchPushMessage)
|
|
* [MpoolBatchPushUntrusted](#MpoolBatchPushUntrusted)
|
|
* [MpoolCheckMessages](#MpoolCheckMessages)
|
|
* [MpoolCheckPendingMessages](#MpoolCheckPendingMessages)
|
|
* [MpoolCheckReplaceMessages](#MpoolCheckReplaceMessages)
|
|
* [MpoolClear](#MpoolClear)
|
|
* [MpoolGetConfig](#MpoolGetConfig)
|
|
* [MpoolGetNonce](#MpoolGetNonce)
|
|
* [MpoolPending](#MpoolPending)
|
|
* [MpoolPush](#MpoolPush)
|
|
* [MpoolPushMessage](#MpoolPushMessage)
|
|
* [MpoolPushUntrusted](#MpoolPushUntrusted)
|
|
* [MpoolSelect](#MpoolSelect)
|
|
* [MpoolSetConfig](#MpoolSetConfig)
|
|
* [MpoolSub](#MpoolSub)
|
|
* [Msig](#Msig)
|
|
* [MsigAddApprove](#MsigAddApprove)
|
|
* [MsigAddCancel](#MsigAddCancel)
|
|
* [MsigAddPropose](#MsigAddPropose)
|
|
* [MsigApprove](#MsigApprove)
|
|
* [MsigApproveTxnHash](#MsigApproveTxnHash)
|
|
* [MsigCancel](#MsigCancel)
|
|
* [MsigCancelTxnHash](#MsigCancelTxnHash)
|
|
* [MsigCreate](#MsigCreate)
|
|
* [MsigGetAvailableBalance](#MsigGetAvailableBalance)
|
|
* [MsigGetPending](#MsigGetPending)
|
|
* [MsigGetVested](#MsigGetVested)
|
|
* [MsigGetVestingSchedule](#MsigGetVestingSchedule)
|
|
* [MsigPropose](#MsigPropose)
|
|
* [MsigRemoveSigner](#MsigRemoveSigner)
|
|
* [MsigSwapApprove](#MsigSwapApprove)
|
|
* [MsigSwapCancel](#MsigSwapCancel)
|
|
* [MsigSwapPropose](#MsigSwapPropose)
|
|
* [Net](#Net)
|
|
* [NetAddrsListen](#NetAddrsListen)
|
|
* [NetAgentVersion](#NetAgentVersion)
|
|
* [NetAutoNatStatus](#NetAutoNatStatus)
|
|
* [NetBandwidthStats](#NetBandwidthStats)
|
|
* [NetBandwidthStatsByPeer](#NetBandwidthStatsByPeer)
|
|
* [NetBandwidthStatsByProtocol](#NetBandwidthStatsByProtocol)
|
|
* [NetBlockAdd](#NetBlockAdd)
|
|
* [NetBlockList](#NetBlockList)
|
|
* [NetBlockRemove](#NetBlockRemove)
|
|
* [NetConnect](#NetConnect)
|
|
* [NetConnectedness](#NetConnectedness)
|
|
* [NetDisconnect](#NetDisconnect)
|
|
* [NetFindPeer](#NetFindPeer)
|
|
* [NetLimit](#NetLimit)
|
|
* [NetListening](#NetListening)
|
|
* [NetPeerInfo](#NetPeerInfo)
|
|
* [NetPeers](#NetPeers)
|
|
* [NetPing](#NetPing)
|
|
* [NetProtectAdd](#NetProtectAdd)
|
|
* [NetProtectList](#NetProtectList)
|
|
* [NetProtectRemove](#NetProtectRemove)
|
|
* [NetPubsubScores](#NetPubsubScores)
|
|
* [NetSetLimit](#NetSetLimit)
|
|
* [NetStat](#NetStat)
|
|
* [NetVersion](#NetVersion)
|
|
* [Node](#Node)
|
|
* [NodeStatus](#NodeStatus)
|
|
* [Paych](#Paych)
|
|
* [PaychAllocateLane](#PaychAllocateLane)
|
|
* [PaychAvailableFunds](#PaychAvailableFunds)
|
|
* [PaychAvailableFundsByFromTo](#PaychAvailableFundsByFromTo)
|
|
* [PaychCollect](#PaychCollect)
|
|
* [PaychFund](#PaychFund)
|
|
* [PaychGet](#PaychGet)
|
|
* [PaychGetWaitReady](#PaychGetWaitReady)
|
|
* [PaychList](#PaychList)
|
|
* [PaychNewPayment](#PaychNewPayment)
|
|
* [PaychSettle](#PaychSettle)
|
|
* [PaychStatus](#PaychStatus)
|
|
* [PaychVoucherAdd](#PaychVoucherAdd)
|
|
* [PaychVoucherCheckSpendable](#PaychVoucherCheckSpendable)
|
|
* [PaychVoucherCheckValid](#PaychVoucherCheckValid)
|
|
* [PaychVoucherCreate](#PaychVoucherCreate)
|
|
* [PaychVoucherList](#PaychVoucherList)
|
|
* [PaychVoucherSubmit](#PaychVoucherSubmit)
|
|
* [Start](#Start)
|
|
* [StartTime](#StartTime)
|
|
* [State](#State)
|
|
* [StateAccountKey](#StateAccountKey)
|
|
* [StateActorCodeCIDs](#StateActorCodeCIDs)
|
|
* [StateActorManifestCID](#StateActorManifestCID)
|
|
* [StateAllMinerFaults](#StateAllMinerFaults)
|
|
* [StateCall](#StateCall)
|
|
* [StateChangedActors](#StateChangedActors)
|
|
* [StateCirculatingSupply](#StateCirculatingSupply)
|
|
* [StateCompute](#StateCompute)
|
|
* [StateComputeDataCID](#StateComputeDataCID)
|
|
* [StateDealProviderCollateralBounds](#StateDealProviderCollateralBounds)
|
|
* [StateDecodeParams](#StateDecodeParams)
|
|
* [StateEncodeParams](#StateEncodeParams)
|
|
* [StateGetActor](#StateGetActor)
|
|
* [StateGetAllAllocations](#StateGetAllAllocations)
|
|
* [StateGetAllClaims](#StateGetAllClaims)
|
|
* [StateGetAllocation](#StateGetAllocation)
|
|
* [StateGetAllocationForPendingDeal](#StateGetAllocationForPendingDeal)
|
|
* [StateGetAllocationIdForPendingDeal](#StateGetAllocationIdForPendingDeal)
|
|
* [StateGetAllocations](#StateGetAllocations)
|
|
* [StateGetBeaconEntry](#StateGetBeaconEntry)
|
|
* [StateGetClaim](#StateGetClaim)
|
|
* [StateGetClaims](#StateGetClaims)
|
|
* [StateGetNetworkParams](#StateGetNetworkParams)
|
|
* [StateGetRandomnessDigestFromBeacon](#StateGetRandomnessDigestFromBeacon)
|
|
* [StateGetRandomnessDigestFromTickets](#StateGetRandomnessDigestFromTickets)
|
|
* [StateGetRandomnessFromBeacon](#StateGetRandomnessFromBeacon)
|
|
* [StateGetRandomnessFromTickets](#StateGetRandomnessFromTickets)
|
|
* [StateListActors](#StateListActors)
|
|
* [StateListMessages](#StateListMessages)
|
|
* [StateListMiners](#StateListMiners)
|
|
* [StateLookupID](#StateLookupID)
|
|
* [StateLookupRobustAddress](#StateLookupRobustAddress)
|
|
* [StateMarketBalance](#StateMarketBalance)
|
|
* [StateMarketDeals](#StateMarketDeals)
|
|
* [StateMarketParticipants](#StateMarketParticipants)
|
|
* [StateMarketStorageDeal](#StateMarketStorageDeal)
|
|
* [StateMinerActiveSectors](#StateMinerActiveSectors)
|
|
* [StateMinerAllocated](#StateMinerAllocated)
|
|
* [StateMinerAvailableBalance](#StateMinerAvailableBalance)
|
|
* [StateMinerDeadlines](#StateMinerDeadlines)
|
|
* [StateMinerFaults](#StateMinerFaults)
|
|
* [StateMinerInfo](#StateMinerInfo)
|
|
* [StateMinerInitialPledgeCollateral](#StateMinerInitialPledgeCollateral)
|
|
* [StateMinerPartitions](#StateMinerPartitions)
|
|
* [StateMinerPower](#StateMinerPower)
|
|
* [StateMinerPreCommitDepositForPower](#StateMinerPreCommitDepositForPower)
|
|
* [StateMinerProvingDeadline](#StateMinerProvingDeadline)
|
|
* [StateMinerRecoveries](#StateMinerRecoveries)
|
|
* [StateMinerSectorAllocated](#StateMinerSectorAllocated)
|
|
* [StateMinerSectorCount](#StateMinerSectorCount)
|
|
* [StateMinerSectors](#StateMinerSectors)
|
|
* [StateNetworkName](#StateNetworkName)
|
|
* [StateNetworkVersion](#StateNetworkVersion)
|
|
* [StateReadState](#StateReadState)
|
|
* [StateReplay](#StateReplay)
|
|
* [StateSearchMsg](#StateSearchMsg)
|
|
* [StateSectorExpiration](#StateSectorExpiration)
|
|
* [StateSectorGetInfo](#StateSectorGetInfo)
|
|
* [StateSectorPartition](#StateSectorPartition)
|
|
* [StateSectorPreCommitInfo](#StateSectorPreCommitInfo)
|
|
* [StateVMCirculatingSupplyInternal](#StateVMCirculatingSupplyInternal)
|
|
* [StateVerifiedClientStatus](#StateVerifiedClientStatus)
|
|
* [StateVerifiedRegistryRootKey](#StateVerifiedRegistryRootKey)
|
|
* [StateVerifierStatus](#StateVerifierStatus)
|
|
* [StateWaitMsg](#StateWaitMsg)
|
|
* [Subscribe](#Subscribe)
|
|
* [SubscribeActorEvents](#SubscribeActorEvents)
|
|
* [Sync](#Sync)
|
|
* [SyncCheckBad](#SyncCheckBad)
|
|
* [SyncCheckpoint](#SyncCheckpoint)
|
|
* [SyncIncomingBlocks](#SyncIncomingBlocks)
|
|
* [SyncMarkBad](#SyncMarkBad)
|
|
* [SyncState](#SyncState)
|
|
* [SyncSubmitBlock](#SyncSubmitBlock)
|
|
* [SyncUnmarkAllBad](#SyncUnmarkAllBad)
|
|
* [SyncUnmarkBad](#SyncUnmarkBad)
|
|
* [SyncValidateTipset](#SyncValidateTipset)
|
|
* [Wallet](#Wallet)
|
|
* [WalletBalance](#WalletBalance)
|
|
* [WalletDefaultAddress](#WalletDefaultAddress)
|
|
* [WalletDelete](#WalletDelete)
|
|
* [WalletExport](#WalletExport)
|
|
* [WalletHas](#WalletHas)
|
|
* [WalletImport](#WalletImport)
|
|
* [WalletList](#WalletList)
|
|
* [WalletNew](#WalletNew)
|
|
* [WalletSetDefault](#WalletSetDefault)
|
|
* [WalletSign](#WalletSign)
|
|
* [WalletSignMessage](#WalletSignMessage)
|
|
* [WalletValidateAddress](#WalletValidateAddress)
|
|
* [WalletVerify](#WalletVerify)
|
|
* [Web3](#Web3)
|
|
* [Web3ClientVersion](#Web3ClientVersion)
|
|
##
|
|
|
|
|
|
### Closing
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `{}`
|
|
|
|
### Discover
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"info": {
|
|
"title": "Lotus RPC API",
|
|
"version": "1.2.1/generated=2020-11-22T08:22:42-06:00"
|
|
},
|
|
"methods": [],
|
|
"openrpc": "1.2.6"
|
|
}
|
|
```
|
|
|
|
### Session
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `"07070707-0707-0707-0707-070707070707"`
|
|
|
|
### Shutdown
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `{}`
|
|
|
|
### Version
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Version": "string value",
|
|
"APIVersion": 131840,
|
|
"BlockDelay": 42
|
|
}
|
|
```
|
|
|
|
## Auth
|
|
|
|
|
|
### AuthNew
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
"write"
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"Ynl0ZSBhcnJheQ=="`
|
|
|
|
### AuthVerify
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"string value"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
"write"
|
|
]
|
|
```
|
|
|
|
## Chain
|
|
The Chain method group contains methods for interacting with the
|
|
blockchain, but that do not require any form of state computation.
|
|
|
|
|
|
### ChainBlockstoreInfo
|
|
ChainBlockstoreInfo returns some basic information about the blockstore
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"abc": 123
|
|
}
|
|
```
|
|
|
|
### ChainCheckBlockstore
|
|
ChainCheckBlockstore performs an (asynchronous) health check on the chain/state blockstore
|
|
if supported by the underlying implementation.
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `{}`
|
|
|
|
### ChainDeleteObj
|
|
ChainDeleteObj deletes node referenced by the given CID
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### ChainExport
|
|
ChainExport returns a stream of bytes with CAR dump of chain data.
|
|
The exported chain data includes the header chain from the given tipset
|
|
back to genesis, the entire genesis state, and the most recent 'nroots'
|
|
state trees.
|
|
If oldmsgskip is set, messages from before the requested roots are also not included.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
10101,
|
|
true,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"Ynl0ZSBhcnJheQ=="`
|
|
|
|
### ChainExportRangeInternal
|
|
ChainExportRangeInternal triggers the export of a chain
|
|
CAR-snapshot directly to disk. It is similar to ChainExport,
|
|
except, depending on options, the snapshot can include receipts,
|
|
messages and stateroots for the length between the specified head
|
|
and tail, thus producing "archival-grade" snapshots that include
|
|
all the on-chain data. The header chain is included back to
|
|
genesis and these snapshots can be used to initialize Filecoin
|
|
nodes.
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
],
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
],
|
|
{
|
|
"WriteBufferSize": 123,
|
|
"NumWorkers": 123,
|
|
"IncludeMessages": true,
|
|
"IncludeReceipts": true,
|
|
"IncludeStateRoots": true
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### ChainGetBlock
|
|
ChainGetBlock returns the block specified by the given CID.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Miner": "f01234",
|
|
"Ticket": {
|
|
"VRFProof": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"ElectionProof": {
|
|
"WinCount": 9,
|
|
"VRFProof": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"BeaconEntries": [
|
|
{
|
|
"Round": 42,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
],
|
|
"WinPoStProof": [
|
|
{
|
|
"PoStProof": 8,
|
|
"ProofBytes": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
],
|
|
"Parents": [
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
],
|
|
"ParentWeight": "0",
|
|
"Height": 10101,
|
|
"ParentStateRoot": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"ParentMessageReceipts": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Messages": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"BLSAggregate": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"Timestamp": 42,
|
|
"BlockSig": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"ForkSignaling": 42,
|
|
"ParentBaseFee": "0"
|
|
}
|
|
```
|
|
|
|
### ChainGetBlockMessages
|
|
ChainGetBlockMessages returns messages stored in the specified block.
|
|
|
|
Note: If there are multiple blocks in a tipset, it's likely that some
|
|
messages will be duplicated. It's also possible for blocks in a tipset to have
|
|
different messages from the same sender at the same nonce. When that happens,
|
|
only the first message (in a block with lowest ticket) will be considered
|
|
for execution
|
|
|
|
NOTE: THIS METHOD SHOULD ONLY BE USED FOR GETTING MESSAGES IN A SPECIFIC BLOCK
|
|
|
|
DO NOT USE THIS METHOD TO GET MESSAGES INCLUDED IN A TIPSET
|
|
Use ChainGetParentMessages, which will perform correct message deduplication
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"BlsMessages": [
|
|
{
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
],
|
|
"SecpkMessages": [
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
],
|
|
"Cids": [
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
### ChainGetEvents
|
|
ChainGetEvents returns the events under an event AMT root CID.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"Emitter": 1000,
|
|
"Entries": [
|
|
{
|
|
"Flags": 7,
|
|
"Key": "string value",
|
|
"Codec": 42,
|
|
"Value": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
]
|
|
}
|
|
]
|
|
```
|
|
|
|
### ChainGetGenesis
|
|
ChainGetGenesis returns the genesis tipset.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Cids": null,
|
|
"Blocks": null,
|
|
"Height": 0
|
|
}
|
|
```
|
|
|
|
### ChainGetMessage
|
|
ChainGetMessage reads a message referenced by the specified CID from the
|
|
chain blockstore.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
```
|
|
|
|
### ChainGetMessagesInTipset
|
|
ChainGetMessagesInTipset returns message stores in current tipset
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"Cid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
### ChainGetNode
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"string value"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Cid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Obj": {}
|
|
}
|
|
```
|
|
|
|
### ChainGetParentMessages
|
|
ChainGetParentMessages returns messages stored in parent tipset of the
|
|
specified block.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"Cid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
### ChainGetParentReceipts
|
|
ChainGetParentReceipts returns receipts for messages in parent tipset of
|
|
the specified block. The receipts in the list returned is one-to-one with the
|
|
messages returned by a call to ChainGetParentMessages with the same blockCid.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"ExitCode": 0,
|
|
"Return": "Ynl0ZSBhcnJheQ==",
|
|
"GasUsed": 9,
|
|
"EventsRoot": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
### ChainGetPath
|
|
ChainGetPath returns a set of revert/apply operations needed to get from
|
|
one tipset to another, for example:
|
|
```
|
|
to
|
|
^
|
|
from tAA
|
|
^ ^
|
|
tBA tAB
|
|
^---*--^
|
|
^
|
|
tRR
|
|
```
|
|
Would return `[revert(tBA), apply(tAB), apply(tAA)]`
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
],
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"Type": "string value",
|
|
"Val": {
|
|
"Cids": null,
|
|
"Blocks": null,
|
|
"Height": 0
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
### ChainGetTipSet
|
|
ChainGetTipSet returns the tipset specified by the given TipSetKey.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Cids": null,
|
|
"Blocks": null,
|
|
"Height": 0
|
|
}
|
|
```
|
|
|
|
### ChainGetTipSetAfterHeight
|
|
ChainGetTipSetAfterHeight looks back for a tipset at the specified epoch.
|
|
If there are no blocks at the specified epoch, the first non-nil tipset at a later epoch
|
|
will be returned.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
10101,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Cids": null,
|
|
"Blocks": null,
|
|
"Height": 0
|
|
}
|
|
```
|
|
|
|
### ChainGetTipSetByHeight
|
|
ChainGetTipSetByHeight looks back for a tipset at the specified epoch.
|
|
If there are no blocks at the specified epoch, a tipset at an earlier epoch
|
|
will be returned.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
10101,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Cids": null,
|
|
"Blocks": null,
|
|
"Height": 0
|
|
}
|
|
```
|
|
|
|
### ChainHasObj
|
|
ChainHasObj checks if a given CID exists in the chain blockstore.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `true`
|
|
|
|
### ChainHead
|
|
ChainHead returns the current head of the chain.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Cids": null,
|
|
"Blocks": null,
|
|
"Height": 0
|
|
}
|
|
```
|
|
|
|
### ChainHotGC
|
|
ChainHotGC does online (badger) GC on the hot store; only supported if you are using
|
|
the splitstore
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Threshold": 12.3,
|
|
"Periodic": true,
|
|
"Moving": true
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### ChainNotify
|
|
ChainNotify returns channel with chain head updates.
|
|
First message is guaranteed to be of len == 1, and type == 'current'.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"Type": "string value",
|
|
"Val": {
|
|
"Cids": null,
|
|
"Blocks": null,
|
|
"Height": 0
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
### ChainPrune
|
|
ChainPrune forces compaction on cold store and garbage collects; only supported if you
|
|
are using the splitstore
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"MovingGC": true,
|
|
"RetainState": 9
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### ChainPutObj
|
|
ChainPutObj puts a given object into the block store
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{}
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### ChainReadObj
|
|
ChainReadObj reads ipld nodes referenced by the specified CID from chain
|
|
blockstore and returns raw bytes.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `"Ynl0ZSBhcnJheQ=="`
|
|
|
|
### ChainSetHead
|
|
ChainSetHead forcefully sets current chain head. Use with caution.
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### ChainStatObj
|
|
ChainStatObj returns statistics about the graph referenced by 'obj'.
|
|
If 'base' is also specified, then the returned stat will be a diff
|
|
between the two objects.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Size": 42,
|
|
"Links": 42
|
|
}
|
|
```
|
|
|
|
### ChainTipSetWeight
|
|
ChainTipSetWeight computes weight for the specified tipset.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"0"`
|
|
|
|
## Client
|
|
The Client methods all have to do with interacting with the storage and
|
|
retrieval markets as a client
|
|
|
|
|
|
### ClientCalcCommP
|
|
ClientCalcCommP calculates the CommP for a specified file
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"string value"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Root": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Size": 1024
|
|
}
|
|
```
|
|
|
|
### ClientCancelDataTransfer
|
|
ClientCancelDataTransfer cancels a data transfer with the given transfer ID and other peer
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
3,
|
|
"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
true
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### ClientCancelRetrievalDeal
|
|
ClientCancelRetrievalDeal cancels an ongoing retrieval deal based on DealID
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
5
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### ClientDataTransferUpdates
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"TransferID": 3,
|
|
"Status": 1,
|
|
"BaseCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"IsInitiator": true,
|
|
"IsSender": true,
|
|
"Voucher": "string value",
|
|
"Message": "string value",
|
|
"OtherPeer": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Transferred": 42,
|
|
"Stages": {
|
|
"Stages": [
|
|
{
|
|
"Name": "string value",
|
|
"Description": "string value",
|
|
"CreatedTime": "0001-01-01T00:00:00Z",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z",
|
|
"Logs": [
|
|
{
|
|
"Log": "string value",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|
|
```
|
|
|
|
### ClientDealPieceCID
|
|
ClientCalcCommP calculates the CommP and data size of the specified CID
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"PayloadSize": 9,
|
|
"PieceSize": 1032,
|
|
"PieceCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
}
|
|
```
|
|
|
|
### ClientDealSize
|
|
ClientDealSize calculates real deal data size
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"PayloadSize": 9,
|
|
"PieceSize": 1032
|
|
}
|
|
```
|
|
|
|
### ClientExport
|
|
ClientExport exports a file stored in the local filestore to a system file
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Root": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"DAGs": [
|
|
{
|
|
"DataSelector": "Links/21/Hash/Links/42/Hash",
|
|
"ExportMerkleProof": true
|
|
}
|
|
],
|
|
"FromLocalCAR": "string value",
|
|
"DealID": 5
|
|
},
|
|
{
|
|
"Path": "string value",
|
|
"IsCAR": true
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### ClientFindData
|
|
ClientFindData identifies peers that have a certain file, and returns QueryOffers (one per peer).
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"Err": "string value",
|
|
"Root": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Piece": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Size": 42,
|
|
"MinPrice": "0",
|
|
"UnsealPrice": "0",
|
|
"PricePerByte": "0",
|
|
"PaymentInterval": 42,
|
|
"PaymentIntervalIncrease": 42,
|
|
"Miner": "f01234",
|
|
"MinerPeer": {
|
|
"Address": "f01234",
|
|
"ID": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"PieceCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
### ClientGenCar
|
|
ClientGenCar generates a CAR file for the specified file.
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Path": "string value",
|
|
"IsCAR": true
|
|
},
|
|
"string value"
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### ClientGetDealInfo
|
|
ClientGetDealInfo returns the latest information about a given deal.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"ProposalCid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"State": 42,
|
|
"Message": "string value",
|
|
"DealStages": {
|
|
"Stages": [
|
|
{
|
|
"Name": "string value",
|
|
"Description": "string value",
|
|
"ExpectedDuration": "string value",
|
|
"CreatedTime": "0001-01-01T00:00:00Z",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z",
|
|
"Logs": [
|
|
{
|
|
"Log": "string value",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"Provider": "f01234",
|
|
"DataRef": {
|
|
"TransferType": "string value",
|
|
"Root": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"PieceCid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"PieceSize": 1024,
|
|
"RawBlockSize": 42
|
|
},
|
|
"PieceCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Size": 42,
|
|
"PricePerEpoch": "0",
|
|
"Duration": 42,
|
|
"DealID": 5432,
|
|
"CreationTime": "0001-01-01T00:00:00Z",
|
|
"Verified": true,
|
|
"TransferChannelID": {
|
|
"Initiator": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Responder": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"ID": 3
|
|
},
|
|
"DataTransfer": {
|
|
"TransferID": 3,
|
|
"Status": 1,
|
|
"BaseCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"IsInitiator": true,
|
|
"IsSender": true,
|
|
"Voucher": "string value",
|
|
"Message": "string value",
|
|
"OtherPeer": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Transferred": 42,
|
|
"Stages": {
|
|
"Stages": [
|
|
{
|
|
"Name": "string value",
|
|
"Description": "string value",
|
|
"CreatedTime": "0001-01-01T00:00:00Z",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z",
|
|
"Logs": [
|
|
{
|
|
"Log": "string value",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### ClientGetDealStatus
|
|
ClientGetDealStatus returns status given a code
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
42
|
|
]
|
|
```
|
|
|
|
Response: `"string value"`
|
|
|
|
### ClientGetDealUpdates
|
|
ClientGetDealUpdates returns the status of updated deals
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"ProposalCid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"State": 42,
|
|
"Message": "string value",
|
|
"DealStages": {
|
|
"Stages": [
|
|
{
|
|
"Name": "string value",
|
|
"Description": "string value",
|
|
"ExpectedDuration": "string value",
|
|
"CreatedTime": "0001-01-01T00:00:00Z",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z",
|
|
"Logs": [
|
|
{
|
|
"Log": "string value",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"Provider": "f01234",
|
|
"DataRef": {
|
|
"TransferType": "string value",
|
|
"Root": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"PieceCid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"PieceSize": 1024,
|
|
"RawBlockSize": 42
|
|
},
|
|
"PieceCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Size": 42,
|
|
"PricePerEpoch": "0",
|
|
"Duration": 42,
|
|
"DealID": 5432,
|
|
"CreationTime": "0001-01-01T00:00:00Z",
|
|
"Verified": true,
|
|
"TransferChannelID": {
|
|
"Initiator": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Responder": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"ID": 3
|
|
},
|
|
"DataTransfer": {
|
|
"TransferID": 3,
|
|
"Status": 1,
|
|
"BaseCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"IsInitiator": true,
|
|
"IsSender": true,
|
|
"Voucher": "string value",
|
|
"Message": "string value",
|
|
"OtherPeer": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Transferred": 42,
|
|
"Stages": {
|
|
"Stages": [
|
|
{
|
|
"Name": "string value",
|
|
"Description": "string value",
|
|
"CreatedTime": "0001-01-01T00:00:00Z",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z",
|
|
"Logs": [
|
|
{
|
|
"Log": "string value",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### ClientGetRetrievalUpdates
|
|
ClientGetRetrievalUpdates returns status of updated retrieval deals
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"PayloadCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"ID": 5,
|
|
"PieceCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"PricePerByte": "0",
|
|
"UnsealPrice": "0",
|
|
"Status": 0,
|
|
"Message": "string value",
|
|
"Provider": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"BytesReceived": 42,
|
|
"BytesPaidFor": 42,
|
|
"TotalPaid": "0",
|
|
"TransferChannelID": {
|
|
"Initiator": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Responder": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"ID": 3
|
|
},
|
|
"DataTransfer": {
|
|
"TransferID": 3,
|
|
"Status": 1,
|
|
"BaseCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"IsInitiator": true,
|
|
"IsSender": true,
|
|
"Voucher": "string value",
|
|
"Message": "string value",
|
|
"OtherPeer": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Transferred": 42,
|
|
"Stages": {
|
|
"Stages": [
|
|
{
|
|
"Name": "string value",
|
|
"Description": "string value",
|
|
"CreatedTime": "0001-01-01T00:00:00Z",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z",
|
|
"Logs": [
|
|
{
|
|
"Log": "string value",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"Event": 5
|
|
}
|
|
```
|
|
|
|
### ClientHasLocal
|
|
ClientHasLocal indicates whether a certain CID is locally stored.
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `true`
|
|
|
|
### ClientImport
|
|
ClientImport imports file under the specified path into filestore.
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Path": "string value",
|
|
"IsCAR": true
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Root": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"ImportID": 50
|
|
}
|
|
```
|
|
|
|
### ClientListDataTransfers
|
|
ClientListTransfers returns the status of all ongoing transfers of data
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"TransferID": 3,
|
|
"Status": 1,
|
|
"BaseCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"IsInitiator": true,
|
|
"IsSender": true,
|
|
"Voucher": "string value",
|
|
"Message": "string value",
|
|
"OtherPeer": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Transferred": 42,
|
|
"Stages": {
|
|
"Stages": [
|
|
{
|
|
"Name": "string value",
|
|
"Description": "string value",
|
|
"CreatedTime": "0001-01-01T00:00:00Z",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z",
|
|
"Logs": [
|
|
{
|
|
"Log": "string value",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
### ClientListDeals
|
|
ClientListDeals returns information about the deals made by the local client.
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"ProposalCid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"State": 42,
|
|
"Message": "string value",
|
|
"DealStages": {
|
|
"Stages": [
|
|
{
|
|
"Name": "string value",
|
|
"Description": "string value",
|
|
"ExpectedDuration": "string value",
|
|
"CreatedTime": "0001-01-01T00:00:00Z",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z",
|
|
"Logs": [
|
|
{
|
|
"Log": "string value",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"Provider": "f01234",
|
|
"DataRef": {
|
|
"TransferType": "string value",
|
|
"Root": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"PieceCid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"PieceSize": 1024,
|
|
"RawBlockSize": 42
|
|
},
|
|
"PieceCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Size": 42,
|
|
"PricePerEpoch": "0",
|
|
"Duration": 42,
|
|
"DealID": 5432,
|
|
"CreationTime": "0001-01-01T00:00:00Z",
|
|
"Verified": true,
|
|
"TransferChannelID": {
|
|
"Initiator": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Responder": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"ID": 3
|
|
},
|
|
"DataTransfer": {
|
|
"TransferID": 3,
|
|
"Status": 1,
|
|
"BaseCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"IsInitiator": true,
|
|
"IsSender": true,
|
|
"Voucher": "string value",
|
|
"Message": "string value",
|
|
"OtherPeer": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Transferred": 42,
|
|
"Stages": {
|
|
"Stages": [
|
|
{
|
|
"Name": "string value",
|
|
"Description": "string value",
|
|
"CreatedTime": "0001-01-01T00:00:00Z",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z",
|
|
"Logs": [
|
|
{
|
|
"Log": "string value",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
### ClientListImports
|
|
ClientListImports lists imported files and their root CIDs
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"Key": 50,
|
|
"Err": "string value",
|
|
"Root": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Source": "string value",
|
|
"FilePath": "string value",
|
|
"CARPath": "string value"
|
|
}
|
|
]
|
|
```
|
|
|
|
### ClientListRetrievals
|
|
ClientListRetrievals returns information about retrievals made by the local client
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"PayloadCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"ID": 5,
|
|
"PieceCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"PricePerByte": "0",
|
|
"UnsealPrice": "0",
|
|
"Status": 0,
|
|
"Message": "string value",
|
|
"Provider": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"BytesReceived": 42,
|
|
"BytesPaidFor": 42,
|
|
"TotalPaid": "0",
|
|
"TransferChannelID": {
|
|
"Initiator": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Responder": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"ID": 3
|
|
},
|
|
"DataTransfer": {
|
|
"TransferID": 3,
|
|
"Status": 1,
|
|
"BaseCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"IsInitiator": true,
|
|
"IsSender": true,
|
|
"Voucher": "string value",
|
|
"Message": "string value",
|
|
"OtherPeer": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Transferred": 42,
|
|
"Stages": {
|
|
"Stages": [
|
|
{
|
|
"Name": "string value",
|
|
"Description": "string value",
|
|
"CreatedTime": "0001-01-01T00:00:00Z",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z",
|
|
"Logs": [
|
|
{
|
|
"Log": "string value",
|
|
"UpdatedTime": "0001-01-01T00:00:00Z"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"Event": 5
|
|
}
|
|
]
|
|
```
|
|
|
|
### ClientMinerQueryOffer
|
|
ClientMinerQueryOffer returns a QueryOffer for the specific miner and file.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Err": "string value",
|
|
"Root": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Piece": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Size": 42,
|
|
"MinPrice": "0",
|
|
"UnsealPrice": "0",
|
|
"PricePerByte": "0",
|
|
"PaymentInterval": 42,
|
|
"PaymentIntervalIncrease": 42,
|
|
"Miner": "f01234",
|
|
"MinerPeer": {
|
|
"Address": "f01234",
|
|
"ID": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"PieceCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### ClientQueryAsk
|
|
ClientQueryAsk returns a signed StorageAsk from the specified miner.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Response": {
|
|
"Price": "0",
|
|
"VerifiedPrice": "0",
|
|
"MinPieceSize": 1032,
|
|
"MaxPieceSize": 1032,
|
|
"Miner": "f01234",
|
|
"Timestamp": 10101,
|
|
"Expiry": 10101,
|
|
"SeqNo": 42
|
|
},
|
|
"DealProtocols": [
|
|
"string value"
|
|
]
|
|
}
|
|
```
|
|
|
|
### ClientRemoveImport
|
|
ClientRemoveImport removes file import
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
50
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### ClientRestartDataTransfer
|
|
ClientRestartDataTransfer attempts to restart a data transfer with the given transfer ID and other peer
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
3,
|
|
"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
true
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### ClientRetrieve
|
|
ClientRetrieve initiates the retrieval of a file, as specified in the order.
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Root": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Piece": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"DataSelector": "Links/21/Hash/Links/42/Hash",
|
|
"Size": 42,
|
|
"Total": "0",
|
|
"UnsealPrice": "0",
|
|
"PaymentInterval": 42,
|
|
"PaymentIntervalIncrease": 42,
|
|
"Client": "f01234",
|
|
"Miner": "f01234",
|
|
"MinerPeer": {
|
|
"Address": "f01234",
|
|
"ID": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"PieceCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
},
|
|
"RemoteStore": "00000000-0000-0000-0000-000000000000"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"DealID": 5
|
|
}
|
|
```
|
|
|
|
### ClientRetrieveTryRestartInsufficientFunds
|
|
ClientRetrieveTryRestartInsufficientFunds attempts to restart stalled retrievals on a given payment channel
|
|
which are stuck due to insufficient funds
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### ClientRetrieveWait
|
|
ClientRetrieveWait waits for retrieval to be complete
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
5
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### ClientStartDeal
|
|
ClientStartDeal proposes a deal with a miner.
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Data": {
|
|
"TransferType": "string value",
|
|
"Root": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"PieceCid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"PieceSize": 1024,
|
|
"RawBlockSize": 42
|
|
},
|
|
"Wallet": "f01234",
|
|
"Miner": "f01234",
|
|
"EpochPrice": "0",
|
|
"MinBlocksDuration": 42,
|
|
"ProviderCollateral": "0",
|
|
"DealStartEpoch": 10101,
|
|
"FastRetrieval": true,
|
|
"VerifiedDeal": true
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
```
|
|
|
|
### ClientStatelessDeal
|
|
ClientStatelessDeal fire-and-forget-proposes an offline deal to a miner without subsequent tracking.
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Data": {
|
|
"TransferType": "string value",
|
|
"Root": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"PieceCid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"PieceSize": 1024,
|
|
"RawBlockSize": 42
|
|
},
|
|
"Wallet": "f01234",
|
|
"Miner": "f01234",
|
|
"EpochPrice": "0",
|
|
"MinBlocksDuration": 42,
|
|
"ProviderCollateral": "0",
|
|
"DealStartEpoch": 10101,
|
|
"FastRetrieval": true,
|
|
"VerifiedDeal": true
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
```
|
|
|
|
## Create
|
|
|
|
|
|
### CreateBackup
|
|
CreateBackup creates node backup onder the specified file name. The
|
|
method requires that the lotus daemon is running with the
|
|
LOTUS_BACKUP_BASE_PATH environment variable set to some path, and that
|
|
the path specified when calling CreateBackup is within the base path
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"string value"
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
## Eth
|
|
These methods are used for Ethereum-compatible JSON-RPC calls
|
|
|
|
EthAccounts will always return [] since we don't expect Lotus to manage private keys
|
|
|
|
|
|
### EthAccounts
|
|
There are not yet any comments for this method.
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
"0x5cbeecf99d3fdb3f25e309cc264f240bb0664031"
|
|
]
|
|
```
|
|
|
|
### EthAddressToFilecoinAddress
|
|
EthAddressToFilecoinAddress converts an EthAddress into an f410 Filecoin Address
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x5cbeecf99d3fdb3f25e309cc264f240bb0664031"
|
|
]
|
|
```
|
|
|
|
Response: `"f01234"`
|
|
|
|
### EthBlockNumber
|
|
EthBlockNumber returns the height of the latest (heaviest) TipSet
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `"0x5"`
|
|
|
|
### EthCall
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"from": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"to": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"gas": "0x5",
|
|
"gasPrice": "0x0",
|
|
"value": "0x0",
|
|
"data": "0x07"
|
|
},
|
|
"string value"
|
|
]
|
|
```
|
|
|
|
Response: `"0x07"`
|
|
|
|
### EthChainId
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `"0x5"`
|
|
|
|
### EthEstimateGas
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"Bw=="
|
|
]
|
|
```
|
|
|
|
Response: `"0x5"`
|
|
|
|
### EthFeeHistory
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"Bw=="
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"oldestBlock": "0x5",
|
|
"baseFeePerGas": [
|
|
"0x0"
|
|
],
|
|
"gasUsedRatio": [
|
|
12.3
|
|
],
|
|
"reward": []
|
|
}
|
|
```
|
|
|
|
### EthGasPrice
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `"0x0"`
|
|
|
|
### EthGetBalance
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"string value"
|
|
]
|
|
```
|
|
|
|
Response: `"0x0"`
|
|
|
|
### EthGetBlockByHash
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
true
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"hash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"parentHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"sha3Uncles": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"miner": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"stateRoot": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"transactionsRoot": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"receiptsRoot": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"logsBloom": "0x07",
|
|
"difficulty": "0x5",
|
|
"totalDifficulty": "0x5",
|
|
"number": "0x5",
|
|
"gasLimit": "0x5",
|
|
"gasUsed": "0x5",
|
|
"timestamp": "0x5",
|
|
"extraData": "0x07",
|
|
"mixHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"nonce": "0x0707070707070707",
|
|
"baseFeePerGas": "0x0",
|
|
"size": "0x5",
|
|
"transactions": [
|
|
{}
|
|
],
|
|
"uncles": [
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"
|
|
]
|
|
}
|
|
```
|
|
|
|
### EthGetBlockByNumber
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"string value",
|
|
true
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"hash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"parentHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"sha3Uncles": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"miner": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"stateRoot": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"transactionsRoot": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"receiptsRoot": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"logsBloom": "0x07",
|
|
"difficulty": "0x5",
|
|
"totalDifficulty": "0x5",
|
|
"number": "0x5",
|
|
"gasLimit": "0x5",
|
|
"gasUsed": "0x5",
|
|
"timestamp": "0x5",
|
|
"extraData": "0x07",
|
|
"mixHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"nonce": "0x0707070707070707",
|
|
"baseFeePerGas": "0x0",
|
|
"size": "0x5",
|
|
"transactions": [
|
|
{}
|
|
],
|
|
"uncles": [
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"
|
|
]
|
|
}
|
|
```
|
|
|
|
### EthGetBlockTransactionCountByHash
|
|
EthGetBlockTransactionCountByHash returns the number of messages in the TipSet
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"
|
|
]
|
|
```
|
|
|
|
Response: `"0x5"`
|
|
|
|
### EthGetBlockTransactionCountByNumber
|
|
EthGetBlockTransactionCountByNumber returns the number of messages in the TipSet
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x5"
|
|
]
|
|
```
|
|
|
|
Response: `"0x5"`
|
|
|
|
### EthGetCode
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"string value"
|
|
]
|
|
```
|
|
|
|
Response: `"0x07"`
|
|
|
|
### EthGetFilterChanges
|
|
Polling method for a filter, returns event logs which occurred since last poll.
|
|
(requires write perm since timestamp of last filter execution will be written)
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{}
|
|
]
|
|
```
|
|
|
|
### EthGetFilterLogs
|
|
Returns event logs matching filter with given id.
|
|
(requires write perm since timestamp of last filter execution will be written)
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{}
|
|
]
|
|
```
|
|
|
|
### EthGetLogs
|
|
Returns event logs matching given filter spec.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"fromBlock": "2301220",
|
|
"address": [
|
|
"0x5cbeecf99d3fdb3f25e309cc264f240bb0664031"
|
|
],
|
|
"topics": null
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{}
|
|
]
|
|
```
|
|
|
|
### EthGetMessageCidByTransactionHash
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
```
|
|
|
|
### EthGetStorageAt
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"0x07",
|
|
"string value"
|
|
]
|
|
```
|
|
|
|
Response: `"0x07"`
|
|
|
|
### EthGetTransactionByBlockHashAndIndex
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"0x5"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"chainId": "0x5",
|
|
"nonce": "0x5",
|
|
"hash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"blockHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"blockNumber": "0x5",
|
|
"transactionIndex": "0x5",
|
|
"from": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"to": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"value": "0x0",
|
|
"type": "0x5",
|
|
"input": "0x07",
|
|
"gas": "0x5",
|
|
"maxFeePerGas": "0x0",
|
|
"maxPriorityFeePerGas": "0x0",
|
|
"accessList": [
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"
|
|
],
|
|
"v": "0x0",
|
|
"r": "0x0",
|
|
"s": "0x0"
|
|
}
|
|
```
|
|
|
|
### EthGetTransactionByBlockNumberAndIndex
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x5",
|
|
"0x5"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"chainId": "0x5",
|
|
"nonce": "0x5",
|
|
"hash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"blockHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"blockNumber": "0x5",
|
|
"transactionIndex": "0x5",
|
|
"from": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"to": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"value": "0x0",
|
|
"type": "0x5",
|
|
"input": "0x07",
|
|
"gas": "0x5",
|
|
"maxFeePerGas": "0x0",
|
|
"maxPriorityFeePerGas": "0x0",
|
|
"accessList": [
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"
|
|
],
|
|
"v": "0x0",
|
|
"r": "0x0",
|
|
"s": "0x0"
|
|
}
|
|
```
|
|
|
|
### EthGetTransactionByHash
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"chainId": "0x5",
|
|
"nonce": "0x5",
|
|
"hash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"blockHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"blockNumber": "0x5",
|
|
"transactionIndex": "0x5",
|
|
"from": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"to": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"value": "0x0",
|
|
"type": "0x5",
|
|
"input": "0x07",
|
|
"gas": "0x5",
|
|
"maxFeePerGas": "0x0",
|
|
"maxPriorityFeePerGas": "0x0",
|
|
"accessList": [
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"
|
|
],
|
|
"v": "0x0",
|
|
"r": "0x0",
|
|
"s": "0x0"
|
|
}
|
|
```
|
|
|
|
### EthGetTransactionByHashLimited
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
10101
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"chainId": "0x5",
|
|
"nonce": "0x5",
|
|
"hash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"blockHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"blockNumber": "0x5",
|
|
"transactionIndex": "0x5",
|
|
"from": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"to": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"value": "0x0",
|
|
"type": "0x5",
|
|
"input": "0x07",
|
|
"gas": "0x5",
|
|
"maxFeePerGas": "0x0",
|
|
"maxPriorityFeePerGas": "0x0",
|
|
"accessList": [
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"
|
|
],
|
|
"v": "0x0",
|
|
"r": "0x0",
|
|
"s": "0x0"
|
|
}
|
|
```
|
|
|
|
### EthGetTransactionCount
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"string value"
|
|
]
|
|
```
|
|
|
|
Response: `"0x5"`
|
|
|
|
### EthGetTransactionHashByCid
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"`
|
|
|
|
### EthGetTransactionReceipt
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"transactionHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"transactionIndex": "0x5",
|
|
"blockHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"blockNumber": "0x5",
|
|
"from": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"to": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"root": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"status": "0x5",
|
|
"contractAddress": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"cumulativeGasUsed": "0x5",
|
|
"gasUsed": "0x5",
|
|
"effectiveGasPrice": "0x0",
|
|
"logsBloom": "0x07",
|
|
"logs": [
|
|
{
|
|
"address": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"data": "0x07",
|
|
"topics": [
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"
|
|
],
|
|
"removed": true,
|
|
"logIndex": "0x5",
|
|
"transactionIndex": "0x5",
|
|
"transactionHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"blockHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"blockNumber": "0x5"
|
|
}
|
|
],
|
|
"type": "0x5"
|
|
}
|
|
```
|
|
|
|
### EthGetTransactionReceiptLimited
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
10101
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"transactionHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"transactionIndex": "0x5",
|
|
"blockHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"blockNumber": "0x5",
|
|
"from": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"to": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"root": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"status": "0x5",
|
|
"contractAddress": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"cumulativeGasUsed": "0x5",
|
|
"gasUsed": "0x5",
|
|
"effectiveGasPrice": "0x0",
|
|
"logsBloom": "0x07",
|
|
"logs": [
|
|
{
|
|
"address": "0x5cbeecf99d3fdb3f25e309cc264f240bb0664031",
|
|
"data": "0x07",
|
|
"topics": [
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"
|
|
],
|
|
"removed": true,
|
|
"logIndex": "0x5",
|
|
"transactionIndex": "0x5",
|
|
"transactionHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"blockHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"blockNumber": "0x5"
|
|
}
|
|
],
|
|
"type": "0x5"
|
|
}
|
|
```
|
|
|
|
### EthMaxPriorityFeePerGas
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `"0x0"`
|
|
|
|
### EthNewBlockFilter
|
|
Installs a persistent filter to notify when a new block arrives.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"`
|
|
|
|
### EthNewFilter
|
|
Installs a persistent filter based on given filter spec.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"fromBlock": "2301220",
|
|
"address": [
|
|
"0x5cbeecf99d3fdb3f25e309cc264f240bb0664031"
|
|
],
|
|
"topics": null
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"`
|
|
|
|
### EthNewPendingTransactionFilter
|
|
Installs a persistent filter to notify when new messages arrive in the message pool.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"`
|
|
|
|
### EthProtocolVersion
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `"0x5"`
|
|
|
|
### EthSendRawTransaction
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x07"
|
|
]
|
|
```
|
|
|
|
Response: `"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"`
|
|
|
|
### EthSubscribe
|
|
Subscribe to different event types using websockets
|
|
eventTypes is one or more of:
|
|
- newHeads: notify when new blocks arrive.
|
|
- pendingTransactions: notify when new messages arrive in the message pool.
|
|
- logs: notify new event logs that match a criteria
|
|
params contains additional parameters used with the log event type
|
|
The client will receive a stream of EthSubscriptionResponse values until EthUnsubscribe is called.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"Bw=="
|
|
]
|
|
```
|
|
|
|
Response: `"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"`
|
|
|
|
### EthSyncing
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `false`
|
|
|
|
### EthTraceBlock
|
|
Returns an OpenEthereum-compatible trace of the given block (implementing `trace_block`),
|
|
translating Filecoin semantics into Ethereum semantics and tracing both EVM and FVM calls.
|
|
|
|
Features:
|
|
|
|
- FVM actor create events, calls, etc. show up as if they were EVM smart contract events.
|
|
- Native FVM call inputs are ABI-encoded (Solidity ABI) as if they were calls to a
|
|
`handle_filecoin_method(uint64 method, uint64 codec, bytes params)` function
|
|
(where `codec` is the IPLD codec of `params`).
|
|
- Native FVM call outputs (return values) are ABI-encoded as `(uint32 exit_code, uint64
|
|
codec, bytes output)` where `codec` is the IPLD codec of `output`.
|
|
|
|
Limitations (for now):
|
|
|
|
1. Block rewards are not included in the trace.
|
|
2. SELFDESTRUCT operations are not included in the trace.
|
|
3. EVM smart contract "create" events always specify `0xfe` as the "code" for newly created EVM smart contracts.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"string value"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"type": "string value",
|
|
"error": "string value",
|
|
"subtraces": 123,
|
|
"traceAddress": [
|
|
123
|
|
],
|
|
"action": {},
|
|
"result": {},
|
|
"blockHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"blockNumber": 9,
|
|
"transactionHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"transactionPosition": 123
|
|
}
|
|
]
|
|
```
|
|
|
|
### EthTraceReplayBlockTransactions
|
|
Replays all transactions in a block returning the requested traces for each transaction
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"string value",
|
|
[
|
|
"string value"
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"output": "0x07",
|
|
"stateDiff": "string value",
|
|
"trace": [
|
|
{
|
|
"type": "string value",
|
|
"error": "string value",
|
|
"subtraces": 123,
|
|
"traceAddress": [
|
|
123
|
|
],
|
|
"action": {},
|
|
"result": {}
|
|
}
|
|
],
|
|
"transactionHash": "0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e",
|
|
"vmTrace": "string value"
|
|
}
|
|
]
|
|
```
|
|
|
|
### EthUninstallFilter
|
|
Uninstalls a filter with given id.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"
|
|
]
|
|
```
|
|
|
|
Response: `true`
|
|
|
|
### EthUnsubscribe
|
|
Unsubscribe from a websocket subscription
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"0x37690cfec6c1bf4c3b9288c7a5d783e98731e90b0a4c177c2a374c7a9427355e"
|
|
]
|
|
```
|
|
|
|
Response: `true`
|
|
|
|
## Filecoin
|
|
|
|
|
|
### FilecoinAddressToEthAddress
|
|
FilecoinAddressToEthAddress converts an f410 or f0 Filecoin Address to an EthAddress
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response: `"0x5cbeecf99d3fdb3f25e309cc264f240bb0664031"`
|
|
|
|
## Gas
|
|
|
|
|
|
### GasEstimateFeeCap
|
|
GasEstimateFeeCap estimates gas fee cap
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
9,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"0"`
|
|
|
|
### GasEstimateGasLimit
|
|
GasEstimateGasLimit estimates gas used by the message and returns it.
|
|
It fails if message fails to execute.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `9`
|
|
|
|
### GasEstimateGasPremium
|
|
GasEstimateGasPremium estimates what gas price should be used for a
|
|
message to have high likelihood of inclusion in `nblocksincl` epochs.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
42,
|
|
"f01234",
|
|
9,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"0"`
|
|
|
|
### GasEstimateMessageGas
|
|
GasEstimateMessageGas estimates gas values for unset message gas fields
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
{
|
|
"MaxFee": "0",
|
|
"MsgUuid": "07070707-0707-0707-0707-070707070707",
|
|
"MaximizeFeeCap": true
|
|
},
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
```
|
|
|
|
## Get
|
|
|
|
|
|
### GetActorEvents
|
|
GetActorEvents returns all user-programmed and built-in actor events that match the given
|
|
filter.
|
|
This is a request/response API.
|
|
Results available from this API may be limited by the MaxFilterResults and MaxFilterHeightRange
|
|
configuration options and also the amount of historical data available in the node.
|
|
|
|
This is an EXPERIMENTAL API and may be subject to change.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"addresses": [
|
|
"f01234"
|
|
],
|
|
"fields": {
|
|
"abc": [
|
|
{
|
|
"codec": 81,
|
|
"value": "ZGRhdGE="
|
|
}
|
|
]
|
|
},
|
|
"fromHeight": 1010,
|
|
"toHeight": 1020
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"entries": [
|
|
{
|
|
"Flags": 7,
|
|
"Key": "string value",
|
|
"Codec": 42,
|
|
"Value": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
],
|
|
"emitter": "f01234",
|
|
"reverted": true,
|
|
"height": 10101,
|
|
"tipsetKey": [
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
],
|
|
"msgCid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
## I
|
|
|
|
|
|
### ID
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf"`
|
|
|
|
## Log
|
|
|
|
|
|
### LogAlerts
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"Type": {
|
|
"System": "string value",
|
|
"Subsystem": "string value"
|
|
},
|
|
"Active": true,
|
|
"LastActive": {
|
|
"Type": "string value",
|
|
"Message": "json raw message",
|
|
"Time": "0001-01-01T00:00:00Z"
|
|
},
|
|
"LastResolved": {
|
|
"Type": "string value",
|
|
"Message": "json raw message",
|
|
"Time": "0001-01-01T00:00:00Z"
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
### LogList
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
"string value"
|
|
]
|
|
```
|
|
|
|
### LogSetLevel
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"string value",
|
|
"string value"
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
## Market
|
|
|
|
|
|
### MarketAddBalance
|
|
MarketAddBalance adds funds to the market actor
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"f01234",
|
|
"0"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
```
|
|
|
|
### MarketGetReserved
|
|
MarketGetReserved gets the amount of funds that are currently reserved for the address
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response: `"0"`
|
|
|
|
### MarketReleaseFunds
|
|
MarketReleaseFunds releases funds reserved by MarketReserveFunds
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"0"
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### MarketReserveFunds
|
|
MarketReserveFunds reserves funds for a deal
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"f01234",
|
|
"0"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
```
|
|
|
|
### MarketWithdraw
|
|
MarketWithdraw withdraws unlocked funds from the market actor
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"f01234",
|
|
"0"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
```
|
|
|
|
## Miner
|
|
|
|
|
|
### MinerCreateBlock
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Miner": "f01234",
|
|
"Parents": [
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
],
|
|
"Ticket": {
|
|
"VRFProof": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"Eproof": {
|
|
"WinCount": 9,
|
|
"VRFProof": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"BeaconValues": [
|
|
{
|
|
"Round": 42,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
],
|
|
"Messages": [
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
],
|
|
"Epoch": 10101,
|
|
"Timestamp": 42,
|
|
"WinningPoStProof": [
|
|
{
|
|
"PoStProof": 8,
|
|
"ProofBytes": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
]
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Header": {
|
|
"Miner": "f01234",
|
|
"Ticket": {
|
|
"VRFProof": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"ElectionProof": {
|
|
"WinCount": 9,
|
|
"VRFProof": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"BeaconEntries": [
|
|
{
|
|
"Round": 42,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
],
|
|
"WinPoStProof": [
|
|
{
|
|
"PoStProof": 8,
|
|
"ProofBytes": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
],
|
|
"Parents": [
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
],
|
|
"ParentWeight": "0",
|
|
"Height": 10101,
|
|
"ParentStateRoot": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"ParentMessageReceipts": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Messages": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"BLSAggregate": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"Timestamp": 42,
|
|
"BlockSig": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"ForkSignaling": 42,
|
|
"ParentBaseFee": "0"
|
|
},
|
|
"BlsMessages": [
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
],
|
|
"SecpkMessages": [
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
### MinerGetBaseInfo
|
|
There are not yet any comments for this method.
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
10101,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"MinerPower": "0",
|
|
"NetworkPower": "0",
|
|
"Sectors": [
|
|
{
|
|
"SealProof": 8,
|
|
"SectorNumber": 9,
|
|
"SectorKey": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"SealedCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
}
|
|
],
|
|
"WorkerKey": "f01234",
|
|
"SectorSize": 34359738368,
|
|
"PrevBeaconEntry": {
|
|
"Round": 42,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"BeaconEntries": [
|
|
{
|
|
"Round": 42,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
],
|
|
"EligibleForMining": true
|
|
}
|
|
```
|
|
|
|
## Mpool
|
|
The Mpool methods are for interacting with the message pool. The message pool
|
|
manages all incoming and outgoing 'messages' going over the network.
|
|
|
|
|
|
### MpoolBatchPush
|
|
MpoolBatchPush batch pushes a signed message to mempool.
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
### MpoolBatchPushMessage
|
|
MpoolBatchPushMessage batch pushes a unsigned message to mempool.
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
],
|
|
{
|
|
"MaxFee": "0",
|
|
"MsgUuid": "07070707-0707-0707-0707-070707070707",
|
|
"MaximizeFeeCap": true
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
### MpoolBatchPushUntrusted
|
|
MpoolBatchPushUntrusted batch pushes a signed message to mempool from untrusted sources.
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
### MpoolCheckMessages
|
|
MpoolCheckMessages performs logical checks on a batch of messages
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"ValidNonce": true
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"Cid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Code": 0,
|
|
"OK": true,
|
|
"Err": "string value",
|
|
"Hint": {
|
|
"abc": 123
|
|
}
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
### MpoolCheckPendingMessages
|
|
MpoolCheckPendingMessages performs logical checks for all pending messages from a given address
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"Cid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Code": 0,
|
|
"OK": true,
|
|
"Err": "string value",
|
|
"Hint": {
|
|
"abc": 123
|
|
}
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
### MpoolCheckReplaceMessages
|
|
MpoolCheckReplaceMessages performs logical checks on pending messages with replacement
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"Cid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Code": 0,
|
|
"OK": true,
|
|
"Err": "string value",
|
|
"Hint": {
|
|
"abc": 123
|
|
}
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
### MpoolClear
|
|
MpoolClear clears pending messages from the mpool.
|
|
If clearLocal is true, ALL messages will be cleared.
|
|
If clearLocal is false, local messages will be protected, all others will be cleared.
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
true
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### MpoolGetConfig
|
|
MpoolGetConfig returns (a copy of) the current mpool config
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"PriorityAddrs": [
|
|
"f01234"
|
|
],
|
|
"SizeLimitHigh": 123,
|
|
"SizeLimitLow": 123,
|
|
"ReplaceByFeeRatio": 1.23,
|
|
"PruneCooldown": 60000000000,
|
|
"GasLimitOverestimation": 12.3
|
|
}
|
|
```
|
|
|
|
### MpoolGetNonce
|
|
MpoolGetNonce gets next nonce for the specified sender.
|
|
Note that this method may not be atomic. Use MpoolPushMessage instead.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response: `42`
|
|
|
|
### MpoolPending
|
|
MpoolPending returns pending mempool messages.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
### MpoolPush
|
|
MpoolPush pushes a signed message to mempool.
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
```
|
|
|
|
### MpoolPushMessage
|
|
MpoolPushMessage atomically assigns a nonce, signs, and pushes a message
|
|
to mempool.
|
|
maxFee is only used when GasFeeCap/GasPremium fields aren't specified
|
|
|
|
When maxFee is set to 0, MpoolPushMessage will guess appropriate fee
|
|
based on current chain conditions
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
{
|
|
"MaxFee": "0",
|
|
"MsgUuid": "07070707-0707-0707-0707-070707070707",
|
|
"MaximizeFeeCap": true
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
```
|
|
|
|
### MpoolPushUntrusted
|
|
MpoolPushUntrusted pushes a signed message to mempool from untrusted sources.
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
```
|
|
|
|
### MpoolSelect
|
|
MpoolSelect returns a list of pending messages for inclusion in the next block
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
],
|
|
12.3
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
### MpoolSetConfig
|
|
MpoolSetConfig sets the mpool config to (a copy of) the supplied config
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"PriorityAddrs": [
|
|
"f01234"
|
|
],
|
|
"SizeLimitHigh": 123,
|
|
"SizeLimitLow": 123,
|
|
"ReplaceByFeeRatio": 1.23,
|
|
"PruneCooldown": 60000000000,
|
|
"GasLimitOverestimation": 12.3
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### MpoolSub
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Type": 0,
|
|
"Message": {
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
## Msig
|
|
The Msig methods are used to interact with multisig wallets on the
|
|
filecoin network
|
|
|
|
|
|
### MsigAddApprove
|
|
MsigAddApprove approves a previously proposed AddSigner message
|
|
It takes the following params: <multisig address>, <sender address of the approve msg>, <proposed message ID>,
|
|
<proposer address>, <new signer>, <whether the number of required signers should be increased>
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"f01234",
|
|
42,
|
|
"f01234",
|
|
"f01234",
|
|
true
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"ValidNonce": true
|
|
}
|
|
```
|
|
|
|
### MsigAddCancel
|
|
MsigAddCancel cancels a previously proposed AddSigner message
|
|
It takes the following params: <multisig address>, <sender address of the cancel msg>, <proposed message ID>,
|
|
<new signer>, <whether the number of required signers should be increased>
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"f01234",
|
|
42,
|
|
"f01234",
|
|
true
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"ValidNonce": true
|
|
}
|
|
```
|
|
|
|
### MsigAddPropose
|
|
MsigAddPropose proposes adding a signer in the multisig
|
|
It takes the following params: <multisig address>, <sender address of the propose msg>,
|
|
<new signer>, <whether the number of required signers should be increased>
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"f01234",
|
|
"f01234",
|
|
true
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"ValidNonce": true
|
|
}
|
|
```
|
|
|
|
### MsigApprove
|
|
MsigApprove approves a previously-proposed multisig message by transaction ID
|
|
It takes the following params: <multisig address>, <proposed transaction ID> <signer address>
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
42,
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"ValidNonce": true
|
|
}
|
|
```
|
|
|
|
### MsigApproveTxnHash
|
|
MsigApproveTxnHash approves a previously-proposed multisig message, specified
|
|
using both transaction ID and a hash of the parameters used in the
|
|
proposal. This method of approval can be used to ensure you only approve
|
|
exactly the transaction you think you are.
|
|
It takes the following params: <multisig address>, <proposed message ID>, <proposer address>, <recipient address>, <value to transfer>,
|
|
<sender address of the approve msg>, <method to call in the proposed message>, <params to include in the proposed message>
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
42,
|
|
"f01234",
|
|
"f01234",
|
|
"0",
|
|
"f01234",
|
|
42,
|
|
"Ynl0ZSBhcnJheQ=="
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"ValidNonce": true
|
|
}
|
|
```
|
|
|
|
### MsigCancel
|
|
MsigCancel cancels a previously-proposed multisig message
|
|
It takes the following params: <multisig address>, <proposed transaction ID> <signer address>
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
42,
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"ValidNonce": true
|
|
}
|
|
```
|
|
|
|
### MsigCancelTxnHash
|
|
MsigCancel cancels a previously-proposed multisig message
|
|
It takes the following params: <multisig address>, <proposed transaction ID>, <recipient address>, <value to transfer>,
|
|
<sender address of the cancel msg>, <method to call in the proposed message>, <params to include in the proposed message>
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
42,
|
|
"f01234",
|
|
"0",
|
|
"f01234",
|
|
42,
|
|
"Ynl0ZSBhcnJheQ=="
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"ValidNonce": true
|
|
}
|
|
```
|
|
|
|
### MsigCreate
|
|
MsigCreate creates a multisig wallet
|
|
It takes the following params: <required number of senders>, <approving addresses>, <unlock duration>
|
|
<initial balance>, <sender address of the create msg>, <gas price>
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
42,
|
|
[
|
|
"f01234"
|
|
],
|
|
10101,
|
|
"0",
|
|
"f01234",
|
|
"0"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"ValidNonce": true
|
|
}
|
|
```
|
|
|
|
### MsigGetAvailableBalance
|
|
MsigGetAvailableBalance returns the portion of a multisig's balance that can be withdrawn or spent
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"0"`
|
|
|
|
### MsigGetPending
|
|
MsigGetPending returns pending transactions for the given multisig
|
|
wallet. Once pending transactions are fully approved, they will no longer
|
|
appear here.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"ID": 9,
|
|
"To": "f01234",
|
|
"Value": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"Approved": [
|
|
"f01234"
|
|
]
|
|
}
|
|
]
|
|
```
|
|
|
|
### MsigGetVested
|
|
MsigGetVested returns the amount of FIL that vested in a multisig in a certain period.
|
|
It takes the following params: <multisig address>, <start epoch>, <end epoch>
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
],
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"0"`
|
|
|
|
### MsigGetVestingSchedule
|
|
MsigGetVestingSchedule returns the vesting details of a given multisig.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"InitialBalance": "0",
|
|
"StartEpoch": 10101,
|
|
"UnlockDuration": 10101
|
|
}
|
|
```
|
|
|
|
### MsigPropose
|
|
MsigPropose proposes a multisig message
|
|
It takes the following params: <multisig address>, <recipient address>, <value to transfer>,
|
|
<sender address of the propose msg>, <method to call in the proposed message>, <params to include in the proposed message>
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"f01234",
|
|
"0",
|
|
"f01234",
|
|
42,
|
|
"Ynl0ZSBhcnJheQ=="
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"ValidNonce": true
|
|
}
|
|
```
|
|
|
|
### MsigRemoveSigner
|
|
MsigRemoveSigner proposes the removal of a signer from the multisig.
|
|
It accepts the multisig to make the change on, the proposer address to
|
|
send the message from, the address to be removed, and a boolean
|
|
indicating whether or not the signing threshold should be lowered by one
|
|
along with the address removal.
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"f01234",
|
|
"f01234",
|
|
true
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"ValidNonce": true
|
|
}
|
|
```
|
|
|
|
### MsigSwapApprove
|
|
MsigSwapApprove approves a previously proposed SwapSigner
|
|
It takes the following params: <multisig address>, <sender address of the approve msg>, <proposed message ID>,
|
|
<proposer address>, <old signer>, <new signer>
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"f01234",
|
|
42,
|
|
"f01234",
|
|
"f01234",
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"ValidNonce": true
|
|
}
|
|
```
|
|
|
|
### MsigSwapCancel
|
|
MsigSwapCancel cancels a previously proposed SwapSigner message
|
|
It takes the following params: <multisig address>, <sender address of the cancel msg>, <proposed message ID>,
|
|
<old signer>, <new signer>
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"f01234",
|
|
42,
|
|
"f01234",
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"ValidNonce": true
|
|
}
|
|
```
|
|
|
|
### MsigSwapPropose
|
|
MsigSwapPropose proposes swapping 2 signers in the multisig
|
|
It takes the following params: <multisig address>, <sender address of the propose msg>,
|
|
<old signer>, <new signer>
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"f01234",
|
|
"f01234",
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"ValidNonce": true
|
|
}
|
|
```
|
|
|
|
## Net
|
|
|
|
|
|
### NetAddrsListen
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"ID": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Addrs": [
|
|
"/ip4/52.36.61.156/tcp/1347/p2p/12D3KooWFETiESTf1v4PGUvtnxMAcEFMzLZbJGg4tjWfGEimYior"
|
|
]
|
|
}
|
|
```
|
|
|
|
### NetAgentVersion
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf"
|
|
]
|
|
```
|
|
|
|
Response: `"string value"`
|
|
|
|
### NetAutoNatStatus
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Reachability": 1,
|
|
"PublicAddrs": [
|
|
"string value"
|
|
]
|
|
}
|
|
```
|
|
|
|
### NetBandwidthStats
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"TotalIn": 9,
|
|
"TotalOut": 9,
|
|
"RateIn": 12.3,
|
|
"RateOut": 12.3
|
|
}
|
|
```
|
|
|
|
### NetBandwidthStatsByPeer
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"12D3KooWSXmXLJmBR1M7i9RW9GQPNUhZSzXKzxDHWtAgNuJAbyEJ": {
|
|
"TotalIn": 174000,
|
|
"TotalOut": 12500,
|
|
"RateIn": 100,
|
|
"RateOut": 50
|
|
}
|
|
}
|
|
```
|
|
|
|
### NetBandwidthStatsByProtocol
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"/fil/hello/1.0.0": {
|
|
"TotalIn": 174000,
|
|
"TotalOut": 12500,
|
|
"RateIn": 100,
|
|
"RateOut": 50
|
|
}
|
|
}
|
|
```
|
|
|
|
### NetBlockAdd
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Peers": [
|
|
"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf"
|
|
],
|
|
"IPAddrs": [
|
|
"string value"
|
|
],
|
|
"IPSubnets": [
|
|
"string value"
|
|
]
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### NetBlockList
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Peers": [
|
|
"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf"
|
|
],
|
|
"IPAddrs": [
|
|
"string value"
|
|
],
|
|
"IPSubnets": [
|
|
"string value"
|
|
]
|
|
}
|
|
```
|
|
|
|
### NetBlockRemove
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Peers": [
|
|
"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf"
|
|
],
|
|
"IPAddrs": [
|
|
"string value"
|
|
],
|
|
"IPSubnets": [
|
|
"string value"
|
|
]
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### NetConnect
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"ID": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Addrs": [
|
|
"/ip4/52.36.61.156/tcp/1347/p2p/12D3KooWFETiESTf1v4PGUvtnxMAcEFMzLZbJGg4tjWfGEimYior"
|
|
]
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### NetConnectedness
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf"
|
|
]
|
|
```
|
|
|
|
Response: `1`
|
|
|
|
### NetDisconnect
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf"
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### NetFindPeer
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"ID": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Addrs": [
|
|
"/ip4/52.36.61.156/tcp/1347/p2p/12D3KooWFETiESTf1v4PGUvtnxMAcEFMzLZbJGg4tjWfGEimYior"
|
|
]
|
|
}
|
|
```
|
|
|
|
### NetLimit
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"string value"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Memory": 123,
|
|
"Streams": 3,
|
|
"StreamsInbound": 1,
|
|
"StreamsOutbound": 2,
|
|
"Conns": 4,
|
|
"ConnsInbound": 3,
|
|
"ConnsOutbound": 4,
|
|
"FD": 5
|
|
}
|
|
```
|
|
|
|
### NetListening
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `true`
|
|
|
|
### NetPeerInfo
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"ID": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Agent": "string value",
|
|
"Addrs": [
|
|
"string value"
|
|
],
|
|
"Protocols": [
|
|
"string value"
|
|
],
|
|
"ConnMgrMeta": {
|
|
"FirstSeen": "0001-01-01T00:00:00Z",
|
|
"Value": 123,
|
|
"Tags": {
|
|
"name": 42
|
|
},
|
|
"Conns": {
|
|
"name": "2021-03-08T22:52:18Z"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### NetPeers
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"ID": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Addrs": [
|
|
"/ip4/52.36.61.156/tcp/1347/p2p/12D3KooWFETiESTf1v4PGUvtnxMAcEFMzLZbJGg4tjWfGEimYior"
|
|
]
|
|
}
|
|
]
|
|
```
|
|
|
|
### NetPing
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf"
|
|
]
|
|
```
|
|
|
|
Response: `60000000000`
|
|
|
|
### NetProtectAdd
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf"
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### NetProtectList
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf"
|
|
]
|
|
```
|
|
|
|
### NetProtectRemove
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf"
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### NetPubsubScores
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"ID": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Score": {
|
|
"Score": 12.3,
|
|
"Topics": {
|
|
"/blocks": {
|
|
"TimeInMesh": 60000000000,
|
|
"FirstMessageDeliveries": 122,
|
|
"MeshMessageDeliveries": 1234,
|
|
"InvalidMessageDeliveries": 3
|
|
}
|
|
},
|
|
"AppSpecificScore": 12.3,
|
|
"IPColocationFactor": 12.3,
|
|
"BehaviourPenalty": 12.3
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
### NetSetLimit
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"string value",
|
|
{
|
|
"Memory": 123,
|
|
"Streams": 3,
|
|
"StreamsInbound": 1,
|
|
"StreamsOutbound": 2,
|
|
"Conns": 4,
|
|
"ConnsInbound": 3,
|
|
"ConnsOutbound": 4,
|
|
"FD": 5
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### NetStat
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"string value"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"System": {
|
|
"NumStreamsInbound": 123,
|
|
"NumStreamsOutbound": 123,
|
|
"NumConnsInbound": 123,
|
|
"NumConnsOutbound": 123,
|
|
"NumFD": 123,
|
|
"Memory": 9
|
|
},
|
|
"Transient": {
|
|
"NumStreamsInbound": 123,
|
|
"NumStreamsOutbound": 123,
|
|
"NumConnsInbound": 123,
|
|
"NumConnsOutbound": 123,
|
|
"NumFD": 123,
|
|
"Memory": 9
|
|
},
|
|
"Services": {
|
|
"abc": {
|
|
"NumStreamsInbound": 1,
|
|
"NumStreamsOutbound": 2,
|
|
"NumConnsInbound": 3,
|
|
"NumConnsOutbound": 4,
|
|
"NumFD": 5,
|
|
"Memory": 123
|
|
}
|
|
},
|
|
"Protocols": {
|
|
"abc": {
|
|
"NumStreamsInbound": 1,
|
|
"NumStreamsOutbound": 2,
|
|
"NumConnsInbound": 3,
|
|
"NumConnsOutbound": 4,
|
|
"NumFD": 5,
|
|
"Memory": 123
|
|
}
|
|
},
|
|
"Peers": {
|
|
"abc": {
|
|
"NumStreamsInbound": 1,
|
|
"NumStreamsOutbound": 2,
|
|
"NumConnsInbound": 3,
|
|
"NumConnsOutbound": 4,
|
|
"NumFD": 5,
|
|
"Memory": 123
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### NetVersion
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `"string value"`
|
|
|
|
## Node
|
|
These methods are general node management and status commands
|
|
|
|
|
|
### NodeStatus
|
|
There are not yet any comments for this method.
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
true
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"SyncStatus": {
|
|
"Epoch": 42,
|
|
"Behind": 42
|
|
},
|
|
"PeerStatus": {
|
|
"PeersToPublishMsgs": 123,
|
|
"PeersToPublishBlocks": 123
|
|
},
|
|
"ChainStatus": {
|
|
"BlocksPerTipsetLast100": 12.3,
|
|
"BlocksPerTipsetLastFinality": 12.3
|
|
}
|
|
}
|
|
```
|
|
|
|
## Paych
|
|
The Paych methods are for interacting with and managing payment channels
|
|
|
|
|
|
### PaychAllocateLane
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response: `42`
|
|
|
|
### PaychAvailableFunds
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Channel": "f01234",
|
|
"From": "f01234",
|
|
"To": "f01234",
|
|
"ConfirmedAmt": "0",
|
|
"PendingAmt": "0",
|
|
"NonReservedAmt": "0",
|
|
"PendingAvailableAmt": "0",
|
|
"PendingWaitSentinel": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"QueuedAmt": "0",
|
|
"VoucherReedeemedAmt": "0"
|
|
}
|
|
```
|
|
|
|
### PaychAvailableFundsByFromTo
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Channel": "f01234",
|
|
"From": "f01234",
|
|
"To": "f01234",
|
|
"ConfirmedAmt": "0",
|
|
"PendingAmt": "0",
|
|
"NonReservedAmt": "0",
|
|
"PendingAvailableAmt": "0",
|
|
"PendingWaitSentinel": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"QueuedAmt": "0",
|
|
"VoucherReedeemedAmt": "0"
|
|
}
|
|
```
|
|
|
|
### PaychCollect
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
```
|
|
|
|
### PaychFund
|
|
PaychFund gets or creates a payment channel between address pair.
|
|
The specified amount will be added to the channel through on-chain send for future use
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"f01234",
|
|
"0"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Channel": "f01234",
|
|
"WaitSentinel": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
}
|
|
```
|
|
|
|
### PaychGet
|
|
PaychGet gets or creates a payment channel between address pair
|
|
The specified amount will be reserved for use. If there aren't enough non-reserved funds
|
|
available, funds will be added through an on-chain message.
|
|
- When opts.OffChain is true, this call will not cause any messages to be sent to the chain (no automatic
|
|
channel creation/funds adding). If the operation can't be performed without sending a message an error will be
|
|
returned. Note that even when this option is specified, this call can be blocked by previous operations on the
|
|
channel waiting for on-chain operations.
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"f01234",
|
|
"0",
|
|
{
|
|
"OffChain": true
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Channel": "f01234",
|
|
"WaitSentinel": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
}
|
|
```
|
|
|
|
### PaychGetWaitReady
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `"f01234"`
|
|
|
|
### PaychList
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
### PaychNewPayment
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"f01234",
|
|
[
|
|
{
|
|
"Amount": "0",
|
|
"TimeLockMin": 10101,
|
|
"TimeLockMax": 10101,
|
|
"MinSettle": 10101,
|
|
"Extra": {
|
|
"Actor": "f01234",
|
|
"Method": 1,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Channel": "f01234",
|
|
"WaitSentinel": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Vouchers": [
|
|
{
|
|
"ChannelAddr": "f01234",
|
|
"TimeLockMin": 10101,
|
|
"TimeLockMax": 10101,
|
|
"SecretHash": "Ynl0ZSBhcnJheQ==",
|
|
"Extra": {
|
|
"Actor": "f01234",
|
|
"Method": 1,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"Lane": 42,
|
|
"Nonce": 42,
|
|
"Amount": "0",
|
|
"MinSettleHeight": 10101,
|
|
"Merges": [
|
|
{
|
|
"Lane": 42,
|
|
"Nonce": 42
|
|
}
|
|
],
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
### PaychSettle
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
```
|
|
|
|
### PaychStatus
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"ControlAddr": "f01234",
|
|
"Direction": 1
|
|
}
|
|
```
|
|
|
|
### PaychVoucherAdd
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
{
|
|
"ChannelAddr": "f01234",
|
|
"TimeLockMin": 10101,
|
|
"TimeLockMax": 10101,
|
|
"SecretHash": "Ynl0ZSBhcnJheQ==",
|
|
"Extra": {
|
|
"Actor": "f01234",
|
|
"Method": 1,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"Lane": 42,
|
|
"Nonce": 42,
|
|
"Amount": "0",
|
|
"MinSettleHeight": 10101,
|
|
"Merges": [
|
|
{
|
|
"Lane": 42,
|
|
"Nonce": 42
|
|
}
|
|
],
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
},
|
|
"Ynl0ZSBhcnJheQ==",
|
|
"0"
|
|
]
|
|
```
|
|
|
|
Response: `"0"`
|
|
|
|
### PaychVoucherCheckSpendable
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
{
|
|
"ChannelAddr": "f01234",
|
|
"TimeLockMin": 10101,
|
|
"TimeLockMax": 10101,
|
|
"SecretHash": "Ynl0ZSBhcnJheQ==",
|
|
"Extra": {
|
|
"Actor": "f01234",
|
|
"Method": 1,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"Lane": 42,
|
|
"Nonce": 42,
|
|
"Amount": "0",
|
|
"MinSettleHeight": 10101,
|
|
"Merges": [
|
|
{
|
|
"Lane": 42,
|
|
"Nonce": 42
|
|
}
|
|
],
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
},
|
|
"Ynl0ZSBhcnJheQ==",
|
|
"Ynl0ZSBhcnJheQ=="
|
|
]
|
|
```
|
|
|
|
Response: `true`
|
|
|
|
### PaychVoucherCheckValid
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
{
|
|
"ChannelAddr": "f01234",
|
|
"TimeLockMin": 10101,
|
|
"TimeLockMax": 10101,
|
|
"SecretHash": "Ynl0ZSBhcnJheQ==",
|
|
"Extra": {
|
|
"Actor": "f01234",
|
|
"Method": 1,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"Lane": 42,
|
|
"Nonce": 42,
|
|
"Amount": "0",
|
|
"MinSettleHeight": 10101,
|
|
"Merges": [
|
|
{
|
|
"Lane": 42,
|
|
"Nonce": 42
|
|
}
|
|
],
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### PaychVoucherCreate
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"0",
|
|
42
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Voucher": {
|
|
"ChannelAddr": "f01234",
|
|
"TimeLockMin": 10101,
|
|
"TimeLockMax": 10101,
|
|
"SecretHash": "Ynl0ZSBhcnJheQ==",
|
|
"Extra": {
|
|
"Actor": "f01234",
|
|
"Method": 1,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"Lane": 42,
|
|
"Nonce": 42,
|
|
"Amount": "0",
|
|
"MinSettleHeight": 10101,
|
|
"Merges": [
|
|
{
|
|
"Lane": 42,
|
|
"Nonce": 42
|
|
}
|
|
],
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
},
|
|
"Shortfall": "0"
|
|
}
|
|
```
|
|
|
|
### PaychVoucherList
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"ChannelAddr": "f01234",
|
|
"TimeLockMin": 10101,
|
|
"TimeLockMax": 10101,
|
|
"SecretHash": "Ynl0ZSBhcnJheQ==",
|
|
"Extra": {
|
|
"Actor": "f01234",
|
|
"Method": 1,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"Lane": 42,
|
|
"Nonce": 42,
|
|
"Amount": "0",
|
|
"MinSettleHeight": 10101,
|
|
"Merges": [
|
|
{
|
|
"Lane": 42,
|
|
"Nonce": 42
|
|
}
|
|
],
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
### PaychVoucherSubmit
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
{
|
|
"ChannelAddr": "f01234",
|
|
"TimeLockMin": 10101,
|
|
"TimeLockMax": 10101,
|
|
"SecretHash": "Ynl0ZSBhcnJheQ==",
|
|
"Extra": {
|
|
"Actor": "f01234",
|
|
"Method": 1,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"Lane": 42,
|
|
"Nonce": 42,
|
|
"Amount": "0",
|
|
"MinSettleHeight": 10101,
|
|
"Merges": [
|
|
{
|
|
"Lane": 42,
|
|
"Nonce": 42
|
|
}
|
|
],
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
},
|
|
"Ynl0ZSBhcnJheQ==",
|
|
"Ynl0ZSBhcnJheQ=="
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
```
|
|
|
|
## Start
|
|
|
|
|
|
### StartTime
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `"0001-01-01T00:00:00Z"`
|
|
|
|
## State
|
|
The State methods are used to query, inspect, and interact with chain state.
|
|
Most methods take a TipSetKey as a parameter. The state looked up is the parent state of the tipset.
|
|
A nil TipSetKey can be provided as a param, this will cause the heaviest tipset in the chain to be used.
|
|
|
|
|
|
### StateAccountKey
|
|
StateAccountKey returns the public key address of the given ID address for secp and bls accounts
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"f01234"`
|
|
|
|
### StateActorCodeCIDs
|
|
StateActorCodeCIDs returns the CIDs of all the builtin actors for the given network version
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
22
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### StateActorManifestCID
|
|
StateActorManifestCID returns the CID of the builtin actors manifest for the given network version
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
22
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
```
|
|
|
|
### StateAllMinerFaults
|
|
StateAllMinerFaults returns all non-expired Faults that occur within lookback epochs of the given tipset
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
10101,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"Miner": "f01234",
|
|
"Epoch": 10101
|
|
}
|
|
]
|
|
```
|
|
|
|
### StateCall
|
|
StateCall runs the given message and returns its result without any persisted changes.
|
|
|
|
StateCall applies the message to the tipset's parent state. The
|
|
message is not applied on-top-of the messages in the passed-in
|
|
tipset.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"MsgCid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Msg": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"MsgRct": {
|
|
"ExitCode": 0,
|
|
"Return": "Ynl0ZSBhcnJheQ==",
|
|
"GasUsed": 9,
|
|
"EventsRoot": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
},
|
|
"GasCost": {
|
|
"Message": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"GasUsed": "0",
|
|
"BaseFeeBurn": "0",
|
|
"OverEstimationBurn": "0",
|
|
"MinerPenalty": "0",
|
|
"MinerTip": "0",
|
|
"Refund": "0",
|
|
"TotalCost": "0"
|
|
},
|
|
"ExecutionTrace": {
|
|
"Msg": {
|
|
"From": "f01234",
|
|
"To": "f01234",
|
|
"Value": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"ParamsCodec": 42,
|
|
"GasLimit": 42,
|
|
"ReadOnly": true
|
|
},
|
|
"MsgRct": {
|
|
"ExitCode": 0,
|
|
"Return": "Ynl0ZSBhcnJheQ==",
|
|
"ReturnCodec": 42
|
|
},
|
|
"InvokedActor": {
|
|
"Id": 1000,
|
|
"State": {
|
|
"Code": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Head": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Nonce": 42,
|
|
"Balance": "0",
|
|
"Address": "f01234"
|
|
}
|
|
},
|
|
"GasCharges": [
|
|
{
|
|
"Name": "string value",
|
|
"tg": 9,
|
|
"cg": 9,
|
|
"sg": 9,
|
|
"tt": 60000000000
|
|
}
|
|
],
|
|
"Subcalls": [
|
|
{
|
|
"Msg": {
|
|
"From": "f01234",
|
|
"To": "f01234",
|
|
"Value": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"ParamsCodec": 42,
|
|
"GasLimit": 42,
|
|
"ReadOnly": true
|
|
},
|
|
"MsgRct": {
|
|
"ExitCode": 0,
|
|
"Return": "Ynl0ZSBhcnJheQ==",
|
|
"ReturnCodec": 42
|
|
},
|
|
"InvokedActor": {
|
|
"Id": 1000,
|
|
"State": {
|
|
"Code": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Head": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Nonce": 42,
|
|
"Balance": "0",
|
|
"Address": "f01234"
|
|
}
|
|
},
|
|
"GasCharges": [
|
|
{
|
|
"Name": "string value",
|
|
"tg": 9,
|
|
"cg": 9,
|
|
"sg": 9,
|
|
"tt": 60000000000
|
|
}
|
|
],
|
|
"Subcalls": null
|
|
}
|
|
]
|
|
},
|
|
"Error": "string value",
|
|
"Duration": 60000000000
|
|
}
|
|
```
|
|
|
|
### StateChangedActors
|
|
StateChangedActors returns all the actors whose states change between the two given state CIDs
|
|
TODO: Should this take tipset keys instead?
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"t01236": {
|
|
"Code": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Head": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Nonce": 42,
|
|
"Balance": "0",
|
|
"Address": "f01234"
|
|
}
|
|
}
|
|
```
|
|
|
|
### StateCirculatingSupply
|
|
StateCirculatingSupply returns the exact circulating supply of Filecoin at the given tipset.
|
|
This is not used anywhere in the protocol itself, and is only for external consumption.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"0"`
|
|
|
|
### StateCompute
|
|
StateCompute is a flexible command that applies the given messages on the given tipset.
|
|
The messages are run as though the VM were at the provided height.
|
|
|
|
When called, StateCompute will:
|
|
- Load the provided tipset, or use the current chain head if not provided
|
|
- Compute the tipset state of the provided tipset on top of the parent state
|
|
- (note that this step runs before vmheight is applied to the execution)
|
|
- Execute state upgrade if any were scheduled at the epoch, or in null
|
|
blocks preceding the tipset
|
|
- Call the cron actor on null blocks preceding the tipset
|
|
- For each block in the tipset
|
|
- Apply messages in blocks in the specified
|
|
- Award block reward by calling the reward actor
|
|
- Call the cron actor for the current epoch
|
|
- If the specified vmheight is higher than the current epoch, apply any
|
|
needed state upgrades to the state
|
|
- Apply the specified messages to the state
|
|
|
|
The vmheight parameter sets VM execution epoch, and can be used to simulate
|
|
message execution in different network versions. If the specified vmheight
|
|
epoch is higher than the epoch of the specified tipset, any state upgrades
|
|
until the vmheight will be executed on the state before applying messages
|
|
specified by the user.
|
|
|
|
Note that the initial tipset state computation is not affected by the
|
|
vmheight parameter - only the messages in the `apply` set are
|
|
|
|
If the caller wants to simply compute the state, vmheight should be set to
|
|
the epoch of the specified tipset.
|
|
|
|
Messages in the `apply` parameter must have the correct nonces, and gas
|
|
values set.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
10101,
|
|
[
|
|
{
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
],
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Root": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Trace": [
|
|
{
|
|
"MsgCid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Msg": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"MsgRct": {
|
|
"ExitCode": 0,
|
|
"Return": "Ynl0ZSBhcnJheQ==",
|
|
"GasUsed": 9,
|
|
"EventsRoot": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
},
|
|
"GasCost": {
|
|
"Message": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"GasUsed": "0",
|
|
"BaseFeeBurn": "0",
|
|
"OverEstimationBurn": "0",
|
|
"MinerPenalty": "0",
|
|
"MinerTip": "0",
|
|
"Refund": "0",
|
|
"TotalCost": "0"
|
|
},
|
|
"ExecutionTrace": {
|
|
"Msg": {
|
|
"From": "f01234",
|
|
"To": "f01234",
|
|
"Value": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"ParamsCodec": 42,
|
|
"GasLimit": 42,
|
|
"ReadOnly": true
|
|
},
|
|
"MsgRct": {
|
|
"ExitCode": 0,
|
|
"Return": "Ynl0ZSBhcnJheQ==",
|
|
"ReturnCodec": 42
|
|
},
|
|
"InvokedActor": {
|
|
"Id": 1000,
|
|
"State": {
|
|
"Code": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Head": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Nonce": 42,
|
|
"Balance": "0",
|
|
"Address": "f01234"
|
|
}
|
|
},
|
|
"GasCharges": [
|
|
{
|
|
"Name": "string value",
|
|
"tg": 9,
|
|
"cg": 9,
|
|
"sg": 9,
|
|
"tt": 60000000000
|
|
}
|
|
],
|
|
"Subcalls": [
|
|
{
|
|
"Msg": {
|
|
"From": "f01234",
|
|
"To": "f01234",
|
|
"Value": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"ParamsCodec": 42,
|
|
"GasLimit": 42,
|
|
"ReadOnly": true
|
|
},
|
|
"MsgRct": {
|
|
"ExitCode": 0,
|
|
"Return": "Ynl0ZSBhcnJheQ==",
|
|
"ReturnCodec": 42
|
|
},
|
|
"InvokedActor": {
|
|
"Id": 1000,
|
|
"State": {
|
|
"Code": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Head": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Nonce": 42,
|
|
"Balance": "0",
|
|
"Address": "f01234"
|
|
}
|
|
},
|
|
"GasCharges": [
|
|
{
|
|
"Name": "string value",
|
|
"tg": 9,
|
|
"cg": 9,
|
|
"sg": 9,
|
|
"tt": 60000000000
|
|
}
|
|
],
|
|
"Subcalls": null
|
|
}
|
|
]
|
|
},
|
|
"Error": "string value",
|
|
"Duration": 60000000000
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
### StateComputeDataCID
|
|
StateComputeDataCID computes DataCID from a set of on-chain deals
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
8,
|
|
[
|
|
5432
|
|
],
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
```
|
|
|
|
### StateDealProviderCollateralBounds
|
|
StateDealProviderCollateralBounds returns the min and max collateral a storage provider
|
|
can issue. It takes the deal size and verified status as parameters.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
1032,
|
|
true,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Min": "0",
|
|
"Max": "0"
|
|
}
|
|
```
|
|
|
|
### StateDecodeParams
|
|
StateDecodeParams attempts to decode the provided params, based on the recipient actor address and method number.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
1,
|
|
"Ynl0ZSBhcnJheQ==",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### StateEncodeParams
|
|
StateEncodeParams attempts to encode the provided json params to the binary from
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
1,
|
|
"json raw message"
|
|
]
|
|
```
|
|
|
|
Response: `"Ynl0ZSBhcnJheQ=="`
|
|
|
|
### StateGetActor
|
|
StateGetActor returns the indicated actor's nonce and balance.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Code": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Head": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Nonce": 42,
|
|
"Balance": "0",
|
|
"Address": "f01234"
|
|
}
|
|
```
|
|
|
|
### StateGetAllAllocations
|
|
StateGetAllAllocations returns the all the allocations available in verified registry actor.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### StateGetAllClaims
|
|
StateGetAllClaims returns the all the claims available in verified registry actor.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### StateGetAllocation
|
|
StateGetAllocation returns the allocation for a given address and allocation ID.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
0,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Client": 1000,
|
|
"Provider": 1000,
|
|
"Data": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Size": 1032,
|
|
"TermMin": 10101,
|
|
"TermMax": 10101,
|
|
"Expiration": 10101
|
|
}
|
|
```
|
|
|
|
### StateGetAllocationForPendingDeal
|
|
StateGetAllocationForPendingDeal returns the allocation for a given deal ID of a pending deal. Returns nil if
|
|
pending allocation is not found.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
5432,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Client": 1000,
|
|
"Provider": 1000,
|
|
"Data": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Size": 1032,
|
|
"TermMin": 10101,
|
|
"TermMax": 10101,
|
|
"Expiration": 10101
|
|
}
|
|
```
|
|
|
|
### StateGetAllocationIdForPendingDeal
|
|
StateGetAllocationIdForPendingDeal is like StateGetAllocationForPendingDeal except it returns the allocation ID
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
5432,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `0`
|
|
|
|
### StateGetAllocations
|
|
StateGetAllocations returns the all the allocations for a given client.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### StateGetBeaconEntry
|
|
StateGetBeaconEntry returns the beacon entry for the given filecoin epoch. If
|
|
the entry has not yet been produced, the call will block until the entry
|
|
becomes available
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
10101
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Round": 42,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
```
|
|
|
|
### StateGetClaim
|
|
StateGetClaim returns the claim for a given address and claim ID.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
0,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Provider": 1000,
|
|
"Client": 1000,
|
|
"Data": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Size": 1032,
|
|
"TermMin": 10101,
|
|
"TermMax": 10101,
|
|
"TermStart": 10101,
|
|
"Sector": 9
|
|
}
|
|
```
|
|
|
|
### StateGetClaims
|
|
StateGetClaims returns the all the claims for a given provider.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### StateGetNetworkParams
|
|
StateGetNetworkParams return current network params
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"NetworkName": "lotus",
|
|
"BlockDelaySecs": 42,
|
|
"ConsensusMinerMinPower": "0",
|
|
"SupportedProofTypes": [
|
|
8
|
|
],
|
|
"PreCommitChallengeDelay": 10101,
|
|
"ForkUpgradeParams": {
|
|
"UpgradeSmokeHeight": 10101,
|
|
"UpgradeBreezeHeight": 10101,
|
|
"UpgradeIgnitionHeight": 10101,
|
|
"UpgradeLiftoffHeight": 10101,
|
|
"UpgradeAssemblyHeight": 10101,
|
|
"UpgradeRefuelHeight": 10101,
|
|
"UpgradeTapeHeight": 10101,
|
|
"UpgradeKumquatHeight": 10101,
|
|
"BreezeGasTampingDuration": 10101,
|
|
"UpgradeCalicoHeight": 10101,
|
|
"UpgradePersianHeight": 10101,
|
|
"UpgradeOrangeHeight": 10101,
|
|
"UpgradeClausHeight": 10101,
|
|
"UpgradeTrustHeight": 10101,
|
|
"UpgradeNorwegianHeight": 10101,
|
|
"UpgradeTurboHeight": 10101,
|
|
"UpgradeHyperdriveHeight": 10101,
|
|
"UpgradeChocolateHeight": 10101,
|
|
"UpgradeOhSnapHeight": 10101,
|
|
"UpgradeSkyrHeight": 10101,
|
|
"UpgradeSharkHeight": 10101,
|
|
"UpgradeHyggeHeight": 10101,
|
|
"UpgradeLightningHeight": 10101,
|
|
"UpgradeThunderHeight": 10101,
|
|
"UpgradeWatermelonHeight": 10101,
|
|
"UpgradeDragonHeight": 10101,
|
|
"UpgradePhoenixHeight": 10101
|
|
},
|
|
"Eip155ChainID": 123
|
|
}
|
|
```
|
|
|
|
### StateGetRandomnessDigestFromBeacon
|
|
StateGetRandomnessDigestFromBeacon is used to sample the beacon for randomness.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
10101,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"Bw=="`
|
|
|
|
### StateGetRandomnessDigestFromTickets
|
|
StateGetRandomnessDigestFromTickets. is used to sample the chain for randomness.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
10101,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"Bw=="`
|
|
|
|
### StateGetRandomnessFromBeacon
|
|
StateGetRandomnessFromBeacon is used to sample the beacon for randomness.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
2,
|
|
10101,
|
|
"Ynl0ZSBhcnJheQ==",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"Bw=="`
|
|
|
|
### StateGetRandomnessFromTickets
|
|
StateGetRandomnessFromTickets is used to sample the chain for randomness.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
2,
|
|
10101,
|
|
"Ynl0ZSBhcnJheQ==",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"Bw=="`
|
|
|
|
### StateListActors
|
|
StateListActors returns the addresses of every actor in the state
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
### StateListMessages
|
|
StateListMessages looks back and returns all messages with a matching to or from address, stopping at the given height.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"To": "f01234",
|
|
"From": "f01234"
|
|
},
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
],
|
|
10101
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
### StateListMiners
|
|
StateListMiners returns the addresses of every miner that has claimed power in the Power Actor
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
### StateLookupID
|
|
StateLookupID retrieves the ID address of the given address
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"f01234"`
|
|
|
|
### StateLookupRobustAddress
|
|
StateLookupRobustAddress returns the public key address of the given ID address for non-account addresses (multisig, miners etc)
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"f01234"`
|
|
|
|
### StateMarketBalance
|
|
StateMarketBalance looks up the Escrow and Locked balances of the given address in the Storage Market
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Escrow": "0",
|
|
"Locked": "0"
|
|
}
|
|
```
|
|
|
|
### StateMarketDeals
|
|
StateMarketDeals returns information about every deal in the Storage Market
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"t026363": {
|
|
"Proposal": {
|
|
"PieceCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"PieceSize": 1032,
|
|
"VerifiedDeal": true,
|
|
"Client": "f01234",
|
|
"Provider": "f01234",
|
|
"Label": "",
|
|
"StartEpoch": 10101,
|
|
"EndEpoch": 10101,
|
|
"StoragePricePerEpoch": "0",
|
|
"ProviderCollateral": "0",
|
|
"ClientCollateral": "0"
|
|
},
|
|
"State": {
|
|
"SectorStartEpoch": 10101,
|
|
"LastUpdatedEpoch": 10101,
|
|
"SlashEpoch": 10101
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### StateMarketParticipants
|
|
StateMarketParticipants returns the Escrow and Locked balances of every participant in the Storage Market
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"t026363": {
|
|
"Escrow": "0",
|
|
"Locked": "0"
|
|
}
|
|
}
|
|
```
|
|
|
|
### StateMarketStorageDeal
|
|
StateMarketStorageDeal returns information about the indicated deal
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
5432,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Proposal": {
|
|
"PieceCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"PieceSize": 1032,
|
|
"VerifiedDeal": true,
|
|
"Client": "f01234",
|
|
"Provider": "f01234",
|
|
"Label": "",
|
|
"StartEpoch": 10101,
|
|
"EndEpoch": 10101,
|
|
"StoragePricePerEpoch": "0",
|
|
"ProviderCollateral": "0",
|
|
"ClientCollateral": "0"
|
|
},
|
|
"State": {
|
|
"SectorStartEpoch": 10101,
|
|
"LastUpdatedEpoch": 10101,
|
|
"SlashEpoch": 10101
|
|
}
|
|
}
|
|
```
|
|
|
|
### StateMinerActiveSectors
|
|
StateMinerActiveSectors returns info about sectors that a given miner is actively proving.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"SectorNumber": 9,
|
|
"SealProof": 8,
|
|
"SealedCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"DealIDs": [
|
|
5432
|
|
],
|
|
"Activation": 10101,
|
|
"Expiration": 10101,
|
|
"DealWeight": "0",
|
|
"VerifiedDealWeight": "0",
|
|
"InitialPledge": "0",
|
|
"ExpectedDayReward": "0",
|
|
"ExpectedStoragePledge": "0",
|
|
"PowerBaseEpoch": 10101,
|
|
"ReplacedDayReward": "0",
|
|
"SectorKeyCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Flags": 0
|
|
}
|
|
]
|
|
```
|
|
|
|
### StateMinerAllocated
|
|
StateMinerAllocated returns a bitfield containing all sector numbers marked as allocated in miner state
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
0
|
|
]
|
|
```
|
|
|
|
### StateMinerAvailableBalance
|
|
StateMinerAvailableBalance returns the portion of a miner's balance that can be withdrawn or spent
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"0"`
|
|
|
|
### StateMinerDeadlines
|
|
StateMinerDeadlines returns all the proving deadlines for the given miner
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"PostSubmissions": [
|
|
5,
|
|
1
|
|
],
|
|
"DisputableProofCount": 42
|
|
}
|
|
]
|
|
```
|
|
|
|
### StateMinerFaults
|
|
StateMinerFaults returns a bitfield indicating the faulty sectors of the given miner
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
5,
|
|
1
|
|
]
|
|
```
|
|
|
|
### StateMinerInfo
|
|
StateMinerInfo returns info about the indicated miner
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Owner": "f01234",
|
|
"Worker": "f01234",
|
|
"NewWorker": "f01234",
|
|
"ControlAddresses": [
|
|
"f01234"
|
|
],
|
|
"WorkerChangeEpoch": 10101,
|
|
"PeerId": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf",
|
|
"Multiaddrs": [
|
|
"Ynl0ZSBhcnJheQ=="
|
|
],
|
|
"WindowPoStProofType": 8,
|
|
"SectorSize": 34359738368,
|
|
"WindowPoStPartitionSectors": 42,
|
|
"ConsensusFaultElapsed": 10101,
|
|
"PendingOwnerAddress": "f01234",
|
|
"Beneficiary": "f01234",
|
|
"BeneficiaryTerm": {
|
|
"Quota": "0",
|
|
"UsedQuota": "0",
|
|
"Expiration": 10101
|
|
},
|
|
"PendingBeneficiaryTerm": {
|
|
"NewBeneficiary": "f01234",
|
|
"NewQuota": "0",
|
|
"NewExpiration": 10101,
|
|
"ApprovedByBeneficiary": true,
|
|
"ApprovedByNominee": true
|
|
}
|
|
}
|
|
```
|
|
|
|
### StateMinerInitialPledgeCollateral
|
|
StateMinerInitialPledgeCollateral returns the initial pledge collateral for the specified miner's sector
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
{
|
|
"SealProof": 8,
|
|
"SectorNumber": 9,
|
|
"SealedCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"SealRandEpoch": 10101,
|
|
"DealIDs": [
|
|
5432
|
|
],
|
|
"Expiration": 10101,
|
|
"UnsealedCid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
},
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"0"`
|
|
|
|
### StateMinerPartitions
|
|
StateMinerPartitions returns all partitions in the specified deadline
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
42,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"AllSectors": [
|
|
5,
|
|
1
|
|
],
|
|
"FaultySectors": [
|
|
5,
|
|
1
|
|
],
|
|
"RecoveringSectors": [
|
|
5,
|
|
1
|
|
],
|
|
"LiveSectors": [
|
|
5,
|
|
1
|
|
],
|
|
"ActiveSectors": [
|
|
5,
|
|
1
|
|
]
|
|
}
|
|
]
|
|
```
|
|
|
|
### StateMinerPower
|
|
StateMinerPower returns the power of the indicated miner
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"MinerPower": {
|
|
"RawBytePower": "0",
|
|
"QualityAdjPower": "0"
|
|
},
|
|
"TotalPower": {
|
|
"RawBytePower": "0",
|
|
"QualityAdjPower": "0"
|
|
},
|
|
"HasMinPower": true
|
|
}
|
|
```
|
|
|
|
### StateMinerPreCommitDepositForPower
|
|
StateMinerInitialPledgeCollateral returns the precommit deposit for the specified miner's sector
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
{
|
|
"SealProof": 8,
|
|
"SectorNumber": 9,
|
|
"SealedCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"SealRandEpoch": 10101,
|
|
"DealIDs": [
|
|
5432
|
|
],
|
|
"Expiration": 10101,
|
|
"UnsealedCid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
},
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"0"`
|
|
|
|
### StateMinerProvingDeadline
|
|
StateMinerProvingDeadline calculates the deadline at some epoch for a proving period
|
|
and returns the deadline-related calculations.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"CurrentEpoch": 10101,
|
|
"PeriodStart": 10101,
|
|
"Index": 42,
|
|
"Open": 10101,
|
|
"Close": 10101,
|
|
"Challenge": 10101,
|
|
"FaultCutoff": 10101,
|
|
"WPoStPeriodDeadlines": 42,
|
|
"WPoStProvingPeriod": 10101,
|
|
"WPoStChallengeWindow": 10101,
|
|
"WPoStChallengeLookback": 10101,
|
|
"FaultDeclarationCutoff": 10101
|
|
}
|
|
```
|
|
|
|
### StateMinerRecoveries
|
|
StateMinerRecoveries returns a bitfield indicating the recovering sectors of the given miner
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
5,
|
|
1
|
|
]
|
|
```
|
|
|
|
### StateMinerSectorAllocated
|
|
StateMinerSectorAllocated checks if a sector number is marked as allocated.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
9,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `true`
|
|
|
|
### StateMinerSectorCount
|
|
StateMinerSectorCount returns the number of sectors in a miner's sector set and proving set
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Live": 42,
|
|
"Active": 42,
|
|
"Faulty": 42
|
|
}
|
|
```
|
|
|
|
### StateMinerSectors
|
|
StateMinerSectors returns info about the given miner's sectors. If the filter bitfield is nil, all sectors are included.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
0
|
|
],
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
{
|
|
"SectorNumber": 9,
|
|
"SealProof": 8,
|
|
"SealedCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"DealIDs": [
|
|
5432
|
|
],
|
|
"Activation": 10101,
|
|
"Expiration": 10101,
|
|
"DealWeight": "0",
|
|
"VerifiedDealWeight": "0",
|
|
"InitialPledge": "0",
|
|
"ExpectedDayReward": "0",
|
|
"ExpectedStoragePledge": "0",
|
|
"PowerBaseEpoch": 10101,
|
|
"ReplacedDayReward": "0",
|
|
"SectorKeyCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Flags": 0
|
|
}
|
|
]
|
|
```
|
|
|
|
### StateNetworkName
|
|
StateNetworkName returns the name of the network the node is synced to
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `"lotus"`
|
|
|
|
### StateNetworkVersion
|
|
StateNetworkVersion returns the network version at the given tipset
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `22`
|
|
|
|
### StateReadState
|
|
StateReadState returns the indicated actor's state.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Balance": "0",
|
|
"Code": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"State": {}
|
|
}
|
|
```
|
|
|
|
### StateReplay
|
|
StateReplay replays a given message, assuming it was included in a block in the specified tipset.
|
|
|
|
If a tipset key is provided, and a replacing message is not found on chain,
|
|
the method will return an error saying that the message wasn't found
|
|
|
|
If no tipset key is provided, the appropriate tipset is looked up, and if
|
|
the message was gas-repriced, the on-chain message will be replayed - in
|
|
that case the returned InvocResult.MsgCid will not match the Cid param
|
|
|
|
If the caller wants to ensure that exactly the requested message was executed,
|
|
they MUST check that InvocResult.MsgCid is equal to the provided Cid.
|
|
Without this check both the requested and original message may appear as
|
|
successfully executed on-chain, which may look like a double-spend.
|
|
|
|
A replacing message is a message with a different CID, any of Gas values, and
|
|
different signature, but with all other parameters matching (source/destination,
|
|
nonce, params, etc.)
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
],
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"MsgCid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Msg": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"MsgRct": {
|
|
"ExitCode": 0,
|
|
"Return": "Ynl0ZSBhcnJheQ==",
|
|
"GasUsed": 9,
|
|
"EventsRoot": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
},
|
|
"GasCost": {
|
|
"Message": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"GasUsed": "0",
|
|
"BaseFeeBurn": "0",
|
|
"OverEstimationBurn": "0",
|
|
"MinerPenalty": "0",
|
|
"MinerTip": "0",
|
|
"Refund": "0",
|
|
"TotalCost": "0"
|
|
},
|
|
"ExecutionTrace": {
|
|
"Msg": {
|
|
"From": "f01234",
|
|
"To": "f01234",
|
|
"Value": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"ParamsCodec": 42,
|
|
"GasLimit": 42,
|
|
"ReadOnly": true
|
|
},
|
|
"MsgRct": {
|
|
"ExitCode": 0,
|
|
"Return": "Ynl0ZSBhcnJheQ==",
|
|
"ReturnCodec": 42
|
|
},
|
|
"InvokedActor": {
|
|
"Id": 1000,
|
|
"State": {
|
|
"Code": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Head": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Nonce": 42,
|
|
"Balance": "0",
|
|
"Address": "f01234"
|
|
}
|
|
},
|
|
"GasCharges": [
|
|
{
|
|
"Name": "string value",
|
|
"tg": 9,
|
|
"cg": 9,
|
|
"sg": 9,
|
|
"tt": 60000000000
|
|
}
|
|
],
|
|
"Subcalls": [
|
|
{
|
|
"Msg": {
|
|
"From": "f01234",
|
|
"To": "f01234",
|
|
"Value": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"ParamsCodec": 42,
|
|
"GasLimit": 42,
|
|
"ReadOnly": true
|
|
},
|
|
"MsgRct": {
|
|
"ExitCode": 0,
|
|
"Return": "Ynl0ZSBhcnJheQ==",
|
|
"ReturnCodec": 42
|
|
},
|
|
"InvokedActor": {
|
|
"Id": 1000,
|
|
"State": {
|
|
"Code": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Head": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Nonce": 42,
|
|
"Balance": "0",
|
|
"Address": "f01234"
|
|
}
|
|
},
|
|
"GasCharges": [
|
|
{
|
|
"Name": "string value",
|
|
"tg": 9,
|
|
"cg": 9,
|
|
"sg": 9,
|
|
"tt": 60000000000
|
|
}
|
|
],
|
|
"Subcalls": null
|
|
}
|
|
]
|
|
},
|
|
"Error": "string value",
|
|
"Duration": 60000000000
|
|
}
|
|
```
|
|
|
|
### StateSearchMsg
|
|
StateSearchMsg looks back up to limit epochs in the chain for a message, and returns its receipt and the tipset where it was executed
|
|
|
|
NOTE: If a replacing message is found on chain, this method will return
|
|
a MsgLookup for the replacing message - the MsgLookup.Message will be a different
|
|
CID than the one provided in the 'cid' param, MsgLookup.Receipt will contain the
|
|
result of the execution of the replacing message.
|
|
|
|
If the caller wants to ensure that exactly the requested message was executed,
|
|
they must check that MsgLookup.Message is equal to the provided 'cid', or set the
|
|
`allowReplaced` parameter to false. Without this check, and with `allowReplaced`
|
|
set to true, both the requested and original message may appear as
|
|
successfully executed on-chain, which may look like a double-spend.
|
|
|
|
A replacing message is a message with a different CID, any of Gas values, and
|
|
different signature, but with all other parameters matching (source/destination,
|
|
nonce, params, etc.)
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
],
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
10101,
|
|
true
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Receipt": {
|
|
"ExitCode": 0,
|
|
"Return": "Ynl0ZSBhcnJheQ==",
|
|
"GasUsed": 9,
|
|
"EventsRoot": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
},
|
|
"ReturnDec": {},
|
|
"TipSet": [
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
],
|
|
"Height": 10101
|
|
}
|
|
```
|
|
|
|
### StateSectorExpiration
|
|
StateSectorExpiration returns epoch at which given sector will expire
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
9,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"OnTime": 10101,
|
|
"Early": 10101
|
|
}
|
|
```
|
|
|
|
### StateSectorGetInfo
|
|
StateSectorGetInfo returns the on-chain info for the specified miner's sector. Returns null in case the sector info isn't found
|
|
NOTE: returned info.Expiration may not be accurate in some cases, use StateSectorExpiration to get accurate
|
|
expiration epoch
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
9,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"SectorNumber": 9,
|
|
"SealProof": 8,
|
|
"SealedCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"DealIDs": [
|
|
5432
|
|
],
|
|
"Activation": 10101,
|
|
"Expiration": 10101,
|
|
"DealWeight": "0",
|
|
"VerifiedDealWeight": "0",
|
|
"InitialPledge": "0",
|
|
"ExpectedDayReward": "0",
|
|
"ExpectedStoragePledge": "0",
|
|
"PowerBaseEpoch": 10101,
|
|
"ReplacedDayReward": "0",
|
|
"SectorKeyCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Flags": 0
|
|
}
|
|
```
|
|
|
|
### StateSectorPartition
|
|
StateSectorPartition finds deadline/partition with the specified sector
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
9,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Deadline": 42,
|
|
"Partition": 42
|
|
}
|
|
```
|
|
|
|
### StateSectorPreCommitInfo
|
|
StateSectorPreCommitInfo returns the PreCommit info for the specified miner's sector.
|
|
Returns nil and no error if the sector isn't precommitted.
|
|
|
|
Note that the sector number may be allocated while PreCommitInfo is nil. This means that either allocated sector
|
|
numbers were compacted, and the sector number was marked as allocated in order to reduce size of the allocated
|
|
sectors bitfield, or that the sector was precommitted, but the precommit has expired.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
9,
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Info": {
|
|
"SealProof": 8,
|
|
"SectorNumber": 9,
|
|
"SealedCID": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"SealRandEpoch": 10101,
|
|
"DealIDs": [
|
|
5432
|
|
],
|
|
"Expiration": 10101,
|
|
"UnsealedCid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
},
|
|
"PreCommitDeposit": "0",
|
|
"PreCommitEpoch": 10101
|
|
}
|
|
```
|
|
|
|
### StateVMCirculatingSupplyInternal
|
|
StateVMCirculatingSupplyInternal returns an approximation of the circulating supply of Filecoin at the given tipset.
|
|
This is the value reported by the runtime interface to actors code.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"FilVested": "0",
|
|
"FilMined": "0",
|
|
"FilBurnt": "0",
|
|
"FilLocked": "0",
|
|
"FilCirculating": "0",
|
|
"FilReserveDisbursed": "0"
|
|
}
|
|
```
|
|
|
|
### StateVerifiedClientStatus
|
|
StateVerifiedClientStatus returns the data cap for the given address.
|
|
Returns nil if there is no entry in the data cap table for the
|
|
address.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"0"`
|
|
|
|
### StateVerifiedRegistryRootKey
|
|
StateVerifiedRegistryRootKey returns the address of the Verified Registry's root key
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"f01234"`
|
|
|
|
### StateVerifierStatus
|
|
StateVerifierStatus returns the data cap for the given address.
|
|
Returns nil if there is no entry in the data cap table for the
|
|
address.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `"0"`
|
|
|
|
### StateWaitMsg
|
|
StateWaitMsg looks back up to limit epochs in the chain for a message.
|
|
If not found, it blocks until the message arrives on chain, and gets to the
|
|
indicated confidence depth.
|
|
|
|
NOTE: If a replacing message is found on chain, this method will return
|
|
a MsgLookup for the replacing message - the MsgLookup.Message will be a different
|
|
CID than the one provided in the 'cid' param, MsgLookup.Receipt will contain the
|
|
result of the execution of the replacing message.
|
|
|
|
If the caller wants to ensure that exactly the requested message was executed,
|
|
they must check that MsgLookup.Message is equal to the provided 'cid', or set the
|
|
`allowReplaced` parameter to false. Without this check, and with `allowReplaced`
|
|
set to true, both the requested and original message may appear as
|
|
successfully executed on-chain, which may look like a double-spend.
|
|
|
|
A replacing message is a message with a different CID, any of Gas values, and
|
|
different signature, but with all other parameters matching (source/destination,
|
|
nonce, params, etc.)
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
42,
|
|
10101,
|
|
true
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Receipt": {
|
|
"ExitCode": 0,
|
|
"Return": "Ynl0ZSBhcnJheQ==",
|
|
"GasUsed": 9,
|
|
"EventsRoot": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
},
|
|
"ReturnDec": {},
|
|
"TipSet": [
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
],
|
|
"Height": 10101
|
|
}
|
|
```
|
|
|
|
## Subscribe
|
|
|
|
|
|
### SubscribeActorEvents
|
|
SubscribeActorEvents returns a long-lived stream of all user-programmed and built-in actor
|
|
events that match the given filter.
|
|
Events that match the given filter are written to the stream in real-time as they are emitted
|
|
from the FVM.
|
|
The response stream is closed when the client disconnects, when a ToHeight is specified and is
|
|
reached, or if there is an error while writing an event to the stream.
|
|
This API also allows clients to read all historical events matching the given filter before any
|
|
real-time events are written to the response stream if the filter specifies an earlier
|
|
FromHeight.
|
|
Results available from this API may be limited by the MaxFilterResults and MaxFilterHeightRange
|
|
configuration options and also the amount of historical data available in the node.
|
|
|
|
Note: this API is only available via websocket connections.
|
|
This is an EXPERIMENTAL API and may be subject to change.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"addresses": [
|
|
"f01234"
|
|
],
|
|
"fields": {
|
|
"abc": [
|
|
{
|
|
"codec": 81,
|
|
"value": "ZGRhdGE="
|
|
}
|
|
]
|
|
},
|
|
"fromHeight": 1010,
|
|
"toHeight": 1020
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"entries": [
|
|
{
|
|
"Flags": 7,
|
|
"Key": "string value",
|
|
"Codec": 42,
|
|
"Value": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
],
|
|
"emitter": "f01234",
|
|
"reverted": true,
|
|
"height": 10101,
|
|
"tipsetKey": [
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
],
|
|
"msgCid": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
}
|
|
```
|
|
|
|
## Sync
|
|
The Sync method group contains methods for interacting with and
|
|
observing the lotus sync service.
|
|
|
|
|
|
### SyncCheckBad
|
|
SyncCheckBad checks if a block was marked as bad, and if it was, returns
|
|
the reason.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `"string value"`
|
|
|
|
### SyncCheckpoint
|
|
SyncCheckpoint marks a blocks as checkpointed, meaning that it won't ever fork away from it.
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### SyncIncomingBlocks
|
|
SyncIncomingBlocks returns a channel streaming incoming, potentially not
|
|
yet synced block headers.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Miner": "f01234",
|
|
"Ticket": {
|
|
"VRFProof": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"ElectionProof": {
|
|
"WinCount": 9,
|
|
"VRFProof": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"BeaconEntries": [
|
|
{
|
|
"Round": 42,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
],
|
|
"WinPoStProof": [
|
|
{
|
|
"PoStProof": 8,
|
|
"ProofBytes": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
],
|
|
"Parents": [
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
],
|
|
"ParentWeight": "0",
|
|
"Height": 10101,
|
|
"ParentStateRoot": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"ParentMessageReceipts": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Messages": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"BLSAggregate": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"Timestamp": 42,
|
|
"BlockSig": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"ForkSignaling": 42,
|
|
"ParentBaseFee": "0"
|
|
}
|
|
```
|
|
|
|
### SyncMarkBad
|
|
SyncMarkBad marks a blocks as bad, meaning that it won't ever by synced.
|
|
Use with extreme caution.
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### SyncState
|
|
SyncState returns the current status of the lotus sync system.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"ActiveSyncs": [
|
|
{
|
|
"WorkerID": 42,
|
|
"Base": {
|
|
"Cids": null,
|
|
"Blocks": null,
|
|
"Height": 0
|
|
},
|
|
"Target": {
|
|
"Cids": null,
|
|
"Blocks": null,
|
|
"Height": 0
|
|
},
|
|
"Stage": 1,
|
|
"Height": 10101,
|
|
"Start": "0001-01-01T00:00:00Z",
|
|
"End": "0001-01-01T00:00:00Z",
|
|
"Message": "string value"
|
|
}
|
|
],
|
|
"VMApplied": 42
|
|
}
|
|
```
|
|
|
|
### SyncSubmitBlock
|
|
SyncSubmitBlock can be used to submit a newly created block to the.
|
|
network through this node
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Header": {
|
|
"Miner": "f01234",
|
|
"Ticket": {
|
|
"VRFProof": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"ElectionProof": {
|
|
"WinCount": 9,
|
|
"VRFProof": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"BeaconEntries": [
|
|
{
|
|
"Round": 42,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
],
|
|
"WinPoStProof": [
|
|
{
|
|
"PoStProof": 8,
|
|
"ProofBytes": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
],
|
|
"Parents": [
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
],
|
|
"ParentWeight": "0",
|
|
"Height": 10101,
|
|
"ParentStateRoot": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"ParentMessageReceipts": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"Messages": {
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
"BLSAggregate": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"Timestamp": 42,
|
|
"BlockSig": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"ForkSignaling": 42,
|
|
"ParentBaseFee": "0"
|
|
},
|
|
"BlsMessages": [
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
],
|
|
"SecpkMessages": [
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### SyncUnmarkAllBad
|
|
SyncUnmarkAllBad purges bad block cache, making it possible to sync to chains previously marked as bad
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `{}`
|
|
|
|
### SyncUnmarkBad
|
|
SyncUnmarkBad unmarks a blocks as bad, making it possible to be validated and synced again.
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### SyncValidateTipset
|
|
SyncValidateTipset indicates whether the provided tipset is valid or not
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
[
|
|
{
|
|
"/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4"
|
|
},
|
|
{
|
|
"/": "bafy2bzacebp3shtrn43k7g3unredz7fxn4gj533d3o43tqn2p2ipxxhrvchve"
|
|
}
|
|
]
|
|
]
|
|
```
|
|
|
|
Response: `true`
|
|
|
|
## Wallet
|
|
|
|
|
|
### WalletBalance
|
|
WalletBalance returns the balance of the given address at the current head of the chain.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response: `"0"`
|
|
|
|
### WalletDefaultAddress
|
|
WalletDefaultAddress returns the address marked as default in the wallet.
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `"f01234"`
|
|
|
|
### WalletDelete
|
|
WalletDelete deletes an address from the wallet.
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### WalletExport
|
|
WalletExport returns the private key of an address in the wallet.
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Type": "bls",
|
|
"PrivateKey": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
```
|
|
|
|
### WalletHas
|
|
WalletHas indicates whether the given address is in the wallet.
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response: `true`
|
|
|
|
### WalletImport
|
|
WalletImport receives a KeyInfo, which includes a private key, and imports it into the wallet.
|
|
|
|
|
|
Perms: admin
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
{
|
|
"Type": "bls",
|
|
"PrivateKey": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `"f01234"`
|
|
|
|
### WalletList
|
|
WalletList lists all the addresses in the wallet.
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs: `null`
|
|
|
|
Response:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
### WalletNew
|
|
WalletNew creates a new address in the wallet with the given sigType.
|
|
Available key types: bls, secp256k1, secp256k1-ledger
|
|
Support for numerical types: 1 - secp256k1, 2 - BLS is deprecated
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"bls"
|
|
]
|
|
```
|
|
|
|
Response: `"f01234"`
|
|
|
|
### WalletSetDefault
|
|
WalletSetDefault marks the given address as as the default one.
|
|
|
|
|
|
Perms: write
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234"
|
|
]
|
|
```
|
|
|
|
Response: `{}`
|
|
|
|
### WalletSign
|
|
WalletSign signs the given bytes using the given address.
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"Ynl0ZSBhcnJheQ=="
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
```
|
|
|
|
### WalletSignMessage
|
|
WalletSignMessage signs the given message using the given address.
|
|
|
|
|
|
Perms: sign
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
{
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
]
|
|
```
|
|
|
|
Response:
|
|
```json
|
|
{
|
|
"Message": {
|
|
"Version": 42,
|
|
"To": "f01234",
|
|
"From": "f01234",
|
|
"Nonce": 42,
|
|
"Value": "0",
|
|
"GasLimit": 9,
|
|
"GasFeeCap": "0",
|
|
"GasPremium": "0",
|
|
"Method": 1,
|
|
"Params": "Ynl0ZSBhcnJheQ==",
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
},
|
|
"Signature": {
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
},
|
|
"CID": {
|
|
"/": "bafy2bzacebbpdegvr3i4cosewthysg5xkxpqfn2wfcz6mv2hmoktwbdxkax4s"
|
|
}
|
|
}
|
|
```
|
|
|
|
### WalletValidateAddress
|
|
WalletValidateAddress validates whether a given string can be decoded as a well-formed address
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"string value"
|
|
]
|
|
```
|
|
|
|
Response: `"f01234"`
|
|
|
|
### WalletVerify
|
|
WalletVerify takes an address, a signature, and some bytes, and indicates whether the signature is valid.
|
|
The address does not have to be in the wallet.
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs:
|
|
```json
|
|
[
|
|
"f01234",
|
|
"Ynl0ZSBhcnJheQ==",
|
|
{
|
|
"Type": 2,
|
|
"Data": "Ynl0ZSBhcnJheQ=="
|
|
}
|
|
]
|
|
```
|
|
|
|
Response: `true`
|
|
|
|
## Web3
|
|
|
|
|
|
### Web3ClientVersion
|
|
Returns the client version
|
|
|
|
|
|
Perms: read
|
|
|
|
Inputs: `null`
|
|
|
|
Response: `"string value"`
|
|
|