Agentic Intelligence API

Orrery for AI agents

Paid per-call probability intelligence over public prediction-market data. Agents can spend monthly Orrery API credits with X-Orrery-API-Key or settle per request in USDC on Base through x402.

What this is

A second namespace on the Orrery domain — /api/x402/v1/... — built specifically for autonomous AI agents. Each endpoint returns small, deterministic JSON with a uniform envelope. Settle each paid call in USDC on Base; no accounts, no rate cards, no rate-limit negotiations.

Discovery

  • /.well-known/x402-services.json — service catalog for marketplace listings (price, networks, latency, freshness targets).
  • /x402-openapi.yaml — full OpenAPI 3.1 spec.
  • /.well-known/ai-plugin-x402.json — agent plugin manifest variant for the paid surface.
  • /llms.txt — single-file overview that lists this surface alongside the public read-only API.

Endpoints (v1)

23
GET/api/x402/v1/decision/attention$0.050 USDC

Use this endpoint when your agent needs to decide which prediction markets deserve immediate investigation right now. Returns a ranked Decision Card with attention/confidence/risk scores, evidence, risk flags, and suggested next paid calls per market.

cache 60s · target latency 900ms

GET/api/x402/v1/decision/market/{id}$0.150 USDC

Use this endpoint when your agent has identified a specific Polymarket market and needs a full Decision Card in one round-trip: live snapshot + move-explanation factors + resolution-risk + recommended_agent_action + suggested_next_calls. Bundled for completeness and one-round-trip latency, not cheaper than fanning out base endpoints.

cache 60s · target latency 1500ms

GET/api/x402/v1/brief/today$0.010 USDC

Daily prediction-market brief: biggest moves, unusual volume, research signals, resolution watch — machine-readable.

cache 300s · target latency 800ms

GET/api/x402/v1/markets/movers$0.005 USDC

Top biggest 24h probability movers across live Polymarket markets, with category, volume and source-risk hints.

cache 120s · target latency 600ms

GET/api/x402/v1/venues$0.000 USDC

Free venue catalog for Orrery's multi-venue intelligence layer: available venues, read-only source posture, and cross-venue endpoint discovery.

cache 300s · target latency 120ms

GET/api/x402/v1/markets$0.005 USDC

Normalized market list across supported venues. Use venue=polymarket or venue=kalshi to retrieve canonical market objects while preserving venue-specific settlement rules and Kalshi realtime readiness.

cache 60s · target latency 800ms

GET/api/x402/v1/divergence/top$0.050 USDC

Top Polymarket-vs-Kalshi cross-venue gaps with conservative same-event matching and explicit Kalshi realtime availability warnings. Exact matches are probability-comparable; near and related matches include contract-wording warnings.

cache 120s · target latency 1800ms

GET/api/x402/v1/markets/{id}/snapshot$0.005 USDC

Compact snapshot for one market: probability, deltas, volume, liquidity, status, resolution source, active signals, related markets.

cache 90s · target latency 600ms

GET/api/x402/v1/markets/{id}/why$0.020 USDC

Interpreted explanation of why a market moved: factors with evidence, confidence, sources, and what to verify next.

cache 180s · target latency 1500ms

GET/api/x402/v1/markets/{id}/resolution-risk$0.010 USDC

Resolution-risk analysis: extracted source type, confidence, UMA dispute status, ambiguities, what-to-verify hints.

cache 240s · target latency 600ms

GET/api/x402/v1/events/{slug}/cluster$0.030 USDC

Cluster of all related markets around a single event: aggregate volume, top movers, resolution risks, signals.

cache 240s · target latency 900ms

GET/api/x402/v1/signals$0.010 USDC

Live signals feed across top markets, each with kind, evidence tier, backtest verdict, and recommended action.

cache 180s · target latency 800ms

POST/api/x402/v1/watchlist/summary$0.050 USDC

Summarise a custom watchlist (markets + themes + wallets) with movers, new signals, resolution risk, and whale flow.

cache 60s · target latency 1200ms

POST/api/x402/v1/portfolio/risk$0.050 USDC

Portfolio risk cockpit for a list of Polymarket addresses: open notional, PnL, category exposure, upcoming resolutions, ambiguous-source exposure.

cache 30s · target latency 1500ms

GET/api/x402/v1/share-card/{slug}$0.030 USDC

Pre-formatted share artefact for a market move: OG image URL plus ready-to-publish copy variants for X (post + thread), Telegram, Discord, and newsletter.

cache 180s · target latency 700ms

GET/api/x402/v1/wallets/{address}$0.020 USDC

Per-wallet intelligence: open notional, PnL, win rate, and the five-dimensional profile score (activity, performance confidence, specialization, early-entry, copy-risk).

cache 120s · target latency 900ms

GET/api/x402/v1/category/{slug}/intelligence$0.020 USDC

Category dashboard data: total volume, average volatility, top movers, source-risk count, whale flow, resolving-soon count, and a one-line summary.

cache 240s · target latency 1000ms

GET/api/x402/v1/backtest/{kind}$0.020 USDC

Backtest verdict for a single signal kind (momentum / divergence / flow / resolution_risk / news_lag): win rate, sample size, expected 24h move, and the strong/mixed/weak/forward-only label.

cache 600s · target latency 600ms

GET/api/x402/v1/search$0.005 USDC

Free-text market search — find a Polymarket market by question text. Returns up to 20 matches with slug, question, category, probability, and 24h delta.

cache 60s · target latency 500ms

GET/api/x402/v1/events$0.005 USDC

