> ## Documentation Index
> Fetch the complete documentation index at: https://www.diadata.org/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Edu Chain

> dApps built on EduChain can leverage DIA oracles to access up-to-date asset price information.

[DIA](https://diadata.org/) is a cross-chain oracle provider that sources granular market data from diverse exchanges, including CEXs and DEXs. Its data sourcing is thorough, enabling unparalleled transparency and customizability for resilient price feeds for 20,000+ assets. Its versatile data processing and delivery ensures adaptability and reliability for any decentralized application.

## Oracle Details

| Chain   | Address                                                                                                                                   |
| ------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| Mainnet | [0x56BddAc934157c213c37864e3443E5196b47a1d1](https://educhain.blockscout.com/address/0x56BddAc934157c213c37864e3443E5196b47a1d1)          |
| Testnet | [0x6626f442ebc679f7e35bc62e36e3c1e8820c81c9](https://edu-chain-testnet.blockscout.com/address/0x6626f442eBc679f7e35bC62E36E3c1e8820C81C9) |

## Oracle Configuration

|                                       |                                                                                                         |
| ------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| **Pricing Methodology**               | [MAIR](/docs/guides/methodologies/pricing-methodologies/mair-moving-average-with-interquartile-range-filter) |
| **Deviation (%) & Refresh Frequency** | 0.5% and 120 seconds                                                                                    |
| **Heartbeat**                         | 24h                                                                                                     |

## Available Asset Feeds

| Asset Ticker | getValue(key) | Asset Markets                                                                                                        |
| ------------ | ------------- | -------------------------------------------------------------------------------------------------------------------- |
| EDU          | EDU/USD       | [EDU markets](https://www.diadata.org/app/price/asset/BinanceSmartChain/0xBdEAe1cA48894A1759A8374D63925f21f2Ee2639/) |
| ETH          | ETH/USD       | [ETH markets](http://diadata.org/app/price/asset/Ethereum/0x0000000000000000000000000000000000000000/)               |
| WBTC         | WBTC/USD      | [WBTC markets](https://www.diadata.org/app/price/asset/Ethereum/0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599/)         |
| USDC         | USDC/USD      | [USDC markets](https://www.diadata.org/app/price/asset/Ethereum/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/)         |
| USDT         | USDT/USD      | [USDT markets](https://www.diadata.org/app/price/asset/Ethereum/0xdAC17F958D2ee523a2206206994597C13D831ec7/)         |
| DAI          | DAI/USD       | [DAI markets](https://www.diadata.org/app/price/asset/Ethereum/0x6B175474E89094C44Da98b954EedeAC495271d0F/)          |
| ARB          | ARB/USD       | [ARB markets](https://www.diadata.org/app/price/asset/Arbitrum/0x912CE59144191C1204E64559FE8253a0e49E6548/)          |
| wstETH       | wstETH/USD    | [wstETH markets](https://www.diadata.org/app/price/asset/Ethereum/0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0/)       |
| GRAIL        | GRAIL/USD     | [GRAIL markets](https://www.diadata.org/app/price/asset/Arbitrum/0x3d9907F9a368ad0a51Be60f7Da3b97cf940982D8/)        |

***

## How to Access Data

### getValue Method

To consume price data, you’ll need to invoke the `getValue` method on the oracle contract which you can access through the [DIA Oracle library](/docs/guides/how-to-guides/fetch-price-data/solidity#access-the-library) or the [interface](/docs/guides/how-to-guides/fetch-price-data/solidity#using-the-diaoraclev2-interface).

Below is an example of a contract consuming data from the oracle on EduChain testnet using the **IDIAOracleV2** interface. 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. 8258705325665 is \$82,587.05325665) along with the Unix timestamp of the last price update.

```js theme={"system"}
pragma solidity ^0.8.13;

interface IDIAOracleV2 {
    function getValue(string memory) external view returns (uint128, uint128);
}

contract DIAOracleV2Consumer {

    address immutable ORACLE = 0x6626f442ebc679f7e35bc62e36e3c1e8820c81c9;

    function getPrice(string memory key)
    external
    view
    returns (
        uint128 latestPrice,
        uint128 timestampOflatestPrice
    ) {
        (latestPrice, timestampOflatestPrice) =
                 IDIAOracleV2(ORACLE).getValue(key);
    }
}
```

See the full example [here](/docs/guides/how-to-guides/fetch-price-data/solidity).

***

## 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)

Get a tailored oracle for your dApp, request one below:

<CardGroup>
  <Card title="Request Custom Oracle" href="/docs/guides/how-to-guides/request-a-custom-oracle" icon="angle-right" iconType="solid" horizontal />
</CardGroup>

## Support

For developer assistance, connect with the DIA team directly on [Discord](https://discord.gg/ZvGjVY5uvs) or [Telegram](https://t.me/diadata_org).
