RPC List¶
For the specific definition of API, please refer to the following link: api/api.proto core/Contract.proto.
Note
SolidityNode is deprecated. Now a FullNode supports all RPCs of a SolidityNode. New developers should deploy FullNode only.
1. Get account information
rpc GetAccount (Account) returns (Account) {}
2. TRX transfer
rpc CreateTransaction (TransferContract) returns (Transaction) {}
3. Broadcast transaction
rpc BroadcastTransaction (Transaction) returns (Return) {}
Description: Transfer, vote, issuance of token, or participation in token offering. Sending signed transaction information to node, and broadcasting it to the entire network after witness verification.
4. Create an account
rpc CreateAccount (AccountCreateContract) returns (Transaction) {}
5. Account name update
rpc UpdateAccount (AccountUpdateContract) returns (Transaction) {}
6. Vote for super representative candidates
rpc VoteWitnessAccount (VoteWitnessContract) returns (Transaction) {}
7. Query the ratio of brokerage of the witness
rpc GetBrokerageInfo (BytesMessage) returns (NumberMessage) {}
8. Query unclaimed reward
rpc GetRewardInfo (BytesMessage) returns (NumberMessage) {}
9. Update the ratio of brokerage
rpc UpdateBrokerage (UpdateBrokerageContract) returns (TransactionExtention) {}
10. Issue a token
rpc CreateAssetIssue (AssetIssueContract) returns (Transaction) {}
11. Query of list of super representative candidates
rpc ListWitnesses (EmptyMessage) returns (WitnessList) {}
12. Application for super representative
rpc CreateWitness (WitnessCreateContract) returns (Transaction) {}
Description: To apply to become TRON’s Super Representative candidate.
13. Information update of Super Representative candidates
rpc UpdateWitness (WitnessUpdateContract) returns (Transaction) {}
Description: Update the website url of the SR.
14. Token transfer
rpc TransferAsset (TransferAssetContract) returns (Transaction){}
15. Participate a token
rpc ParticipateAssetIssue (ParticipateAssetIssueContract) returns (Transaction) {}
16. Query the list of nodes connected to the ip of the api
rpc ListNodes (EmptyMessage) returns (NodeList) {}
17. Query the list of all issued tokens
rpc GetAssetIssueList (EmptyMessage) returns (AssetIssueList) {}
18. Query the token issued by a given account
rpc GetAssetIssueByAccount (Account) returns (AssetIssueList) {}
19. Query the token information by token name
rpc GetAssetIssueByName (BytesMessage) returns (AssetIssueContract) {}
20. Query the list of tokens by timestamp
rpc GetAssetIssueListByTimestamp (NumberMessage) returns (AssetIssueList){}
21. Get current block information
rpc GetNowBlock (EmptyMessage) returns (Block) {}
22. Get a block by block height
rpc GetBlockByNum (NumberMessage) returns (Block) {}
23. Get the total number of transactions
rpc TotalTransaction (EmptyMessage) returns (NumberMessage) {}
24. Query the transaction by transaction id
rpc getTransactionById (BytesMessage) returns (Transaction) {}
25. Query the transaction by timestamp
rpc getTransactionsByTimestamp (TimeMessage) returns (TransactionList) {}
26. Query the transactions initiated by an account
rpc getTransactionsFromThis (Account) returns (TransactionList) {}
27. Query the transactions received by an account
rpc getTransactionsToThis (Account) returns (NumberMessage) {}
28. Stake TRX
rpc FreezeBalance (FreezeBalanceContract) returns (Transaction) {}
29. Unstake TRX
rpc UnfreezeBalance (UnfreezeBalanceContract) returns (Transaction) {}
30. Block producing reward redemption
rpc WithdrawBalance (WithdrawBalanceContract) returns (Transaction) {}
31. Unstake token balance
rpc UnfreezeAsset (UnfreezeAssetContract) returns (Transaction) {}
32. Query the next maintenance time
rpc GetNextMaintenanceTime (EmptyMessage) returns (NumberMessage) {}
33. Query the transaction fee & block information
rpc GetTransactionInfoById (BytesMessage) returns (TransactionInfo) {}
34. Query block information by block id
rpc GetBlockById (BytesMessage) returns (Block) {}
35. Update token information
rpc UpdateAsset (UpdateAssetContract) returns (Transaction) {}
Description: Token update can only be initiated by the token issuer to update token description, url, maximum bandwidth consumption by each account and total bandwidth consumption.
36. Query the list of all the tokens by pagination
rpc GetPaginatedAssetIssueList (PaginatedMessage) returns (AssetIssueList) {}
37. To sign a transaction Sign the transaction, it is recommended to sign transactions offline.
rpc GetTransactionSign (TransactionSign) returns (Transaction) {}
38. Address and private key creation
rpc CreateAdresss (BytesMessage) returns (BytesMessage) {}
39. TRX easy transfer
rpc EasyTransfer (EasyTransferMessage) returns (EasyTransferResponse) {}
40. Deploy a smart contract
rpc DeployContract (CreateSmartContract) returns (TransactionExtention) {}
41. Trigger a smart contract
rpc TriggerContract (TriggerSmartContract) returns (TransactionExtention) {}
42. Create a shielded transaction
rpc CreateShieldedTransaction (PrivateParameters) returns (TransactionExtention) {}
43. Get a Merkle tree information of a note
rpc GetMerkleTreeVoucherInfo (OutputPointInfo) returns (IncrementalMerkleVoucherInfo) {}
44. Scan note by ivk
rpc ScanNoteByIvk (IvkDecryptParameters) returns (DecryptNotes) {}
45. Scan note by ovk
rpc ScanNoteByOvk (OvkDecryptParameters) returns (DecryptNotes) {}
46. Get spending key
rpc GetSpendingKey (EmptyMessage) returns (BytesMessage) {}
47. Get expanded spending key
rpc GetExpandedSpendingKey (BytesMessage) returns (ExpandedSpendingKeyMessage) {}
48. Get ak from ask
rpc GetAkFromAsk (BytesMessage) returns (BytesMessage) {}
49. Get nk from nsk
rpc GetNkFromNsk (BytesMessage) returns (BytesMessage) {}
50. Get incoming viewing key
rpc GetIncomingViewingKey (ViewingKeyMessage) returns (IncomingViewingKeyMessage) {}
51. Get diversifier
rpc GetDiversifier (EmptyMessage) returns (DiversifierMessage) {}
52. Get zen payment address
rpc GetZenPaymentAddress (IncomingViewingKeyDiversifierMessage) returns (PaymentAddressMessage) {}
53. Get rcm
rpc GetRcm (EmptyMessage) returns (BytesMessage) {}
54. Get a note status of is spent or not
rpc IsSpend (NoteParameters) returns (SpendResult) {}
55. Create a shielded transaction without using ask
rpc CreateShieldedTransactionWithoutSpendAuthSig (PrivateParametersWithoutAsk) returns (TransactionExtention) {}
56. Create a shielded transaction hash
rpc GetShieldTransactionHash (Transaction) returns (BytesMessage) {}
57. Create a signature for a shielded transaction
rpc CreateSpendAuthSig (SpendAuthSigParameters) returns (BytesMessage) {}
58. Create a shield nullifier
rpc CreateShieldNullifier (NfParameters) returns (BytesMessage) {}
59. Get new shielded address
rpc GetNewShieldedAddress (EmptyMessage) returns (ShieldedAddressInfo){}
60. Create shielded contract parameters
rpc CreateShieldedContractParameters (PrivateShieldedTRC20Parameters) returns (ShieldedTRC20Parameters) {}
61. Create shielded contract parameters without ask
rpc CreateShieldedContractParametersWithoutAsk (PrivateShieldedTRC20ParametersWithoutAsk) returns (ShieldedTRC20Parameters) {}
62. Scan shielded TRC20 notes by ivk
rpc ScanShieldedTRC20NotesbyIvk (IvkDecryptTRC20Parameters) returns (DecryptNotesTRC20) {}
63. Scan shielded TRC20 notes by ovk
rpc ScanShieldedTRC20NotesbyOvk (OvkDecryptTRC20Parameters) returns (DecryptNotesTRC20) {}
64. Get the status of shielded TRC20 note of spent or not
rpc IsShieldedTRC20ContractNoteSpent (NfTRC20Parameters) returns (NullifierResult) {}
65. Get the trigger input for the shielded TRC20
rpc GetTriggerInputForShieldedTRC20Contract (ShieldedTRC20TriggerContractParameters) returns (BytesMessage) {}
66. Create an market order
Interface statement:
rpc MarketSellAsset (MarketSellAssetContract) returns (TransactionExtention) {};
Nodes: FullNode
67. Cancel the order
Interface statement:
rpc MarketCancelOrder (MarketCancelOrderContract) returns (TransactionExtention) {};
Nodes: FullNode
68. Get all orders for the account
Interface statement:
rpc GetMarketOrderByAccount (BytesMessage) returns (MarketOrderList) {};
Nodes: FullNode
69. Get all trading pairs
Interface statement:
rpc GetMarketPairList (EmptyMessage) returns (MarketOrderPairList) {};
Nodes: FullNode
70. Get all orders for the trading pair
Interface statement:
rpc GetMarketOrderListByPair (MarketOrderPair) returns (MarketOrderList) {};
Nodes: FullNode
71. Get all prices for the trading pair
Interface statement:
rpc GetMarketPriceByPair (MarketOrderPair) returns (MarketPriceList) {};
Nodes: FullNode
72. Get order by id
Interface statement:
rpc GetMarketOrderById (BytesMessage) returns (MarketOrder) {};
Nodes: FullNode
73. perform a historical balance lookup
Interface statement:
rpc GetAccountBalance (AccountBalanceRequest) returns (AccountBalanceResponse){};
Nodes: FullNode
74. fetch all balance-changing transactions in a block
Interface statement:
rpc GetBlockBalanceTrace (BlockBalanceTrace.BlockIdentifier) returns (BlockBalanceTrace) {};
Nodes: FullNode
75. get the burn trx amount
Interface statement:
rpc GetBurnTrx (EmptyMessage) returns (NumberMessage) {};
Nodes: FullNode and SolidityNode