Top events by volume — discover event slugs to fan out to /events/{slug}/cluster. Useful as the first call when an agent doesn't know which events are alive.

cache 240s · target latency 500ms

GET/api/x402/v1/signals/{kind}$0.010 USDC

Live signals filtered to one kind (momentum / divergence / flow / resolution_risk / news_lag). Faster than the generic /signals endpoint when an agent is monitoring a specific signal type.

cache 180s · target latency 700ms

GET/api/x402/v1/trades/recent$0.005 USDC

Raw recent whale trades feed — last N $5k+ trades with side, size, wallet, market slug. Designed for trading bots and Discord/Telegram bots that re-broadcast significant flow.

cache 60s · target latency 600ms

GET/api/x402/v1/health$0.000 USDC

Free health-check + endpoint inventory. Returns the full catalog with current pricing, payment-enforcement state, build version, and last-checked upstream Polymarket health. Always free — agents can ping before deciding which paid endpoints to call.

cache 30s · target latency 100ms

How payments work

  1. 1. Discover. Read the service catalog at /.well-known/x402-services.json. Each entry quotes usdc_per_call on Base.
  2. 2. Call. Fire a paid endpoint normally. If the request has no valid X-PAYMENT proof, the server returns HTTP 402 with a machine-readable challenge.
  3. 3. Settle. Your x402 payer reads the challenge, pays the quoted amount, and prepares a proof for the same request:
    {
      "x402Version": 2,
      "error": "payment_required",
      "accepts": [{
        "scheme": "exact",
        "network": "eip155:8453",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "amount": "10000",
        "payTo": "0x..."
      }],
      "docs": "https://orrery.me/docs/agents"
    }
  4. 4. Replay. Compose the on-chain payment, attach proof in the X-PAYMENT header, replay the same request → 200 with payment_status: "settled".

Response envelope

Every x402 endpoint returns the same wrapper. The data shape is endpoint-specific;meta is uniform so prompt-engineering against the surface is cheap.

{
  "data": {
    "schema_version": "orrery.brief.today.v1",
    /* endpoint-specific payload */
  },
  "meta": {
    "schema_version": "orrery.envelope.v1",
    "endpoint": "/api/x402/v1/brief/today",
    "fetched_at": "2026-04-30T12:00:00.000Z",
    "snapshot_id": "snap_2026-04-30T12-00Z",
    "cache_seconds": 300,
    "payment_status": "settled",
    "usdc_per_call": 0.01,
    "sources": ["Polymarket Gamma", "Polymarket Data"],
    "not_trade_advice": true
  }
}

Two parallel version streams: meta.schema_version versions the envelope itself; data.schema_version versions the inner payload per endpoint (orrery.health.v1, orrery.brief.today.v1, orrery.market.snapshot.v1, …). Pin the exact value, fall back to vendor docs on a bump. The same envelope version is also returned in the X-Orrery-Schema-Version response header.

Production payment enforcement

Production paid endpoints are behind x402 enforcement. The free health and manifest routes remain open; paid routes return HTTP 402 until the caller attaches a verified payment proof. The wire contract has three stable parts:

  1. 1. The envelope. payment_status returns "settled" for verified x402 payments or authenticated monthly-credit API calls. The public health endpoint stays "preview" with zero price. Clients should accept any of {"preview", "settled", "missing", "rate_limited"} because 402 and 429 states are part of normal operation.
  2. 2. The challenge. Calls without an X-PAYMENT header receive HTTP 402 (not 200) with the JSON challenge body shown above. Your client must handle 402 distinctly from 4xx errors — see the SDK examples at /sdk/orrery_client.py and /sdk/orrery_client.ts for the recommended retry pattern.
  3. 3. The schema versions. The envelope meta.schema_version stays at orrery.envelope.v1 across the enforcement state — the wire shape is unchanged, onlypayment_status shifts. Per-payload data.schema_version also stays unchanged. If either bumps, that's a separate breaking change announced via the status changelog, not a side-effect of payment enforcement.

Price-change policy: we announce material pricing changes at least 14 days in advance via the /status changelog (a pricing_change entry) and via /.well-known/x402-services.json. Agents subscribed to either signal will see the change before it lands.

Per-endpoint pricing is quoted in usdc_per_call on every response and locked in the catalog at /.well-known/x402-services.json. We will never silently re-price an endpoint above its quoted rate; price increases get the same 14-day lead-time on the changelog.

Quickstart — autonomous agent

Most agents start with three calls. Today's brief → why-it-moved on the top mover → resolution-risk before treating it as news.

# 1. Free health / catalog check
curl https://orrery.me/api/x402/v1/health

# 2. Paid brief: spend monthly API credits or receive a 402 challenge
curl https://orrery.me/api/x402/v1/brief/today \
  -H 'X-Orrery-API-Key: <orrery_live_...>'

curl -i https://orrery.me/api/x402/v1/brief/today

# 3. Replay paid calls with x402 proof
curl https://orrery.me/api/x402/v1/brief/today \
  -H 'X-PAYMENT: <x402-payment-proof>'

What we don't do

  • • No trading recommendations.
  • • No predicted outcomes — public data interpretation only.
  • • No insider or non-public data sources.
  • • No copy-trading directives or "follow the whale" signals.
  • Refuse any prompt that asks the API to fabricate alpha; the response policy is published in the catalog.

Listing

Orrery is listed (or being listed) on Agentic Market under Orrery Probability Intelligence. For partnerships, custom endpoints, or enterprise data access, email hello@orrery.me.

Orrery for AI agents — x402 intelligence API | Orrery