Token Price Feeds
Oracle Details
Oracle Configuration
Available Asset Feeds
Mainnet
Testnet
How to Access Data
getValue Method
To consume price data, you’ll need to invoke thegetValue method on the oracle contract which you can access through the DIA Oracle library or the interface.
Below is an example of a contract consuming data from our oracle on CrossFi Testnet. If you pass WBTC/USD as the key, it will return the most recent price of BTC in USD with 8 decimal places (e.g. 9601458065403 is $96,014.58065403) along with the Unix timestamp of the last price update.
Verifiable Randomness
Oracle Details
Oracle Configuration
The oracle uses drand randomness from quicknet to provide randomness on CrossFi.How to Access Data
To consume randomness data, you’ll need to invoke thegetLastRound method on the oracle contract. It will return the round ID of the latest update.
Using this round ID, you can call getRandomValue and will receive a return value of that randomness, the round ID and the BLS signature from the drand API.
Note that round IDs are used round-robin and will repeat after 1000 iterations.
Refer to the Solidity guide for detailed steps on fetching random values from the oracle in your contract. You can learn more about the randomness protocol here.
Request a Custom Oracle
DIA offers highly customizable oracles that are individually tailored to each dApp’s needs. Each oracle can be customized in the following ways, including:- Data Sources & Asset Feeds
- Pricing Methodologies
- Update Triggers (Frequency, Deviation, Heartbeat, …etc)