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) {}
Nodes: Fullnode and SolidityNode

2. TRX transfer

rpc CreateTransaction (TransferContract) returns (Transaction) {}
Nodes: Fullnode

3. Broadcast transaction

rpc BroadcastTransaction (Transaction) returns (Return) {}
Nodes: Fullnode

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) {}
Nodes: FullNode

5. Account name update

rpc UpdateAccount (AccountUpdateContract) returns (Transaction) {}
Nodes: Fullnode

6. Vote for super representative candidates

rpc VoteWitnessAccount (VoteWitnessContract) returns (Transaction) {}
Nodes: FullNode

7. Query the ratio of brokerage of the witness

rpc GetBrokerageInfo (BytesMessage) returns (NumberMessage) {}
Nodes: FullNode

8. Query unclaimed reward

rpc GetRewardInfo (BytesMessage) returns (NumberMessage) {}
Nodes: FullNode

9. Update the ratio of brokerage

rpc UpdateBrokerage (UpdateBrokerageContract) returns (TransactionExtention) {}
Nodes: FullNode

10. Issue a token

rpc CreateAssetIssue (AssetIssueContract) returns (Transaction) {}
Nodes: FullNode

11. Query of list of super representative candidates

rpc ListWitnesses (EmptyMessage) returns (WitnessList) {}
Nodes: FullNode and SolidityNode

12. Application for super representative

rpc CreateWitness (WitnessCreateContract) returns (Transaction) {}
Nodes: FullNode

Description: To apply to become TRON’s Super Representative candidate.

13. Information update of Super Representative candidates

rpc UpdateWitness (WitnessUpdateContract) returns (Transaction) {}
Nodes: FullNode

Description: Update the website url of the SR.

14. Token transfer

rpc TransferAsset (TransferAssetContract) returns (Transaction){}
Node: FullNode

15. Participate a token

rpc ParticipateAssetIssue (ParticipateAssetIssueContract) returns (Transaction) {}
Nodes: FullNode

16. Query the list of nodes connected to the ip of the api

rpc ListNodes (EmptyMessage) returns (NodeList) {}
Nodes: FullNode and SolidityNode

17. Query the list of all issued tokens

rpc GetAssetIssueList (EmptyMessage) returns (AssetIssueList) {}
Nodes: FullNode and SolidityNode

18. Query the token issued by a given account

rpc GetAssetIssueByAccount (Account) returns (AssetIssueList) {}
Nodes: FullNode and SolidityNode

19. Query the token information by token name

rpc GetAssetIssueByName (BytesMessage) returns (AssetIssueContract) {}
Nodes: FullNode and Soliditynode

20. Query the list of tokens by timestamp

rpc GetAssetIssueListByTimestamp (NumberMessage) returns (AssetIssueList){}
Nodes: SolidityNode

21. Get current block information

rpc GetNowBlock (EmptyMessage) returns (Block) {}
Nodes: FullNode and SolidityNode

22. Get a block by block height

rpc GetBlockByNum (NumberMessage) returns (Block) {}
Nodes: FullNode and SolidityNode

23. Get the total number of transactions

rpc TotalTransaction (EmptyMessage) returns (NumberMessage) {}
Nodes: FullNode and SolidityNode

24. Query the transaction by transaction id

rpc getTransactionById (BytesMessage) returns (Transaction) {}
Nodes: SolidityNode

25. Query the transaction by timestamp

rpc getTransactionsByTimestamp (TimeMessage) returns (TransactionList) {}
Nodes: SolidityNode

26. Query the transactions initiated by an account

rpc getTransactionsFromThis (Account) returns (TransactionList) {}
Nodes: SolidityNode

27. Query the transactions received by an account

rpc getTransactionsToThis (Account) returns (NumberMessage) {}
Nodes: SolidityNode

28. Freeze TRX

rpc FreezeBalance (FreezeBalanceContract) returns (Transaction) {}
Nodes: FullNode

29. Unfreeze TRX

rpc UnfreezeBalance (UnfreezeBalanceContract) returns (Transaction) {}
Nodes: FullNode

30. Block producing reward redemption

rpc WithdrawBalance (WithdrawBalanceContract) returns (Transaction) {}
Nodes: FullNode

31. Unfreeze token balance

rpc UnfreezeAsset (UnfreezeAssetContract) returns (Transaction) {}
Nodes: FullNode

32. Query the next maintenance time

rpc GetNextMaintenanceTime (EmptyMessage) returns (NumberMessage) {}
Nodes: FullNode

33. Query the transaction fee & block information

rpc GetTransactionInfoById (BytesMessage) returns (TransactionInfo) {}
Nodes: SolidityNode

34. Query block information by block id

rpc GetBlockById (BytesMessage) returns (Block) {}
Nodes: FullNode

35. Update token information

rpc UpdateAsset (UpdateAssetContract) returns (Transaction) {}
Nodes: Fullnode

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) {}
Nodes: FullNode and SolidityNode

37. To sign a transaction

rpc GetTransactionSign (TransactionSign) returns (Transaction) {}
Nodes: FullNode

38. Address and private key creation

rpc CreateAdresss (BytesMessage) returns (BytesMessage) {}
Nodes: Fullnode

39. TRX easy transfer

rpc EasyTransfer (EasyTransferMessage) returns (EasyTransferResponse) {}
Nodes: FullNode

40. Deploy a smart contract

rpc DeployContract (CreateSmartContract) returns (TransactionExtention) {}
Nodes: FullNode and SolidityNode

41. Trigger a smart contract

rpc TriggerContract (TriggerSmartContract) returns (TransactionExtention) {}
Nodes: FullNode

42. Create a shielded transaction

rpc CreateShieldedTransaction (PrivateParameters) returns (TransactionExtention) {}
Nodes: FullNode

43. Get a Merkle tree information of a note

rpc GetMerkleTreeVoucherInfo (OutputPointInfo) returns (IncrementalMerkleVoucherInfo) {}
Nodes: FullNode

44. Scan note by ivk

rpc ScanNoteByIvk (IvkDecryptParameters) returns (DecryptNotes) {}
Nodes: FullNode

45. Scan note by ovk

rpc ScanNoteByOvk (OvkDecryptParameters) returns (DecryptNotes) {}
Nodes: FullNode

46. Get spending key

rpc GetSpendingKey (EmptyMessage) returns (BytesMessage) {}
Nodes: FullNode

47. Get expanded spending key

rpc GetExpandedSpendingKey (BytesMessage) returns (ExpandedSpendingKeyMessage) {}
Nodes: FullNode

48. Get ak from ask

rpc GetAkFromAsk (BytesMessage) returns (BytesMessage) {}
Nodes: FullNode

49. Get nk from nsk

rpc GetNkFromNsk (BytesMessage) returns (BytesMessage) {}
Nodes: FullNode

50. Get incoming viewing key

rpc GetIncomingViewingKey (ViewingKeyMessage) returns (IncomingViewingKeyMessage) {}
Nodes: FullNode

51. Get diversifier

rpc GetDiversifier (EmptyMessage) returns (DiversifierMessage) {}
Nodes: FullNode

52. Get zen payment address

rpc GetZenPaymentAddress (IncomingViewingKeyDiversifierMessage) returns (PaymentAddressMessage) {}
Nodes: FullNode

53. Get rcm

rpc GetRcm (EmptyMessage) returns (BytesMessage) {}
Nodes: FullNode

54. Get a note status of is spent or not

rpc IsSpend (NoteParameters) returns (SpendResult) {}
Nodes: FullNode

55. Create a shielded transaction without using ask

rpc CreateShieldedTransactionWithoutSpendAuthSig (PrivateParametersWithoutAsk) returns (TransactionExtention) {}
Nodes: FullNode

56. Create a shielded transaction hash

rpc GetShieldTransactionHash (Transaction) returns (BytesMessage) {}
Nodes: FullNode

57. Create a signature for a shielded transaction

rpc CreateSpendAuthSig (SpendAuthSigParameters) returns (BytesMessage) {}
Nodes: FullNode

58. Create a shield nullifier

rpc CreateShieldNullifier (NfParameters) returns (BytesMessage) {}
Nodes: FullNode

59. Get new shielded address

rpc GetNewShieldedAddress (EmptyMessage) returns (ShieldedAddressInfo){}
Nodes: FullNode

60. Create shielded contract parameters

rpc CreateShieldedContractParameters (PrivateShieldedTRC20Parameters) returns (ShieldedTRC20Parameters) {}
Nodes: FullNode

61. Create shielded contract parameters without ask

rpc CreateShieldedContractParametersWithoutAsk (PrivateShieldedTRC20ParametersWithoutAsk) returns (ShieldedTRC20Parameters) {}
Nodes: FullNode

62. Scan shielded TRC20 notes by ivk

rpc ScanShieldedTRC20NotesbyIvk (IvkDecryptTRC20Parameters) returns (DecryptNotesTRC20) {}
Nodes: FullNode, SolidityNode

63. Scan shielded TRC20 notes by ovk

rpc ScanShieldedTRC20NotesbyOvk (OvkDecryptTRC20Parameters) returns (DecryptNotesTRC20) {}
Nodes: FullNode, SolidityNode

64. Get the status of shielded TRC20 note of spent or not

rpc IsShieldedTRC20ContractNoteSpent (NfTRC20Parameters) returns (NullifierResult) {}
Nodes: FullNode, SolidityNode

65. Get the trigger input for the shielded TRC20

  rpc GetTriggerInputForShieldedTRC20Contract (ShieldedTRC20TriggerContractParameters) returns (BytesMessage) {}
Nodes: FullNode