9. Check Funds on Private Pool
Description
Check detailed information on funds deposited in private public liquidity pool.
TBD: Narratives
User Interface
Function Description
Item
Description
Contract Address
Private pool contract (referenced by Smart Contract Overview section)
Contract Name
SLDDAIPools2.sol
Function
function getLPAmountInfo() public view returns(uint256 deposit,uint256 availabe,uint256 locked)
Function Selector
0x53ac2d24
Invocation Type
Ethereum Call
Passing Parameters
None
Return Value
Total deposited amount; available amount; locked amount
ABI Description
{
"inputs": [],
"name": "getLPAmountInfo",
"outputs": [{
"internalType": "uint256",
"name": "deposit",
"type": "uint256"
}, {
"internalType": "uint256",
"name": "availabe",
"type": "uint256"
}, {
"internalType": "uint256",
"name": "locked",
"type": "uint256"
}],
"stateMutability": "view",
"type": "function"
}
Examples
Calling Examples
// This example is written by using Web3.js
// More details on Web3.js could be found here - https://web3js.readthedocs.io/
var Web3 = require('web3');
const BigNumber = require('bignumber.js');
// BSC Mainnet: https://bsc-dataseed.binance.org
// BSC Testnet: https://data-seed-prebsc-1-s1.binance.org:8545
const web3 = new Web3("https://data-seed-prebsc-1-s1.binance.org:8545");
const CONTRACT_ADDRESS = "Replace with private pool contract address";
const ABI = [{
"inputs": [],
"name": "getLPAmountInfo",
"outputs": [{
"internalType": "uint256",
"name": "deposit",
"type": "uint256"
}, {
"internalType": "uint256",
"name": "availabe",
"type": "uint256"
}, {
"internalType": "uint256",
"name": "locked",
"type": "uint256"
}],
"stateMutability": "view",
"type": "function"
}];
var contract = new web3.eth.Contract(ABI, CONTRACT_ADDRESS);
contract.methods.getLPAmountInfo().call({
}, function(error, result){
if(!error) {
console.log('Response:', result);
} else {
console.log(error);
}
});
HTTP Request Example
Send a call request to get private pool info
POST
(BSC Mainnet) https://bsc-dataseed.binance.org/
Make a contract call to get deposited funds details in private pool of Shield Protocol V1. More details on how to make a contract call request via BSC RPC could be found here, https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_sendrawtransaction
Request Body
jsonrpc
string
"2.0"
method
string
"eth_call"
params
array
the signed transaction data coerced into string array, for instance,
id
number
request sequence id, you could use timestamp as id
{
"jsonrpc": "2.0",
"id": 1234,
"result": "0x00000000000000000000000000000000000000000042276639528ca5195640e500000000000000000000000000000000000000000040f62cc1eeed6f34b8e3e500000000000000000000000000000000000000000001313977639f35e49d5d00"
}
Request Body Example:
{
"jsonrpc": "2.0",
"method": "eth_call",
"params": [
{
"from": "0x0000000000000000000000000000000000000000",
"to": "0x60e2be64528dbe4e5892254d3dad83809a3f6f3a",
"data": "0x53ac2d24"
},
"latest"
],
"id": 1234
}
CURL Example:
curl --location --request POST 'https://data-seed-prebsc-1-s1.binance.org:8545' \
--header 'Content-Type: application/json' \
--data-raw '{
"jsonrpc": "2.0",
"method": "eth_call",
"params": [
{
"from": "0x0000000000000000000000000000000000000000",
"to": "0x60e2be64528dbe4e5892254d3dad83809a3f6f3a",
"data": "0x53ac2d24"
},
"latest"
],
"id": 1234
}'
Last updated