Skip to main content
Know the moment a market settles. The oracle channel streams the UMA lifecycle — question started, resolved, settled — and the resolution channel streams the on-chain settlement that pays out. Subscribe to both to track a market end to end.

What you need

The two feeds

  • oracle — UMA reporting: uma_optimistic_question_settled, uma_adapter_question_resolved, plus pauses, disputes, and emergency overrides.
  • resolution — the settlement itself: condition_resolution saves the final payout numerators that set how collateral splits.
Filter both channels by market_ids.

Track a market

import { Radion } from "@radion-app/sdk";

const radion = new Radion({ apiKey: process.env.RADION_API_KEY });
const markets = ["0xCONDITION_ID"];

radion.realtime.onChannel("oracle", (event) => {
  const data = event.data;
  if (data.type === "uma_optimistic_question_settled") {
    console.log(`UMA settled ${data.questionID} at ${data.settledPrice}`);
  }
});

radion.realtime.onChannel("resolution", (event) => {
  const data = event.data;
  if (data.type === "condition_resolution") {
    console.log(
      `resolved ${data.conditionId} payouts ${data.payoutNumerators}`
    );
    // notify holders, close positions, redeem
  }
});

radion.realtime.subscribe({
  id: "oracle",
  channel: "oracle",
  filters: { market_ids: markets },
});
radion.realtime.subscribe({
  id: "resolution",
  channel: "resolution",
  filters: { market_ids: markets },
});

await radion.realtime.connect();

Reading the result

  • payoutNumerators on condition_resolution sets the payout per outcome slot. ["0x1", "0x0"] means the first outcome won.
  • settledPrice on the UMA events is a signed value; "-1" marks a disputed or unresolved price.
  • Watch resolution_paused / resolver_paused — settlement can stall before it finishes.
Both channels accept only market_ids. wallets, token_ids, and min_usd are ignored.

Front-run the settlement

Subscribe to oracle or resolution with confirmed: false to see the resolving transaction while it is still pending. Pending frames are guesses — reconcile against the confirmed event by transaction_hash.

Next steps

oracle channel

Every UMA lifecycle event.

resolution channel

Settlement events and payout numerators.
Last modified on July 5, 2026