
Flare Zaman Serisi Oracle
High-integrity, block-latency data feeds.
Flare Time Series Oracle provides secure, fast and decentralized data feeds on Flare.
Data Providers
80 registered
Live Feeds
59
Flare Staked
32.8B ($669M)$669M
Average Block Time
1.8s
High-integrity, block-latency data feeds.
Flare Time Series Oracle provides secure, fast and decentralized data feeds on Flare.
Data Providers
80 registered
Live Feeds
59
Flare Staked
32.8B ($669M)$669M
Average Block Time
1.8s
What is FTSO?
Nasıl çalışır
Integrate FTSO
Leverage FTSO’s decentralized data feeds in your application today.
import "@flarenetwork/flare-periphery-contracts/flare/ContractRegistry.sol";
import "@flarenetwork/flare-periphery-contracts/flare/FtsoV2Interface.sol";
contract FtsoV2Consumer {
FtsoV2Interface internal ftsoV2;
constructor() {
ftsoV2 = ContractRegistry.getFtsoV2();
}
function getFlrUsdPrice() external returns
(uint256 value, int8 decimals, uint64 timestamp) {
return ftsoV2.getFeedById(0x01464c522f55534400000000000000000000000000);
}
}
import { Web3 } from "web3";
export async function main() {
const w3 = new Web3(RPC_URL);
const ftsov2 = new w3.eth.Contract(
JSON.parse(ABI), FTSOV2_ADDRESS
);
const res = await ftsov2.methods
.getFeedById("0x01464c522f55534400000000000000000000000000")
.call();
console.log(
"Value: %s, Decimals: %s, Timestamp: %s",
res["0"], res["1"], res["2"],
);
}
import asyncio
from web3 import AsyncHTTPProvider, AsyncWeb3
async def main() -> None:
w3 = AsyncWeb3(AsyncHTTPProvider(RPC_URL))
ftsov2 = w3.eth.contract(address=FTSOV2_ADDRESS, abi=ABI)
res = await ftsov2.functions.getFeedById(
"0x01464c522f55534400000000000000000000000000"
).call()
print(f"Value: {res[0]}, Decimals: {res[1]}, Timestamp {res[2]}")
use alloy::{providers::ProviderBuilder, sol};
use eyre::Result;
sol!(
FtsoV2,
"abi/FtsoV2.json"
);
#[tokio::main]
async fn main() -> Result<()> {
let provider = ProviderBuilder::new().on_http(RPC_URL);
let ftsov2 = FtsoV2::new(FTSOV2_ADDRESS, provider);
let FtsoV2::getFeedByIdReturn { _0, _1, _2 } = ftsov2
.getFeedById("0x01464c522f55534400000000000000000000000000")
.call()
.await?;
println!("Value:{}, Decimals:{}, Timestamp{}", _0, _1, _2);
Ok(())
}
package main
import (
"context"
"fmt"
"github.com/ethereum/go-ethereum/accounts/abi/bind"
"github.com/ethereum/go-ethereum/ethclient"
)
func FtsoV2Consumer() {
client, _ := ethclient.Dial(RPC_URL)
ftsov2, _ := NewFtsoV2(FTSOV2_ADDRESS, client)
var res []interface{}
opts := &bind.CallOpts{Context: context.Background()}
ftsov2.FtsoV2Caller.contract.Call(
opts, &res, "getFeedById", "0x01464c522f55534400000000000000000000000000"
)
fmt.Println("Value: %i, Decimals: %i, Timestamp: %i", res[0], res[1], res[2])
}
Use cases
FAssets
FAssets allows non smart contract tokens like BTC, DOGE and XRP to be used with smart contracts on Flare. The FTSO is used to provide decentralized data feeds to price tokens in the FAssets system.
FTSO secures the Flare ecosystem with decentralized data
Secure
FTSO is enshrined in the Flare blockchain, inheriting its full economic security to ensure robust data.
Fast
FTSO provides block-latency feeds that update approximately every 1.8 seconds, delivering real-time data.
Scalable
Supporting up to 1,000 feeds across equities, commodities, and cryptocurrencies, FTSO scales with the growing DeFi ecosystem.
Manipulation-resistant
Each feed is backed by around 100 independent data providers, selected by Flare users through delegated stake.
Cost-effective
Access to block-latency feeds is completely free on Flare, lowering barriers and fostering broad participation and innovation.