Oracles

Get Started With Oracles

Amet minim mollit non deserunt ullamco est sit aliqua dolor do amet sint. Velit officia consequat duis enim velit mollit. Exercitation veniam consequat

Get your custom Oracle

Create your custom Oracles

Choose a type
Select Delivery Blockchain
Network
Market Source Type Category Blockchain Contract
No data for table

Feeds built to serve a specific use case which are not suitable for broader market

Filtering and Addons

Latency can be changed depending on block time from a certain blockchain and it can be accelerated or slowed down.

Outlier slippage
10 %
RT Latency
5 sec
Outlier detection

It involves all the markets (eg. BTC/BNB, ETH/EUR...) from all the sources (decentralized and centralized exchanges).

Market example
BTC/BNB
Max difference in the price
10 %
Oracle code example
Amet minim mollit non deserunt ullamco est sit aliqua dolor do amet sint. Velit officia consequat duis enim.
copied to clipboard
import { createOrGetRandomnessRequest, RandomnessFullfilled, RandomnessRequested, verifyRandomnessOffchain  } from './lib/orao-vrf-solana-js/index.esm'; // path to copied library, includes VRF contract address
import { Keypair, PublicKey, Transaction, clusterApiUrl, Connection } from '@solana/web3.js';


// Create a connection to to Solana's devnet network
const cluster = "devnet";
const connection = new Connection(clusterApiUrl(cluster));

// Generate a new keypair
const payer = Keypair.generate();

// request an airdrop of 1 SOL for your new keypair  -- ** not applicable for mainnet
const airdroptx = await connection.requestAirdrop(payer.publicKey, 1 * LAMPORTS_PER_SOL);
await connection.confirmTransaction(airdroptx, "finalized");

const walletPublicKey = payer.publicKey;
const seed = new PublicKey('<public key>'); // public key can be generated using Keypair.generate().publicKey
const request = await createOrGetRandomnessRequest(walletPublicKey, cluster, seed.toBuffer());

if (request instanceof Transaction) {
             //Request randomness
	            request.recentBlockhash = (await connection.getRecentBlockhash()).blockhash;
	            request.feePayer = publicKey;
	            const tx = await connection.sendTransaction(request, [payer]);
	            alert('randomness requested');
} else if (request instanceof RandomnessRequested) {
	            //randomness has been requested but not fulfilled yet
	            alert('Request pending...');
} else if (request instanceof RandomnessFullfilled) {
	            //radnomness has been fulfilled
	            alert('Randomness fulfulled');

	// (Optional) Verify this randomness offchain.
	            await verifyRandomnessOffchain(cluster, seed, request.randomness);
	            alert("Randomness verified");
}
			
Get your custom Oracle

Refactor SDK

Support EVM, NEAR and Solana public pricing oracles

Design validator nodes