{"service":"Orrery Decision API","schema_version":"orrery.manifest.v1","tagline":"Decision-support API for prediction-market agents. Tells agents which markets deserve attention, why, how fresh, how confident, what the risks are, and what to call next.","docs_url":"https://orrery.me/docs/agents","decision_api_docs":"https://orrery.me/docs/agents/decision-api","methodology_url":"https://orrery.me/methodology","glossary_url":"https://orrery.me/glossary","openapi_url":"https://orrery.me/x402-openapi.yaml","bazaar_catalog":"https://orrery.me/.well-known/x402-services.json","llms_txt":"https://orrery.me/llms-full.txt","decision_card":{"schema_version":"orrery.decision.v1","description":"Every paid endpoint returns a Decision Card — { schema_version, decision_type, generated_at, valid_until, recommended_agent_action, scores: {attention, confidence, risk}, one_line_reason, why_this_matters[], evidence[], risks[], sources[], suggested_next_calls[], payload, disclaimer }. Stable across endpoints — write one parser.","recommended_agent_actions":["ignore","monitor","investigate_now","deep_research","check_resolution_risk","check_liquidity","check_sources","alert_human"],"decision_types":["attention_queue","market_decision","move_explanation","resolution_risk","agent_brief","wallet_intelligence","category_intelligence","event_cluster","signal_feed"]},"flagship_endpoints":[{"catalog_key":"decision_attention","decision_type":"attention_queue","best_for":"Finding which prediction markets deserve immediate investigation right now.","when_to_call":"Top of every agent loop — call this first to decide where to spend deeper research budget.","output_summary":"Ranked Decision Cards (1–25) with attention/confidence/risk scores, top risks per market, and suggested_next_calls pointing at the deep dives.","endpoint":"/api/x402/v1/decision/attention","method":"GET","price_usdc":0.05,"cache_seconds":60},{"catalog_key":"decision_market","decision_type":"market_decision","best_for":"One-call full intelligence on a specific market: snapshot + move factors + resolution risk + history + top holders + related markets.","when_to_call":"After /attention surfaces a target, instead of fanning out to /snapshot + /why + /resolution-risk separately. Saves a round-trip and bundles bonus history + holder data.","output_summary":"Decision Card with payload.{snapshot, move_explanation, resolution_risk, history_summary, top_holders, related_markets, event}.","endpoint":"/api/x402/v1/decision/market/{id}","method":"GET","price_usdc":0.15,"cache_seconds":60},{"catalog_key":"market_why","decision_type":"move_explanation","best_for":"Understanding why a specific market moved — deterministic factor breakdown with evidence and confidence per factor.","when_to_call":"After /decision/attention surfaces a market, OR when your own monitoring catches a probability shift you don't understand.","output_summary":"Decision Card with payload.factors[] — each factor has type, summary, evidence numbers, and confidence (low/medium/high).","endpoint":"/api/x402/v1/markets/{id}/why","method":"GET","price_usdc":0.02,"cache_seconds":180},{"catalog_key":"market_resolution_risk","decision_type":"resolution_risk","best_for":"Verifying that a market won't resolve ambiguously or get stuck in UMA dispute before you act on its data.","when_to_call":"Always before treating a high-attention move as actionable — moves on contested resolution can be dispute artefacts, not news.","output_summary":"Decision Card with risk_level (low/medium/high), extracted resolution source (type + url + confidence), UMA status, ambiguity flags, what-to-verify checklist.","endpoint":"/api/x402/v1/markets/{id}/resolution-risk","method":"GET","price_usdc":0.01,"cache_seconds":240},{"catalog_key":"brief_today","decision_type":"agent_brief","best_for":"One call that returns the day-level intelligence summary: biggest movers + signals + resolution watch + smart-money flow.","when_to_call":"Daily agent loops — replaces the human Daily Brief with a structured payload your agent can plan against.","output_summary":"Decision Card with payload.{biggest_moves, unusual_volume, research_signals, resolution_watch, smart_money_flow}, plus a markdown_url for citation.","endpoint":"/api/x402/v1/brief/today","method":"GET","price_usdc":0.01,"cache_seconds":300}],"revenue_ladders":[{"name":"Daily monitoring loop","steps":[{"call":"/api/x402/v1/decision/attention","price_usdc":0.05,"why":"What do I need to look at right now?"},{"call":"/api/x402/v1/markets/{id}/why","price_usdc":0.02,"why":"Why did the top result move?"},{"call":"/api/x402/v1/markets/{id}/resolution-risk","price_usdc":0.01,"why":"Verify the move isn't a dispute artefact."}],"total_usdc":0.08},{"name":"Per-market deep dive (one call)","steps":[{"call":"/api/x402/v1/decision/market/{id}","price_usdc":0.15,"why":"Bundles snapshot + move factors + resolution risk + 7-day history + top holders + related markets in a single Decision Card. Replaces /snapshot + /why + /resolution-risk fan-out."}],"total_usdc":0.15},{"name":"Per-market deep dive (à la carte)","steps":[{"call":"/api/x402/v1/markets/{id}/snapshot","price_usdc":0.005,"why":"Compact live state."},{"call":"/api/x402/v1/markets/{id}/why","price_usdc":0.02,"why":"Why it moved."},{"call":"/api/x402/v1/markets/{id}/resolution-risk","price_usdc":0.01,"why":"Settlement-risk check."}],"total_usdc":0.035},{"name":"Daily report","steps":[{"call":"/api/x402/v1/brief/today","price_usdc":0.01,"why":"Day-level summary."},{"call":"/api/x402/v1/decision/attention?limit=5","price_usdc":0.05,"why":"Refine into actionable shortlist."}],"total_usdc":0.06}],"all_endpoints":[{"catalog_key":"decision_attention","endpoint":"/api/x402/v1/decision/attention","method":"GET","price_usdc":0.05,"networks":["base"],"description":"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_seconds":60,"target_latency_ms":900},{"catalog_key":"decision_market","endpoint":"/api/x402/v1/decision/market/{id}","method":"GET","price_usdc":0.15,"networks":["base"],"description":"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. Cheaper than the three deep calls separately.","cache_seconds":60,"target_latency_ms":1500},{"catalog_key":"brief_today","endpoint":"/api/x402/v1/brief/today","method":"GET","price_usdc":0.01,"networks":["base"],"description":"Daily prediction-market brief: biggest moves, unusual volume, research signals, resolution watch — machine-readable.","cache_seconds":300,"target_latency_ms":800},{"catalog_key":"markets_movers","endpoint":"/api/x402/v1/markets/movers","method":"GET","price_usdc":0.005,"networks":["base"],"description":"Top biggest 24h probability movers across live Polymarket markets, with category, volume and source-risk hints.","cache_seconds":120,"target_latency_ms":600},{"catalog_key":"market_snapshot","endpoint":"/api/x402/v1/markets/{id}/snapshot","method":"GET","price_usdc":0.005,"networks":["base"],"description":"Compact snapshot for one market: probability, deltas, volume, liquidity, status, resolution source, active signals, related markets.","cache_seconds":90,"target_latency_ms":600},{"catalog_key":"market_why","endpoint":"/api/x402/v1/markets/{id}/why","method":"GET","price_usdc":0.02,"networks":["base"],"description":"Interpreted explanation of why a market moved: factors with evidence, confidence, sources, and what to verify next.","cache_seconds":180,"target_latency_ms":1500},{"catalog_key":"market_resolution_risk","endpoint":"/api/x402/v1/markets/{id}/resolution-risk","method":"GET","price_usdc":0.01,"networks":["base"],"description":"Resolution-risk analysis: extracted source type, confidence, UMA dispute status, ambiguities, what-to-verify hints.","cache_seconds":240,"target_latency_ms":600},{"catalog_key":"event_cluster","endpoint":"/api/x402/v1/events/{slug}/cluster","method":"GET","price_usdc":0.03,"networks":["base"],"description":"Cluster of all related markets around a single event: aggregate volume, top movers, resolution risks, signals.","cache_seconds":240,"target_latency_ms":900},{"catalog_key":"signals","endpoint":"/api/x402/v1/signals","method":"GET","price_usdc":0.01,"networks":["base"],"description":"Live signals feed across top markets, each with kind, evidence tier, backtest verdict, and recommended action.","cache_seconds":180,"target_latency_ms":800},{"catalog_key":"watchlist_summary","endpoint":"/api/x402/v1/watchlist/summary","method":"POST","price_usdc":0.05,"networks":["base"],"description":"Summarise a custom watchlist (markets + themes + wallets) with movers, new signals, resolution risk, and whale flow.","cache_seconds":60,"target_latency_ms":1200},{"catalog_key":"portfolio_risk","endpoint":"/api/x402/v1/portfolio/risk","method":"POST","price_usdc":0.05,"networks":["base"],"description":"Portfolio risk cockpit for a list of Polymarket addresses: open notional, PnL, category exposure, upcoming resolutions, ambiguous-source exposure.","cache_seconds":30,"target_latency_ms":1500},{"catalog_key":"share_card","endpoint":"/api/x402/v1/share-card/{slug}","method":"GET","price_usdc":0.03,"networks":["base"],"description":"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_seconds":180,"target_latency_ms":700},{"catalog_key":"wallet_score","endpoint":"/api/x402/v1/wallets/{address}","method":"GET","price_usdc":0.02,"networks":["base"],"description":"Per-wallet intelligence: open notional, PnL, win rate, and the five-dimensional profile score (activity, performance confidence, specialization, early-entry, copy-risk).","cache_seconds":120,"target_latency_ms":900},{"catalog_key":"category_intelligence","endpoint":"/api/x402/v1/category/{slug}/intelligence","method":"GET","price_usdc":0.02,"networks":["base"],"description":"Category dashboard data: total volume, average volatility, top movers, source-risk count, whale flow, resolving-soon count, and a one-line summary.","cache_seconds":240,"target_latency_ms":1000},{"catalog_key":"backtest_kind","endpoint":"/api/x402/v1/backtest/{kind}","method":"GET","price_usdc":0.02,"networks":["base"],"description":"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_seconds":600,"target_latency_ms":600},{"catalog_key":"search","endpoint":"/api/x402/v1/search","method":"GET","price_usdc":0.005,"networks":["base"],"description":"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_seconds":60,"target_latency_ms":500},{"catalog_key":"events_list","endpoint":"/api/x402/v1/events","method":"GET","price_usdc":0.005,"networks":["base"],"description":"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_seconds":240,"target_latency_ms":500},{"catalog_key":"signals_kind","endpoint":"/api/x402/v1/signals/{kind}","method":"GET","price_usdc":0.01,"networks":["base"],"description":"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_seconds":180,"target_latency_ms":700},{"catalog_key":"trades_recent","endpoint":"/api/x402/v1/trades/recent","method":"GET","price_usdc":0.005,"networks":["base"],"description":"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_seconds":60,"target_latency_ms":600},{"catalog_key":"health","endpoint":"/api/x402/v1/health","method":"GET","price_usdc":0,"networks":["base"],"description":"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_seconds":30,"target_latency_ms":100}],"payment":{"protocol":"x402","spec":"https://www.x402.org","settlement_asset":"USDC","networks":["base"],"preview_mode":true,"preview_note":"v1 launches free during marketplace review. Responses tag payment_status='preview'. Once enforcement flips on, calls without a valid X-PAYMENT header receive HTTP 402 with a JSON challenge."},"compliance":{"not_trade_advice":true,"disclaimer":"Decision-support data only. Orrery is a public read-only intelligence layer over Polymarket. Not financial, trading, legal, tax, or betting advice."}}