{"openapi":"3.1.0","info":{"title":"stablestock.dev","description":"Real-time US stock market data for AI agents. No API keys, no accounts. Pay per request in USDC via x402 or MPP.","version":"1.0.0","x-guidance":"All endpoints are under /api/v1. Pricing: quote/snapshot/ticker = $0.01, aggregates/news = $0.02, market-status = free. Pass a US-listed ticker symbol (uppercase, e.g. AAPL). Responses are JSON shaped { ticker, data, source: 'massive', as_of }.","guidance":"All endpoints are under /api/v1. Pricing: quote/snapshot/ticker = $0.01, aggregates/news = $0.02, market-status = free. Pass a US-listed ticker symbol (uppercase, e.g. AAPL). Responses are JSON shaped { ticker, data, source: 'massive', as_of }."},"servers":[{"url":"https://x402stock.xyz"}],"tags":[{"name":"V1"}],"paths":{"/api/v1/quote/{ticker}":{"get":{"operationId":"v1_quote_{ticker}","summary":"Get the latest available price for any US-listed stock: the most recent 1-minute bar close plus today's OHLCV, change, and previous close. Currently 15 minutes delayed; each response carries `is_delayed: true`. Real-time pricing lands when the data plan is upgraded.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}]},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"ticker":{"type":"string"},"data":{"type":"object","properties":{"price":{"anyOf":[{"type":"number"},{"type":"null"}]},"change":{"anyOf":[{"type":"number"},{"type":"null"}]},"change_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"day":{"type":"object","properties":{"open":{"type":"number"},"high":{"type":"number"},"low":{"type":"number"},"close":{"type":"number"},"volume":{"type":"number"},"vwap":{"type":"number"}},"required":["open","high","low","close","volume"],"additionalProperties":false},"previous_close":{"anyOf":[{"type":"number"},{"type":"null"}]},"timestamp":{"anyOf":[{"type":"string"},{"type":"null"}]},"is_delayed":{"type":"boolean"},"delayed_by":{"type":"string"}},"required":["price","change","change_percent","previous_close","timestamp","is_delayed","delayed_by"],"additionalProperties":false},"source":{"type":"string","const":"massive"},"as_of":{"type":"string"}},"required":["ticker","data","source","as_of"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/snapshot/{ticker}":{"get":{"operationId":"v1_snapshot_{ticker}","summary":"Single-call snapshot of a ticker's current state: last quote, last trade, today's OHLC + volume + VWAP, previous-day OHLC, today's change vs previous close.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}]},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"ticker":{"type":"string"},"data":{"type":"object","properties":{"change":{"anyOf":[{"type":"number"},{"type":"null"}]},"change_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"day":{"type":"object","properties":{"open":{"type":"number"},"high":{"type":"number"},"low":{"type":"number"},"close":{"type":"number"},"volume":{"type":"number"},"vwap":{"type":"number"}},"required":["open","high","low","close","volume"],"additionalProperties":false},"previous_day":{"type":"object","properties":{"open":{"type":"number"},"high":{"type":"number"},"low":{"type":"number"},"close":{"type":"number"},"volume":{"type":"number"},"vwap":{"type":"number"}},"required":["open","high","low","close","volume"],"additionalProperties":false},"last_minute_bar":{"type":"object","properties":{"open":{"type":"number"},"high":{"type":"number"},"low":{"type":"number"},"close":{"type":"number"},"volume":{"type":"number"},"vwap":{"type":"number"},"trade_count":{"type":"number"},"accumulated_volume":{"type":"number"},"timestamp":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["open","high","low","close","volume","vwap","timestamp"],"additionalProperties":false},"last_trade":{"type":"object","properties":{"price":{"type":"number"},"size":{"type":"number"},"exchange_id":{"type":"number"},"timestamp":{"anyOf":[{"type":"string"},{"type":"null"}]},"conditions":{"type":"array","items":{"type":"number"}}},"required":["price","size","exchange_id","timestamp","conditions"],"additionalProperties":false},"last_quote":{"type":"object","properties":{"bid_price":{"type":"number"},"bid_size":{"type":"number"},"ask_price":{"type":"number"},"ask_size":{"type":"number"},"timestamp":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["bid_price","bid_size","ask_price","ask_size","timestamp"],"additionalProperties":false}},"additionalProperties":false},"source":{"type":"string","const":"massive"},"as_of":{"type":"string"}},"required":["ticker","data","source","as_of"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/ticker/{ticker}":{"get":{"operationId":"v1_ticker_{ticker}","summary":"Company name, exchange, market cap, share class, SIC code, address, and other reference fields for a US-listed ticker.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}]},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"ticker":{"type":"string"},"data":{"type":"object","properties":{"name":{"type":"string"},"market":{"type":"string"},"locale":{"type":"string"},"type":{"anyOf":[{"type":"string"},{"type":"null"}]},"primary_exchange":{"anyOf":[{"type":"string"},{"type":"null"}]},"currency":{"anyOf":[{"type":"string"},{"type":"null"}]},"active":{"type":"boolean"},"cik":{"anyOf":[{"type":"string"},{"type":"null"}]},"composite_figi":{"anyOf":[{"type":"string"},{"type":"null"}]},"share_class_figi":{"anyOf":[{"type":"string"},{"type":"null"}]},"market_cap":{"anyOf":[{"type":"number"},{"type":"null"}]},"sic_code":{"anyOf":[{"type":"string"},{"type":"null"}]},"sic_description":{"anyOf":[{"type":"string"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"homepage":{"anyOf":[{"type":"string"},{"type":"null"}]},"phone":{"anyOf":[{"type":"string"},{"type":"null"}]},"address":{"anyOf":[{"type":"object","properties":{"address1":{"type":"string"},"city":{"type":"string"},"state":{"type":"string"},"postal_code":{"type":"string"}},"additionalProperties":false},{"type":"null"}]},"list_date":{"anyOf":[{"type":"string"},{"type":"null"}]},"employees":{"anyOf":[{"type":"number"},{"type":"null"}]},"shares_outstanding":{"anyOf":[{"type":"number"},{"type":"null"}]},"logo_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"icon_url":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","market","locale","active","cik","composite_figi","share_class_figi","market_cap","sic_code","sic_description","description","homepage","phone","address","list_date","employees","shares_outstanding","logo_url","icon_url"],"additionalProperties":false},"source":{"type":"string","const":"massive"},"as_of":{"type":"string"}},"required":["ticker","data","source","as_of"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/aggregates/{ticker}":{"get":{"operationId":"v1_aggregates_{ticker}","summary":"Returns OHLCV bars at the requested multiplier/timespan between `from` and `to`. Useful for charting and historical analysis.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"protocols":[{"x402":{}}]},"parameters":[{"in":"query","name":"multiplier","schema":{"default":1,"type":"integer","exclusiveMinimum":0,"maximum":50000}},{"in":"query","name":"timespan","schema":{"default":"day","type":"string","enum":["minute","hour","day","week","month","quarter","year"]}},{"in":"query","name":"from","schema":{"type":"string","minLength":1},"required":true},{"in":"query","name":"to","schema":{"type":"string","minLength":1},"required":true},{"in":"query","name":"adjusted","schema":{"default":true,"type":"boolean"}},{"in":"query","name":"sort","schema":{"default":"asc","type":"string","enum":["asc","desc"]}},{"in":"query","name":"limit","schema":{"default":5000,"type":"integer","exclusiveMinimum":0,"maximum":50000}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"ticker":{"type":"string"},"data":{"type":"object","properties":{"bars":{"type":"array","items":{"type":"object","properties":{"open":{"type":"number"},"high":{"type":"number"},"low":{"type":"number"},"close":{"type":"number"},"volume":{"type":"number"},"vwap":{"anyOf":[{"type":"number"},{"type":"null"}]},"trade_count":{"anyOf":[{"type":"number"},{"type":"null"}]},"timestamp":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["open","high","low","close","volume","vwap","trade_count","timestamp"],"additionalProperties":false}},"count":{"type":"number"},"adjusted":{"type":"boolean"}},"required":["bars","count"],"additionalProperties":false},"source":{"type":"string","const":"massive"},"as_of":{"type":"string"}},"required":["ticker","data","source","as_of"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/news":{"get":{"operationId":"v1_news","summary":"Curated stock-market news with ticker tags, source, publisher, image, and timestamps. Pass `?ticker=AAPL` to filter.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"protocols":[{"x402":{}}]},"parameters":[{"in":"query","name":"ticker","schema":{"type":"string","pattern":"^[A-Z][A-Z0-9.\\-]{0,9}$"}},{"in":"query","name":"limit","schema":{"default":10,"type":"integer","exclusiveMinimum":0,"maximum":50}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"source":{"type":"string","const":"massive"},"as_of":{"type":"string"},"count":{"type":"number"},"articles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"url":{"type":"string"},"image_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"author":{"anyOf":[{"type":"string"},{"type":"null"}]},"publisher":{"type":"string"},"publisher_homepage":{"type":"string"},"published_at":{"type":"string"},"tickers":{"type":"array","items":{"type":"string"}},"keywords":{"type":"array","items":{"type":"string"}}},"required":["id","title","description","url","image_url","author","publisher","publisher_homepage","published_at","tickers","keywords"],"additionalProperties":false}}},"required":["source","as_of","count","articles"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/market-status":{"get":{"operationId":"v1_market-status","summary":"v1/market-status","tags":["V1"],"security":[],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"source":{"type":"string","const":"massive"},"as_of":{"type":"string"},"market":{"type":"string"},"early_hours":{"type":"boolean"},"after_hours":{"type":"boolean"},"exchanges":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},"currencies":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}}},"required":["source","as_of","market","early_hours","after_hours","exchanges","currencies"],"additionalProperties":false}}}}}}},"/api/v1/prev-close/{ticker}":{"get":{"operationId":"v1_prev-close_{ticker}","summary":"Open, high, low, close, volume, and VWAP for a ticker's most recent completed trading day. One call returns one bar, handy for prior-close reference without setting a date range.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}]},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"ticker":{"type":"string"},"data":{"anyOf":[{"type":"object","properties":{"open":{"type":"number"},"high":{"type":"number"},"low":{"type":"number"},"close":{"type":"number"},"volume":{"type":"number"},"vwap":{"anyOf":[{"type":"number"},{"type":"null"}]},"trade_count":{"anyOf":[{"type":"number"},{"type":"null"}]},"timestamp":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["open","high","low","close","volume","vwap","trade_count","timestamp"],"additionalProperties":false},{"type":"null"}]},"source":{"type":"string","const":"massive"},"as_of":{"type":"string"}},"required":["ticker","data","source","as_of"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/open-close/{ticker}":{"get":{"operationId":"v1_open-close_{ticker}","summary":"Official open, close, high, low, volume, plus pre-market and after-hours prices for a ticker on a given date. Pass `?date=YYYY-MM-DD` (required).","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}]},"parameters":[{"in":"query","name":"date","schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"required":true},{"in":"query","name":"adjusted","schema":{"default":true,"type":"boolean"}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"ticker":{"type":"string"},"data":{"type":"object","properties":{"date":{"type":"string"},"open":{"type":"number"},"high":{"type":"number"},"low":{"type":"number"},"close":{"type":"number"},"volume":{"type":"number"},"pre_market":{"anyOf":[{"type":"number"},{"type":"null"}]},"after_hours":{"anyOf":[{"type":"number"},{"type":"null"}]}},"required":["date","open","high","low","close","volume","pre_market","after_hours"],"additionalProperties":false},"source":{"type":"string","const":"massive"},"as_of":{"type":"string"}},"required":["ticker","data","source","as_of"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/dividends/{ticker}":{"get":{"operationId":"v1_dividends_{ticker}","summary":"Historical cash dividends for a ticker: amount, currency, type, frequency, and the declaration / ex-dividend / record / pay dates. Most recent first.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"protocols":[{"x402":{}}]},"parameters":[{"in":"query","name":"limit","schema":{"default":10,"type":"integer","exclusiveMinimum":0,"maximum":1000}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"ticker":{"type":"string"},"data":{"type":"object","properties":{"count":{"type":"number"},"dividends":{"type":"array","items":{"type":"object","properties":{"cash_amount":{"type":"number"},"currency":{"anyOf":[{"type":"string"},{"type":"null"}]},"dividend_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"frequency":{"anyOf":[{"type":"number"},{"type":"null"}]},"declaration_date":{"anyOf":[{"type":"string"},{"type":"null"}]},"ex_dividend_date":{"anyOf":[{"type":"string"},{"type":"null"}]},"record_date":{"anyOf":[{"type":"string"},{"type":"null"}]},"pay_date":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["cash_amount","currency","dividend_type","frequency","declaration_date","ex_dividend_date","record_date","pay_date"],"additionalProperties":false}}},"required":["count","dividends"],"additionalProperties":false},"source":{"type":"string","const":"massive"},"as_of":{"type":"string"}},"required":["ticker","data","source","as_of"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/splits/{ticker}":{"get":{"operationId":"v1_splits_{ticker}","summary":"Historical stock splits for a ticker, with execution date and split ratio (split_from to split_to). Most recent first.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"protocols":[{"x402":{}}]},"parameters":[{"in":"query","name":"limit","schema":{"default":10,"type":"integer","exclusiveMinimum":0,"maximum":1000}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"ticker":{"type":"string"},"data":{"type":"object","properties":{"count":{"type":"number"},"splits":{"type":"array","items":{"type":"object","properties":{"execution_date":{"anyOf":[{"type":"string"},{"type":"null"}]},"split_from":{"type":"number"},"split_to":{"type":"number"},"ratio":{"anyOf":[{"type":"number"},{"type":"null"}]}},"required":["execution_date","split_from","split_to","ratio"],"additionalProperties":false}}},"required":["count","splits"],"additionalProperties":false},"source":{"type":"string","const":"massive"},"as_of":{"type":"string"}},"required":["ticker","data","source","as_of"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/financials/{ticker}":{"get":{"operationId":"v1_financials_{ticker}","summary":"Per-period financial statements (income statement, balance sheet, cash flow, comprehensive income) sourced from SEC filings, flattened to fact_key → value maps. Pass `?timeframe=annual|quarterly|ttm` and `?limit=`.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"protocols":[{"x402":{}}]},"parameters":[{"in":"query","name":"timeframe","schema":{"type":"string","enum":["annual","quarterly","ttm"]}},{"in":"query","name":"limit","schema":{"default":4,"type":"integer","exclusiveMinimum":0,"maximum":100}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"ticker":{"type":"string"},"data":{"type":"object","properties":{"count":{"type":"number"},"reports":{"type":"array","items":{"type":"object","properties":{"company_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"cik":{"anyOf":[{"type":"string"},{"type":"null"}]},"timeframe":{"anyOf":[{"type":"string"},{"type":"null"}]},"fiscal_period":{"anyOf":[{"type":"string"},{"type":"null"}]},"fiscal_year":{"anyOf":[{"type":"string"},{"type":"null"}]},"start_date":{"anyOf":[{"type":"string"},{"type":"null"}]},"end_date":{"anyOf":[{"type":"string"},{"type":"null"}]},"filing_date":{"anyOf":[{"type":"string"},{"type":"null"}]},"source_filing_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"statements":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"number"},{"type":"null"}]}}}},"required":["company_name","cik","timeframe","fiscal_period","fiscal_year","start_date","end_date","filing_date","source_filing_url","statements"],"additionalProperties":false}}},"required":["count","reports"],"additionalProperties":false},"source":{"type":"string","const":"massive"},"as_of":{"type":"string"}},"required":["ticker","data","source","as_of"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/events/{ticker}":{"get":{"operationId":"v1_events_{ticker}","summary":"Timeline of corporate events for a ticker, such as ticker symbol changes, with the company name, CIK, and composite FIGI.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}]},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"ticker":{"type":"string"},"data":{"type":"object","properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"composite_figi":{"anyOf":[{"type":"string"},{"type":"null"}]},"cik":{"anyOf":[{"type":"string"},{"type":"null"}]},"events":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"date":{"type":"string"},"ticker":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["type","date","ticker"],"additionalProperties":false}}},"required":["name","composite_figi","cik","events"],"additionalProperties":false},"source":{"type":"string","const":"massive"},"as_of":{"type":"string"}},"required":["ticker","data","source","as_of"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/related/{ticker}":{"get":{"operationId":"v1_related_{ticker}","summary":"Tickers related to the given symbol based on news and analyst coverage co-occurrence, a quick peer set for comparative analysis.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}]},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"ticker":{"type":"string"},"data":{"type":"object","properties":{"count":{"type":"number"},"related":{"type":"array","items":{"type":"string"}}},"required":["count","related"],"additionalProperties":false},"source":{"type":"string","const":"massive"},"as_of":{"type":"string"}},"required":["ticker","data","source","as_of"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/indicators/sma/{ticker}":{"get":{"operationId":"v1_indicators_sma_{ticker}","summary":"Simple Moving Average time series. Tune with `?window=`, `?timespan=`, `?series_type=`, `?limit=`.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"protocols":[{"x402":{}}]},"parameters":[{"in":"query","name":"timespan","schema":{"default":"day","type":"string","enum":["minute","hour","day","week","month","quarter","year"]}},{"in":"query","name":"window","schema":{"default":50,"type":"integer","exclusiveMinimum":0,"maximum":2000}},{"in":"query","name":"series_type","schema":{"default":"close","type":"string","enum":["open","high","low","close"]}},{"in":"query","name":"adjusted","schema":{"default":true,"type":"boolean"}},{"in":"query","name":"limit","schema":{"default":30,"type":"integer","exclusiveMinimum":0,"maximum":5000}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"ticker":{"type":"string"},"data":{"type":"object","properties":{"indicator":{"type":"string"},"count":{"type":"number"},"values":{"type":"array","items":{"type":"object","properties":{"timestamp":{"anyOf":[{"type":"string"},{"type":"null"}]},"value":{"type":"number"},"signal":{"type":"number"},"histogram":{"type":"number"}},"required":["timestamp","value"],"additionalProperties":false}}},"required":["indicator","count","values"],"additionalProperties":false},"source":{"type":"string","const":"massive"},"as_of":{"type":"string"}},"required":["ticker","data","source","as_of"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/indicators/ema/{ticker}":{"get":{"operationId":"v1_indicators_ema_{ticker}","summary":"Exponential Moving Average time series. Tune with `?window=`, `?timespan=`, `?series_type=`, `?limit=`.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"protocols":[{"x402":{}}]},"parameters":[{"in":"query","name":"timespan","schema":{"default":"day","type":"string","enum":["minute","hour","day","week","month","quarter","year"]}},{"in":"query","name":"window","schema":{"default":50,"type":"integer","exclusiveMinimum":0,"maximum":2000}},{"in":"query","name":"series_type","schema":{"default":"close","type":"string","enum":["open","high","low","close"]}},{"in":"query","name":"adjusted","schema":{"default":true,"type":"boolean"}},{"in":"query","name":"limit","schema":{"default":30,"type":"integer","exclusiveMinimum":0,"maximum":5000}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"ticker":{"type":"string"},"data":{"type":"object","properties":{"indicator":{"type":"string"},"count":{"type":"number"},"values":{"type":"array","items":{"type":"object","properties":{"timestamp":{"anyOf":[{"type":"string"},{"type":"null"}]},"value":{"type":"number"},"signal":{"type":"number"},"histogram":{"type":"number"}},"required":["timestamp","value"],"additionalProperties":false}}},"required":["indicator","count","values"],"additionalProperties":false},"source":{"type":"string","const":"massive"},"as_of":{"type":"string"}},"required":["ticker","data","source","as_of"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/indicators/rsi/{ticker}":{"get":{"operationId":"v1_indicators_rsi_{ticker}","summary":"Relative Strength Index time series (momentum oscillator). Tune with `?window=` (default 14), `?timespan=`, `?series_type=`, `?limit=`.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"protocols":[{"x402":{}}]},"parameters":[{"in":"query","name":"timespan","schema":{"default":"day","type":"string","enum":["minute","hour","day","week","month","quarter","year"]}},{"in":"query","name":"window","schema":{"default":14,"type":"integer","exclusiveMinimum":0,"maximum":2000}},{"in":"query","name":"series_type","schema":{"default":"close","type":"string","enum":["open","high","low","close"]}},{"in":"query","name":"adjusted","schema":{"default":true,"type":"boolean"}},{"in":"query","name":"limit","schema":{"default":30,"type":"integer","exclusiveMinimum":0,"maximum":5000}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"ticker":{"type":"string"},"data":{"type":"object","properties":{"indicator":{"type":"string"},"count":{"type":"number"},"values":{"type":"array","items":{"type":"object","properties":{"timestamp":{"anyOf":[{"type":"string"},{"type":"null"}]},"value":{"type":"number"},"signal":{"type":"number"},"histogram":{"type":"number"}},"required":["timestamp","value"],"additionalProperties":false}}},"required":["indicator","count","values"],"additionalProperties":false},"source":{"type":"string","const":"massive"},"as_of":{"type":"string"}},"required":["ticker","data","source","as_of"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/indicators/macd/{ticker}":{"get":{"operationId":"v1_indicators_macd_{ticker}","summary":"MACD time series with value, signal line, and histogram. Tune with `?short_window=`, `?long_window=`, `?signal_window=`, `?timespan=`, `?series_type=`, `?limit=`.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"protocols":[{"x402":{}}]},"parameters":[{"in":"query","name":"timespan","schema":{"default":"day","type":"string","enum":["minute","hour","day","week","month","quarter","year"]}},{"in":"query","name":"series_type","schema":{"default":"close","type":"string","enum":["open","high","low","close"]}},{"in":"query","name":"adjusted","schema":{"default":true,"type":"boolean"}},{"in":"query","name":"short_window","schema":{"default":12,"type":"integer","exclusiveMinimum":0,"maximum":2000}},{"in":"query","name":"long_window","schema":{"default":26,"type":"integer","exclusiveMinimum":0,"maximum":2000}},{"in":"query","name":"signal_window","schema":{"default":9,"type":"integer","exclusiveMinimum":0,"maximum":2000}},{"in":"query","name":"limit","schema":{"default":30,"type":"integer","exclusiveMinimum":0,"maximum":5000}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"ticker":{"type":"string"},"data":{"type":"object","properties":{"indicator":{"type":"string"},"count":{"type":"number"},"values":{"type":"array","items":{"type":"object","properties":{"timestamp":{"anyOf":[{"type":"string"},{"type":"null"}]},"value":{"type":"number"},"signal":{"type":"number"},"histogram":{"type":"number"}},"required":["timestamp","value"],"additionalProperties":false}}},"required":["indicator","count","values"],"additionalProperties":false},"source":{"type":"string","const":"massive"},"as_of":{"type":"string"}},"required":["ticker","data","source","as_of"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/gainers":{"get":{"operationId":"v1_gainers","summary":"The day's biggest percentage gainers across US equities, with current and previous-day OHLCV per ticker.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"protocols":[{"x402":{}}]},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"source":{"type":"string","const":"massive"},"as_of":{"type":"string"},"direction":{"type":"string","enum":["gainers","losers"]},"count":{"type":"number"},"tickers":{"type":"array","items":{"type":"object","properties":{"ticker":{"type":"string"},"change":{"type":"number"},"change_percent":{"type":"number"},"updated":{"anyOf":[{"type":"string"},{"type":"null"}]},"day":{"type":"object","properties":{"open":{"type":"number"},"high":{"type":"number"},"low":{"type":"number"},"close":{"type":"number"},"volume":{"type":"number"},"vwap":{"type":"number"}},"required":["open","high","low","close","volume","vwap"],"additionalProperties":false},"previous_day":{"type":"object","properties":{"open":{"type":"number"},"high":{"type":"number"},"low":{"type":"number"},"close":{"type":"number"},"volume":{"type":"number"},"vwap":{"type":"number"}},"required":["open","high","low","close","volume","vwap"],"additionalProperties":false}},"required":["ticker","change","change_percent","updated"],"additionalProperties":false}}},"required":["source","as_of","direction","count","tickers"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/losers":{"get":{"operationId":"v1_losers","summary":"The day's biggest percentage losers across US equities, with current and previous-day OHLCV per ticker.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"protocols":[{"x402":{}}]},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"source":{"type":"string","const":"massive"},"as_of":{"type":"string"},"direction":{"type":"string","enum":["gainers","losers"]},"count":{"type":"number"},"tickers":{"type":"array","items":{"type":"object","properties":{"ticker":{"type":"string"},"change":{"type":"number"},"change_percent":{"type":"number"},"updated":{"anyOf":[{"type":"string"},{"type":"null"}]},"day":{"type":"object","properties":{"open":{"type":"number"},"high":{"type":"number"},"low":{"type":"number"},"close":{"type":"number"},"volume":{"type":"number"},"vwap":{"type":"number"}},"required":["open","high","low","close","volume","vwap"],"additionalProperties":false},"previous_day":{"type":"object","properties":{"open":{"type":"number"},"high":{"type":"number"},"low":{"type":"number"},"close":{"type":"number"},"volume":{"type":"number"},"vwap":{"type":"number"}},"required":["open","high","low","close","volume","vwap"],"additionalProperties":false}},"required":["ticker","change","change_percent","updated"],"additionalProperties":false}}},"required":["source","as_of","direction","count","tickers"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/grouped-daily":{"get":{"operationId":"v1_grouped-daily","summary":"End-of-day OHLCV bars for every US-listed ticker on a single date; one call returns the entire market. Pass `?date=YYYY-MM-DD` (required).","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"protocols":[{"x402":{}}]},"parameters":[{"in":"query","name":"date","schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"required":true},{"in":"query","name":"adjusted","schema":{"default":true,"type":"boolean"}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"source":{"type":"string","const":"massive"},"as_of":{"type":"string"},"date":{"type":"string"},"adjusted":{"type":"boolean"},"count":{"type":"number"},"results":{"type":"array","items":{"type":"object","properties":{"ticker":{"type":"string"},"open":{"type":"number"},"high":{"type":"number"},"low":{"type":"number"},"close":{"type":"number"},"volume":{"type":"number"},"vwap":{"anyOf":[{"type":"number"},{"type":"null"}]},"trade_count":{"anyOf":[{"type":"number"},{"type":"null"}]},"timestamp":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["ticker","open","high","low","close","volume","vwap","trade_count","timestamp"],"additionalProperties":false}}},"required":["source","as_of","date","count","results"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/market-holidays":{"get":{"operationId":"v1_market-holidays","summary":"v1/market-holidays","tags":["V1"],"security":[],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"source":{"type":"string","const":"massive"},"as_of":{"type":"string"},"count":{"type":"number"},"holidays":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string"},"exchange":{"type":"string"},"name":{"type":"string"},"status":{"type":"string"},"open":{"anyOf":[{"type":"string"},{"type":"null"}]},"close":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["date","exchange","name","status","open","close"],"additionalProperties":false}}},"required":["source","as_of","count","holidays"],"additionalProperties":false}}}}}}},"/api/v1/exchanges":{"get":{"operationId":"v1_exchanges","summary":"Reference list of US equity exchanges and market centers with names, MICs, operating MICs, and SIP participant IDs.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}]},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"source":{"type":"string","const":"massive"},"as_of":{"type":"string"},"count":{"type":"number"},"exchanges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"number"},"type":{"type":"string"},"name":{"type":"string"},"acronym":{"anyOf":[{"type":"string"},{"type":"null"}]},"mic":{"anyOf":[{"type":"string"},{"type":"null"}]},"operating_mic":{"anyOf":[{"type":"string"},{"type":"null"}]},"participant_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"url":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","type","name","acronym","mic","operating_mic","participant_id","url"],"additionalProperties":false}}},"required":["source","as_of","count","exchanges"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/conditions":{"get":{"operationId":"v1_conditions","summary":"Reference catalog of trade/quote condition codes (the numeric `conditions` seen on trades) with names, types, data types, and SIP mappings.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}]},"parameters":[{"in":"query","name":"limit","schema":{"default":50,"type":"integer","exclusiveMinimum":0,"maximum":1000}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"source":{"type":"string","const":"massive"},"as_of":{"type":"string"},"count":{"type":"number"},"conditions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"number"},"type":{"type":"string"},"name":{"type":"string"},"data_types":{"type":"array","items":{"type":"string"}},"sip_mapping":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}}},"required":["id","type","name","data_types","sip_mapping"],"additionalProperties":false}}},"required":["source","as_of","count","conditions"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/ticker-types":{"get":{"operationId":"v1_ticker-types","summary":"Reference list of security type codes used in ticker reference data (e.g. CS = Common Stock, ETF, PFD, WARRANT) with descriptions.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}]},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"source":{"type":"string","const":"massive"},"as_of":{"type":"string"},"count":{"type":"number"},"types":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"description":{"type":"string"},"asset_class":{"type":"string"},"locale":{"type":"string"}},"required":["code","description","asset_class","locale"],"additionalProperties":false}}},"required":["source","as_of","count","types"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}},"/api/v1/tickers":{"get":{"operationId":"v1_tickers","summary":"Find tickers by free-text `?search=` (name or symbol) with optional `?type=`, `?exchange=`, `?active=`, `?limit=`. Returns symbol, name, exchange, type, and identifiers.","tags":["V1"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}]},"parameters":[{"in":"query","name":"search","schema":{"type":"string","minLength":1,"maxLength":100}},{"in":"query","name":"type","schema":{"type":"string","minLength":1,"maxLength":20}},{"in":"query","name":"exchange","schema":{"type":"string","minLength":1,"maxLength":20}},{"in":"query","name":"active","schema":{"default":true,"type":"boolean"}},{"in":"query","name":"limit","schema":{"default":20,"type":"integer","exclusiveMinimum":0,"maximum":1000}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"source":{"type":"string","const":"massive"},"as_of":{"type":"string"},"count":{"type":"number"},"tickers":{"type":"array","items":{"type":"object","properties":{"ticker":{"type":"string"},"name":{"type":"string"},"market":{"type":"string"},"locale":{"type":"string"},"primary_exchange":{"anyOf":[{"type":"string"},{"type":"null"}]},"type":{"anyOf":[{"type":"string"},{"type":"null"}]},"active":{"type":"boolean"},"currency":{"anyOf":[{"type":"string"},{"type":"null"}]},"cik":{"anyOf":[{"type":"string"},{"type":"null"}]},"composite_figi":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["ticker","name","market","locale","primary_exchange","type","active","currency","cik","composite_figi"],"additionalProperties":false}}},"required":["source","as_of","count","tickers"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}}}}}