Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@alexroan
Created August 4, 2020 12:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save alexroan/1f0383eb611d7123b3cce265d7a36973 to your computer and use it in GitHub Desktop.
Save alexroan/1f0383eb611d7123b3cce265d7a36973 to your computer and use it in GitHub Desktop.
getLatestPrice_web3.js
// Require web3js
const Web3 = require("web3");
// Setup web3
const provider = new Web3.providers.HttpProvider("https://ropsten.infura.io/v3/<infura_project_id>");
const web3 = new Web3(provider);
// Load ABI and Address
const aggregatorInterfaceABI = [{"anonymous":false,"inputs":[{"indexed":true,"internalType":"int256","name":"current","type":"int256"},{"indexed":true,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"AnswerUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":true,"internalType":"address","name":"startedBy","type":"address"},{"indexed":false,"internalType":"uint256","name":"startedAt","type":"uint256"}],"name":"NewRound","type":"event"},{"inputs":[{"internalType":"uint256","name":"roundId","type":"uint256"}],"name":"getAnswer","outputs":[{"internalType":"int256","name":"","type":"int256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"roundId","type":"uint256"}],"name":"getTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestAnswer","outputs":[{"internalType":"int256","name":"","type":"int256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestRound","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}];
const addr = "0x8468b2bDCE073A157E560AA4D9CcF6dB1DB98507";
// Load priceFeed instance
const priceFeed = new web3.eth.Contract(aggregatorInterfaceABI, addr);
// Make call to latestAnswer()
priceFeed.methods.latestAnswer().call()
.then((price) => {
//Do something with price
console.log(price)
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment