{"openapi":"3.1.0","info":{"title":"TrendMoney public API","version":"1.0.0","description":"Read-only access to live geopolitical news and market data.\n\nNo authentication and no API key. These endpoints are public because the pages that use\nthem are public; user-scoped data (portfolios, watchlists, alerts) is not described here\nand is not reachable without a signed-in session.\n\nNews is aggregated from 150+ publisher RSS feeds. Only headlines, descriptions and\npublisher links are served — never article text. When citing an item, cite and link the\npublisher named on it, not TrendMoney.\n\nMarket data comes from Yahoo Finance and CoinGecko and is cached; it is delayed and must\nnot be presented as a tradable price.\n\nFor agents, the same data is available over MCP at https://www.trendmoney.biz/api/mcp, which is\nusually the better fit — see https://www.trendmoney.biz/.well-known/mcp.json.","contact":{"url":"https://www.trendmoney.biz/contact"}},"servers":[{"url":"https://www.trendmoney.biz"}],"paths":{"/api/news":{"get":{"operationId":"getNews","summary":"Aggregated, deduplicated news across all sources","description":"Merges RSS, NewsAPI and GNews, normalises and deduplicates by URL. Cached ~10 minutes.","parameters":[{"name":"q","in":"query","schema":{"type":"string"},"description":"Free-text query passed through to the keyed news APIs."},{"name":"regions","in":"query","schema":{"type":"string"},"description":"Comma-separated region ids (europe, asia, americas, middle-east, africa, oceania)."},{"name":"limit","in":"query","schema":{"type":"integer","maximum":500,"default":500}}],"responses":{"200":{"description":"Articles, newest first","content":{"application/json":{"schema":{"type":"object","properties":{"articles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"description":{"type":"string"},"url":{"type":"string","format":"uri","description":"The publisher's URL. Cite this, not us."},"source":{"type":"string"},"sourceName":{"type":"string"},"publishedAt":{"type":"string","format":"date-time"},"categories":{"type":"array","items":{"type":"string"}}}}}}}}}}}}},"/api/rss":{"get":{"operationId":"getRssFeed","summary":"RSS-only corpus, round-robin merged across feeds","description":"The merge is round-robin across feeds rather than a flat recency sort, so niche sources are not buried by the high-frequency wires. Cached ~10 minutes.","parameters":[{"name":"regions","in":"query","schema":{"type":"string"},"description":"Comma-separated region ids."}],"responses":{"200":{"description":"Articles","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"description":{"type":"string"},"url":{"type":"string","format":"uri","description":"The publisher's URL. Cite this, not us."},"source":{"type":"string"},"sourceName":{"type":"string"},"publishedAt":{"type":"string","format":"date-time"},"categories":{"type":"array","items":{"type":"string"}}}}}}}}}}},"/api/search":{"get":{"operationId":"searchNews","summary":"Full-text search across the current article corpus","parameters":[{"name":"q","in":"query","schema":{"type":"string"}},{"name":"hashtag","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Matching articles","content":{"application/json":{"schema":{"type":"object","properties":{"articles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"description":{"type":"string"},"url":{"type":"string","format":"uri","description":"The publisher's URL. Cite this, not us."},"source":{"type":"string"},"sourceName":{"type":"string"},"publishedAt":{"type":"string","format":"date-time"},"categories":{"type":"array","items":{"type":"string"}}}}}}}}}}}}},"/api/markets/quote":{"get":{"operationId":"getQuote","summary":"Single asset quote","description":"Yahoo Finance symbol conventions: plain ticker for US listings, `.NS` suffix for NSE India, `-USD` pair for crypto. Cached 60 seconds.","parameters":[{"name":"symbol","in":"query","required":true,"schema":{"type":"string"},"examples":{"us":{"value":"NVDA"},"india":{"value":"RELIANCE.NS"},"crypto":{"value":"BTC-USD"}}}],"responses":{"200":{"description":"Quote","content":{"application/json":{"schema":{"type":"object","properties":{"symbol":{"type":"string"},"price":{"type":"number"},"change24h":{"type":"number","description":"Day change, percent."},"priceChange24h":{"type":"number"},"high24h":{"type":"number"},"low24h":{"type":"number"},"fiftyTwoWeekHigh":{"type":"number"},"fiftyTwoWeekLow":{"type":"number"},"volume24h":{"type":"number"},"currency":{"type":"string"},"change1y":{"type":"number"}}}}}},"400":{"description":"symbol query parameter missing"}}}},"/api/markets/fast":{"get":{"operationId":"getMarketOverview","summary":"Crypto, index and commodity snapshot with top movers","description":"Cached 60 seconds. The lightweight path used for first paint.","responses":{"200":{"description":"Snapshot","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object"}},"lastUpdated":{"type":"string","format":"date-time"}}}}}}}}},"/api/markets/history":{"get":{"operationId":"getPriceHistory","summary":"OHLCV series for one asset","parameters":[{"name":"id","in":"query","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","schema":{"type":"string","enum":["crypto","stock","commodity"]}},{"name":"timeframe","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Series","content":{"application/json":{"schema":{"type":"object","properties":{"prices":{"type":"array","items":{"type":"number"}},"timestamps":{"type":"array","items":{"type":"number"}},"volumes":{"type":"array","items":{"type":"number"}}}}}}}}}},"/api/markets/search":{"get":{"operationId":"searchSymbols","summary":"Resolve a company or asset name to a ticker","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Matches","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"array","items":{"type":"object"}}}}}}}}}},"/api/forex":{"get":{"operationId":"getForexRates","summary":"INR-based currency pairs","description":"Cached 15 minutes.","responses":{"200":{"description":"Rates","content":{"application/json":{"schema":{"type":"object","properties":{"rates":{"type":"array","items":{"type":"object"}},"lastUpdated":{"type":"string","format":"date-time"}}}}}}}}},"/api/polymarket":{"get":{"operationId":"getPredictionMarkets","summary":"Polymarket prediction markets filtered to geopolitical questions","description":"Cached 5 minutes.","parameters":[{"name":"categories","in":"query","schema":{"type":"string"}},{"name":"regions","in":"query","schema":{"type":"string"}},{"name":"sortBy","in":"query","schema":{"type":"string","enum":["volume","trending","confidence","newest"]}},{"name":"scope","in":"query","schema":{"type":"string","enum":["focus","all"]}}],"responses":{"200":{"description":"Markets","content":{"application/json":{"schema":{"type":"object","properties":{"markets":{"type":"array","items":{"type":"object"}},"lastUpdated":{"type":"string","format":"date-time"}}}}}}}}}}}