TMX APImoney.tmx.com ↗
Access TSX stock quotes, historical OHLCV data, earnings calendars, news releases, and market activity from money.tmx.com via 13 structured endpoints.
What is the TMX API?
The TMX Money API exposes 13 endpoints covering Canadian equity market data from money.tmx.com, including real-time quotes, 30-day historical OHLCV series, earnings calendar lookups, and full news release body text. Endpoints like get_stock_overview return fundamentals such as P/E ratio, market cap, dividend yield, and sector classification for TSX-listed equities, while get_earnings_calendar_range retrieves multi-day earnings schedules with EPS estimates and surprise figures.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/a7cba35d-3b41-460e-8d8e-6c231bbe29b8/get_market_activity' \ -H 'X-API-Key: $PARSE_API_KEY'
Get general market activity including indices, futures, commodities and market movers (top volume stocks on TSX). Returns data for S&P 500, NASDAQ, NYSE indices, Canadian bond futures, commodity prices, and the top 50 stocks by volume. No parameters required — returns a snapshot of current market state.
No input parameters required.
{
"type": "object",
"fields": {
"futures": "array of futures quote objects with symbol, price, priceChange, percentChange",
"commodities": "array of commodity quote objects with symbol, shortName, price, priceChange, percentChange",
"marketActivity": "array of index quote objects with symbol, price, volume, priceChange, percentChange",
"getMarketMovers": "array of top volume stock objects with symbol, name, price, volume, priceChange, percentChange"
},
"sample": {
"data": {
"futures": [
{
"price": 97.73,
"symbol": "/COA",
"__typename": "Quote",
"priceChange": 0.005,
"percentChange": 0.005116
}
],
"commodities": [
{
"price": 91.74,
"symbol": "/CL:NMX",
"shortName": "NYMEX Crude Oil",
"__typename": "Quote",
"priceChange": 1.71,
"percentChange": 1.899367
}
],
"marketActivity": [
{
"price": null,
"symbol": "^SPX:US",
"volume": null,
"currency": "USD",
"exchange": "CGIF Main",
"longname": "S&P 500 INDEX",
"__typename": "Quote",
"priceChange": null,
"percentChange": null
}
],
"getMarketMovers": [
{
"name": "Canadian Natural Resources Limited",
"price": 63.59,
"symbol": "CNQ",
"volume": 16981917,
"__typename": "MarketMover",
"priceChange": 1.21,
"exchangeCode": "TSX",
"exchangeName": "Toronto Stock Exchange",
"percentChange": 1.939724
}
]
},
"status": "success"
}
}About the TMX API
Market Data and Stock Overviews
get_market_activity returns a snapshot of broad market conditions with no required parameters: index quotes for S&P 500, NASDAQ, and NYSE; Canadian bond futures; commodity prices; and the top 50 TSX stocks by volume. get_stock_overview accepts a TSX symbol and returns fields including peRatio, MarketCap, dividendYield, sector, industry, currency, and current price. The endpoint returns input_not_found for unrecognized symbols.
Historical Prices and News
get_stock_price_history delivers up to 30 days of OHLCV data for a given symbol. The optional interval parameter accepts 1, 5, 10, 30, or 60 minutes, controlling the granularity of the returned dateTime, open, high, low, close, and volume fields. get_stock_news returns the 20 most recent news articles for a symbol, each with headline, datetime, source, newsid, and summary. For deeper historical news coverage, search_historical_stock_news paginates through the upstream news feed for a date range, returning every news type for an issuer with metadata fields like total_matched, has_more, and window_complete.
Earnings Calendars
The earnings calendar endpoints cover both single-day and multi-day queries. get_earnings_calendar_date accepts a date in YYYY-MM-DD format and an optional exchange filter, returning rows with ticker, company_name, call_time_normalized, EPS estimates, reported EPS, and surprise data. get_earnings_calendar_range accepts start_date, end_date, and an optional max_days cap (hard maximum 31). It deduplicates rows across dates and returns dates_successful, dates_failed, partial, and upstream_request_count to signal data quality across the range.
News Release Content
get_news_release_body retrieves the complete article body as clean plain text, with HTML tables rendered as pipe-delimited rows. It accepts either a news_id (numeric, obtainable from get_stock_news or search_historical_stock_news) or a canonical TMX Money URL. The response includes headline, publisher, published_at as an ISO 8601 timestamp with timezone offset, and ticker_symbols extracted from the URL when available. get_news_release_metadata returns the same fields minus the body, useful when only headline or thumbnail is needed.
The TMX API is a managed, monitored endpoint for money.tmx.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when money.tmx.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official money.tmx.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Track Canadian equity fundamentals (P/E ratio, market cap, dividend yield) for TSX-listed stocks using
get_stock_overview. - Build an intraday price chart using 1-minute or 5-minute OHLCV bars from
get_stock_price_history. - Monitor upcoming earnings reports and EPS surprise data across a calendar week via
get_earnings_calendar_range. - Aggregate TSX top-volume movers and index snapshots for a market dashboard using
get_market_activity. - Search and retrieve full press release text for a company's quarterly financial results using
search_historical_financial_results_newsandget_news_release_body. - Identify recently uplisted companies moving from TSXV to TSX via
get_graduated_companies_search. - Browse curated stocklists (top dividend, rising stars, recent listings) and their member counts using
get_all_stocklists.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does TMX Money have an official developer API?+
What does `get_earnings_calendar_range` return, and how does request count scale?+
ticker, company_name, call_time_normalized, EPS estimate, reported EPS, and surprise values. One upstream request is made per calendar day, so a 7-day range uses 7 requests. The upstream_request_count field in the response tells you exactly how many were made. The hard maximum range is 31 days.How far back does historical news search go for a symbol?+
search_historical_stock_news and search_historical_financial_results_news paginate through up to 50 upstream news-feed pages (20 items per page, 1000 items maximum) within a caller-supplied start_date / end_date window. Coverage depth depends on how many articles TMX Money holds for that symbol; the window_complete field in the metadata indicates whether the full date window was exhausted.Does the API return full financial statement data such as income statements or balance sheets?+
get_stock_overview), OHLCV price history, earnings calendar rows with EPS figures, and news release text. Structured income statements, balance sheets, and cash flow statements are not exposed. You can fork the API on Parse and revise it to add endpoints targeting those data surfaces.Does `get_stock_price_history` cover TSXV-listed symbols or only TSX?+
^TSX index symbol is explicitly noted as a valid input. You can fork the API on Parse to test and document TSXV coverage or add fallback handling for missing symbols.