* [`Wallet API`](#wallet-api)
* [`Access Token API`](#access-token-api)
* [`Block API`](#block-api)
-* [`Mining API`](#mining-api)
* [`Other API`](#other-api)
## Key API
-#### createKey
+#### 1.createKey
```java
Key create(Client client, Builder builder);
----
-#### listKeys
+#### 2.listKeys
```java
List<Key> list(Client client);
----
-#### deleteKey
+#### 3.deleteKey
```java
void delete(Client client, String xpub, String password);
----
-#### resetKeyPassword
+#### 4.resetKeyPassword
```java
void resetPwd(Client client, String xpub, String oldPwd, String newPwd);
## Account API
-#### createAccount
+#### 1.createAccount
```java
Account create(Client client, Builder builder);
----
-#### listAccounts
+#### 2.listAccounts
```java
List<Account> list(Client client);
----
-#### deleteAccount
+#### 3.deleteAccount
```java
void delete(Client client, String account_info);
----
-#### createAccountReceiver
+#### 4.createAccountReceiver
```java
Receiver create(Client client);
----
-#### listAddresses
+#### 5.listAddresses
```java
List<Address> list(Client client);
----
-#### validateAddress
+#### 6.validateAddress
```java
Address validate(Client client, String address);
## Asset API
-#### createAsset
+#### 1.createAsset
```java
Asset create(Client client);
----
-#### getAsset
+#### 2.getAsset
```java
Asset get(Client client);
----
-#### listAssets
+#### 3.listAssets
```java
List<Asset> list(Client client);
----
-#### updateAssetAlias
+#### 4.updateAssetAlias
```java
void update(Client client);
----
-#### listBalances
+#### 5.listBalances
```java
List<Balance> list(Client client);
----
-#### listUnspentOutPuts
+#### 6.listUnspentOutPuts
```java
List<UnspentOutput> list(Client client);
## Transaction API
-#### buildTransaction
+#### 1.buildTransaction
```java
Template build(Client client);
----
-#### signTransaction
+#### 2.signTransaction
```java
Template sign(Client client, Template template, String password);
----
-#### submitTransaction
+#### 3.submitTransaction
```java
SubmitResponse submit(Client client, Template template);
----
-#### estimateTransactionGas
+#### 4.estimateTransactionGas
```java
TransactionGas estimateGas(Client client, Template template);
----
-#### getTransaction
+#### 5.getTransaction
```java
Transaction get(Client client);
----
-#### listTransactions
+#### 6.listTransactions
```java
List<Transaction> list(Client client);
- `List of Transaction`, *List<Transaction>*, an ArrayList object contains Transaction objects.
+##### Example
+
```java
//list all transactions
List<Transaction> transactionList = new Transaction.QueryBuilder().list(client);
----
-#### listTransactionsById
+#### 7.listTransactionsById
```java
List<Transaction> listById(Client client);
- `List of Transaction`, *List<Transaction>*, an ArrayList object contains Transaction objects.
+##### Example
+
```java
String tx_id = "f04d4d9b2580ff6496f9f08d903de5a2365975fb8d65b66ca4259f152c5dd134";
//list all transactions by tx_id
----
-#### listTransactionsByAccountId
+#### 8.listTransactionsByAccountId
```java
List<Transaction> listByAccountId(Client client);
- `List of Transaction`, *List<Transaction>*, an ArrayList object contains Transaction objects.
+##### Example
+
```java
String account_id = "0E6KP8C100A02";
//list all transactions by account_id
## Wallet API
-#### backupWallet
+#### 1.backupWallet
```java
Wallet backupWallet(Client client);
----
-#### restoreWallet
+#### 2.restoreWallet
```java
void restoreWallet(Client client ,Object accountImage, Object assetImage , Object keyImages);
AccessToken.check(client, "sheng", secret);
```
-#### createAccessToken
+#### 1.createAccessToken
```java
AccessToken create(Client client);
----
-#### listAccessTokens
+#### 2.listAccessTokens
```java
List<AccessToken> list(Client client);
----
-#### deleteAccessToken
+#### 3.deleteAccessToken
```java
void delete(Client client, String id);
----
-#### checkAccessToken
+#### 4.checkAccessToken
```java
void check(Client client, String id, String secret);
## Block API
-#### getBlockCount
+#### 1.getBlockCount
```java
Integer getBlockCount(Client client);
----
-#### getBlockHash
+#### 2.getBlockHash
```java
String getBlockHash(Client client);
----
-#### getBlock
-```php
+#### 3.getBlock
+```java
Block getBlock(Client client);
```
----
-#### getBlockHeader
+#### 4.getBlockHeader
```java
BlockHeader getBlockHeader(Client client);
----
-#### getDifficulty
+#### 5.getDifficulty
```java
BlockDifficulty getBlockDifficulty(Client client);
----
-#### getHashRate
+#### 6.getHashRate
```java
BlockHashRate getHashRate(Client client);
- `BlockHashRate` - *blockHashRate*, a BlockHashRate object
-## Mining API
-
-
-#### isMining
-
-```java
-Boolean isMining(Client client);
-```
-
-##### Parameters
-
-- `Client` - *Client*, Client object that makes requests to the core.
-
-##### Returns
-
-- `Boolean` - *is_mining*, whether the node is mining.
-
-----
-
-#### setMining
-
-```java
-void setMining(Client client, Boolean isMining);
-```
-
-##### Parameters
-
-- `Client` - *Client*, Client object that makes requests to the core.
-- `Boolean` - *is_mining*, whether the node is mining.
-
## Other API
-#### netInfo
+#### 1.netInfo
```java
NetInfo getNetInfo(Client client);
----
-#### gasRate
+#### 2.gasRate
```java
Gas gasRate(Client client);
----
-#### verifyMessage
+#### 3.verifyMessage
```java
Boolean verifyMessage(Client client);
- `Boolean` - *result*, verify result.
-----
-
-#### getWork
-
-```java
-MinerWork getWork(Client client);
-```
-
-##### Parameters
-
-- `Client` - *Client*, Client object that makes requests to the core.
-
-##### Returns
-
-- `MinerWork` - *minerWork*, a MinerWork object.
-
-----
-
-#### submitWork
-
-```java
-void submiWork(Client client, String blockHeader);
-```
-
-##### Parameters
-
-- `Client` - *Client*, Client object that makes requests to the core.
-- `String` - *block_header*, raw block header.
-
-##### Returns
-
-none if the work is submitted successfully.