Install the SDK
Run it
What just happened
Where did the price come from?
Where did the price come from?
getOdvReference asks a public indexer (Kupo) for the UTXO at Charli3’s oracle address, reads the datum, and returns the price. No API key, no login, no subscription.What if the price is stale?
What if the price is stale?
price.isExpired tells you if the price is past its 5-minute window on preprod. If it is, call c3.submitRound2(lucid, "ADA/USD") to post a fresh one. See Refreshing a price.Do I need a wallet?
Do I need a wallet?
Not for reading. You only need a wallet when you want to post a fresh price yourself. Reading is free and keyless.
Next steps
How the SDK works
Round 1, Round 2, picking a price, and why the time window matters.
Sample app
A fuller example: Lace wallet, deposit and claim, AI invoice agent.
Refresh on-chain
Post a fresh price with Lucid and a funded wallet.
AI agents
One markdown file to teach any tool-calling LLM how to use Charli3.