Skip to content
Docs

Norynta public docs

Norynta Aggregator Integration

Normalized market feed, attribution, matching, and settlement-safety guidance for odds comparison and trading partners.

Aggregator Integration

Current product mode (2026-07-28): Norynta is play-only. Real-money trading, deposits, withdrawals, cash payouts, yield, and mainnet execution are postponed until further notice. Any such workflow retained below is historical or implementation reference, not an available product capability. See PLAY_MODE_GUIDE.md.

Purpose

This contract is for odds-comparison products, prediction-market directories, trading terminals, data vendors, and smart routers that want to discover and link to Norynta markets without adapting Norynta's internal event model.

Fetch Markets

curl -sS \
  "https://norynta.com/api/v1/aggregator/markets?source=your-product&limit=100" \
  | jq

The endpoint is public, cursor-paginated, and short-cacheable. It defaults to strictly first-trade-ready markets. Use tradableOnly=0 when indexing all public live contracts, including markets that are still activating liquidity.

Supported filters:

  • source: stable partner slug used for trade-link attribution
  • category, q, status, sort: discovery filters
  • cursor, limit: pagination
  • includeResolved=1: include resolved markets when supported by the feed
  • tradableOnly=0: include live contracts without a ready two-sided book

Stable Fields

Each market includes:

  • venue and canonical on-chain market ID
  • slug, title, category, market type, and lifecycle status
  • close time and normalized outcomes
  • display probability plus executable bid/ask when available
  • a bounded reported-volume sample (not guaranteed all-time) and executable depth
  • an observedAt response-observation time (not a claim that the market changed)
  • rule text and the Norynta resolution endpoint
  • a deterministic matching key and allowlisted external identifiers
  • direct market, attributed trade, orderbook, trade-history, and image URLs

Only prices explicitly associated with the readiness outcome are labeled as executable bid/ask prices. Other outcomes retain their display price and probability but use null executable prices until the feed can prove them.

Attribution

Use the supplied urls.trade unchanged. It includes:

utm_source=<source>
utm_medium=aggregator
utm_campaign=market_distribution
utm_content=<market-slug>

Do not add wallet addresses, account IDs, search queries, or other personal data to attribution parameters.

Matching And Settlement Safety

matching.key is a discovery hint, not proof that two venue contracts settle identically. Before presenting arbitrage or routing claims, compare:

  1. resolution source
  2. observation and cutoff time
  3. cancellation and revision policy
  4. outcome definitions and edge-case rules

Use rules.resolutionUrl and the full market page as the source of truth.

SDK

The MIT-licensed @norynta/bot-sdk exports a typed helper:

import { fetchAggregatorMarkets } from "@norynta/bot-sdk/aggregator";

const feed = await fetchAggregatorMarkets({
  baseUrl: "https://norynta.com",
  source: "your-product",
  limit: 100,
});

Schema changes are versioned through the response schemaVersion and X-Api-Schema header. Integrators should ignore unknown additive fields.