# Market Data Documentation > The Market Data REST API, its SDKs for Go, Python, JavaScript, C#, PHP and Java, and the Google Sheets add-on. Authentication, and how to obtain a token: https://www.marketdata.app/docs/api/authentication/index.md ## Overview - [Market Data Documentation](https://www.marketdata.app/docs/index.md): Documentation for the Market Data REST API, the Go, Python, JavaScript, C#, PHP and Java SDKs, and the Google Sheets add-on. ## API reference - [Market Data API Documentation](https://www.marketdata.app/docs/api/index.md): The Market Data API is a REST service with standard HTTP methods and status codes, returning JSON for code or CSV for a spreadsheet. - [Authentication](https://www.marketdata.app/docs/api/authentication/index.md): Authenticate every Market Data API request with a Bearer Token, sent in a header or a URL parameter, and keep that token out of public code. - [CORS](https://www.marketdata.app/docs/api/cors/index.md): The Market Data API sends CORS headers so you can call it from a browser for development or personal use. Learn what that permits and what it does not. - [Dates and Times](https://www.marketdata.app/docs/api/dates-and-times/index.md): How the Market Data API formats response timestamps, which timezone it reports them in, and which date formats a request accepts. - [Mutual Funds](https://www.marketdata.app/docs/api/funds/index.md): Root endpoint /v1/funds/ and the mutual fund endpoints that return historical net asset value pricing data for any supported mutual fund symbol. - [Mutual Fund Candles](https://www.marketdata.app/docs/api/funds/candles/index.md): Get historical open, high, low, close and volume candles for a mutual fund, with the request parameters and response attributes documented. - [Markets](https://www.marketdata.app/docs/api/markets/index.md): Root endpoint /v1/markets/ and the markets endpoints that return reference data and open or closed status for the markets that Market Data covers. - [Market Status](https://www.marketdata.app/docs/api/markets/status/index.md): Get the past, present, or future status for a stock market. The endpoint will respond with "open" for trading days or "closed" for weekends or market holidays. - [Options](https://www.marketdata.app/docs/api/options/index.md): The Market Data options endpoints cover chains, expirations, quotes and OCC symbol lookup, for both real-time and historical queries. - [Option Chain](https://www.marketdata.app/docs/api/options/chain/index.md): Get a current or historical end of day option chain for an underlying ticker symbol. Optional parameters allow for extensive filtering of the chain. - [Option Expirations](https://www.marketdata.app/docs/api/options/expirations/index.md): Get the current or historical option expiration dates for an underlying symbol, narrowed by strike price or by a date in the past. - [Option Lookup](https://www.marketdata.app/docs/api/options/lookup/index.md): Convert a human-readable option description such as AAPL 12/17/27 $250 Call into a correctly formatted OCC option symbol. - [Option Quotes](https://www.marketdata.app/docs/api/options/quotes/index.md): GET /v1/options/quotes/ returns a current or historical end of day quote, with bid, ask and Greeks, for one option contract named by OCC symbol. - [Rate Limits](https://www.marketdata.app/docs/api/rate-limiting/index.md): Market Data enforces two limits, API credits per period and concurrent requests. See the limits by plan and the strategies that avoid them. - [Stocks](https://www.marketdata.app/docs/api/stocks/index.md): Root endpoint /v1/stocks/ and the stock endpoints that return quotes, candles, earnings and other fundamental, technical and pricing data. - [Bulk Stock Candles](https://www.marketdata.app/docs/api/stocks/bulkcandles/index.md): Get one daily candle for many stock symbols in a single request, instead of calling the standard candles endpoint once for each symbol. - [Stock Candles](https://www.marketdata.app/docs/api/stocks/candles/index.md): Get historical open, high, low, close and volume candles for a stock or ETF, with optional split and dividend adjustments. - [Stock Earnings](https://www.marketdata.app/docs/api/stocks/earnings/index.md): Get the historical earnings per share a stock has reported, or a calendar of the earnings reports it has still to publish. - [Stock News](https://www.marketdata.app/docs/api/stocks/news/index.md): The News endpoint is still in beta and has not yet been optimized for performance. Use caution before adding this endpoint in a prodution environment. - [Real-Time Prices](https://www.marketdata.app/docs/api/stocks/prices/index.md): Get real-time midpoint prices for one or more stocks. This endpoint returns real-time prices for stocks, using the SmartMid model. - [Delayed Stock Quotes](https://www.marketdata.app/docs/api/stocks/quotes/index.md): GET /v1/stocks/quotes/ returns the most recent delayed quote for one stock, or takes a symbols list to fetch delayed quotes for several in one call. - [Troubleshooting](https://www.marketdata.app/docs/api/troubleshooting/index.md): The Market Data API answers with standard HTTP status codes. Learn which are permanent failures, which are temporary, and when to retry. - [401: Authentication](https://www.marketdata.app/docs/api/troubleshooting/authentication/index.md): A 401 from the Market Data API almost always means a malformed Authorization header. Check the header and URL parameter forms against these examples. - [400: Bad Request](https://www.marketdata.app/docs/api/troubleshooting/bad-request/index.md): A 400 BAD REQUEST names a malformed URL, a bad parameter value, an invalid option symbol or an over-long request. Find the case that matches. - [400: Invalid Option Symbol](https://www.marketdata.app/docs/api/troubleshooting/invalid-option-symbol/index.md): A 400 on an option request usually means the OCC symbol is wrong. Learn the format, the strike encoding, and the mistakes that break it. - [Logging](https://www.marketdata.app/docs/api/troubleshooting/logging/index.md): Log your Market Data API requests, including the CF-Ray header, so a support ticket can be traced to the exact request that failed. - [403: Multiple IP Addresses](https://www.marketdata.app/docs/api/troubleshooting/multiple-ip-addresses/index.md): A 403 means the account sent requests from more than one IP address. The block clears itself after five minutes with no requests. - [404: Not Found](https://www.marketdata.app/docs/api/troubleshooting/not-found/index.md): Diagnose a Market Data API 404 case by case: a market closed on the requested date, an OCC contract that does not exist, or a time with no data. - [413: Payload Too Large](https://www.marketdata.app/docs/api/troubleshooting/payload-too-large/index.md): A 413 PAYLOAD TOO LARGE means your request asked for more candle data than is allowed in a single call. - [402: Payment Required](https://www.marketdata.app/docs/api/troubleshooting/payment-required/index.md): A 402 PAYMENT REQUIRED means your request is valid, but your current plan does not include the specific data or feature you requested. - [Real-Time Data Not Working](https://www.marketdata.app/docs/api/troubleshooting/real-time-data/index.md): The API returns the freshest data you are entitled to and raises no error. Learn how to spot delayed data and fix the account cause. - [429: Credit Limit Reached](https://www.marketdata.app/docs/api/troubleshooting/running-out-of-credits/index.md): A 429 means a daily or per-minute limit is spent. Triage the cause, then follow the playbook for your plan group to reduce credit use. - [Service Outages](https://www.marketdata.app/docs/api/troubleshooting/service-outages/index.md): Confirm a Market Data outage from the status page or programmatically, and learn what to do while the service is unavailable. - [429: Too Many Concurrent Requests](https://www.marketdata.app/docs/api/troubleshooting/too-many-concurrent-requests/index.md): Confirm a 429 comes from the concurrent request limit rather than credits, using the error payload and rate-limit headers, then cut parallel calls. - [400: URL Anatomy (Path vs Query Parameters)](https://www.marketdata.app/docs/api/troubleshooting/url-parameters/index.md): Learn which parts of a Market Data API request belong in the URL path and which belong in the query string, and the mistakes that cause a 400. - [Universal Parameters](https://www.marketdata.app/docs/api/universal-parameters/index.md): The following parameters are universal and can be used with any endpoint unless otherwise indicated in that endpoint's documentation. - [Columns](https://www.marketdata.app/docs/api/universal-parameters/columns/index.md): Use the columns parameter on any Market Data endpoint to return only the fields you name, such as columns=ask,bid, which suppresses the status output. - [Date Format](https://www.marketdata.app/docs/api/universal-parameters/date-format/index.md): Use the dateformat parameter to receive timestamps as a formatted timestamp, a unix epoch value or a spreadsheet serial number. - [Format](https://www.marketdata.app/docs/api/universal-parameters/format/index.md): The format parameter is used to specify the format for your data. We support JSON and CSV formats. The default format is JSON. - [Headers Parameter](https://www.marketdata.app/docs/api/universal-parameters/headers/index.md): Set headers=false on any CSV request to drop the header row and return only the data points; headers are on by default when the parameter is omitted. - [Human Readable](https://www.marketdata.app/docs/api/universal-parameters/human-readable/index.md): Use the human parameter to get human-readable attribute names in JSON or CSV, so the output can go straight into a table for an end user. - [Limit](https://www.marketdata.app/docs/api/universal-parameters/limit/index.md): The limit parameter allows you to limit the number of results for a particular API call or override an endpoint’s default limits to get more data. - [Data Mode](https://www.marketdata.app/docs/api/universal-parameters/mode/index.md): Use the mode parameter to choose live or cached data, which sets the freshness guarantee and the credits a Market Data request costs. - [Offset](https://www.marketdata.app/docs/api/universal-parameters/offset/index.md): Use the offset parameter with limit to paginate a Market Data API response, starting the returned values at a position you choose. - [Token](https://www.marketdata.app/docs/api/universal-parameters/token/index.md): Pass your read-only access token as a token query parameter when a header is impossible, and see why the URL form exposes the token in logs. - [Utilities](https://www.marketdata.app/docs/api/utilities/index.md): These endpoints are designed to assist with API-related service issues, including checking the online status and uptime. - [Request Headers](https://www.marketdata.app/docs/api/utilities/headers/index.md): Retrieve the headers your application sends to the Market Data API as JSON, to debug an Authorization header that is not working. - [API Status](https://www.marketdata.app/docs/api/utilities/status/index.md): Check the current status of Market Data services and historical uptime for the last 30 and 90 days. The status refreshes every five minutes. ## SDKs - [Market Data SDKs](https://www.marketdata.app/docs/sdk/index.md): Official Market Data SDKs for Python, JavaScript, Java, C#, Go and PHP, so you can pull real-time and historical data without writing HTTP code. - [Postman Collection](https://www.marketdata.app/docs/sdk/postman/index.md): The Market Data Postman collection covers every API endpoint with example requests. Learn how to import it and how to pull later updates. ### Go - [Go SDK](https://www.marketdata.app/docs/sdk/go/index.md): The Market Data Go SDK v2 gives type-safe access to stock, option, fund and market data using nothing but the Go standard library at runtime. - [Authentication (Go SDK)](https://www.marketdata.app/docs/sdk/go/authentication/index.md): The Market Data API authenticates every request with a Bearer token. You can obtain a token from the Market Data Dashboard. - [Client (Go SDK)](https://www.marketdata.app/docs/sdk/go/client/index.md): Create a Go SDK client with NewClient and functional options. It is safe for concurrent use and caps itself at 50 in-flight requests. - [Error Handling (Go SDK)](https://www.marketdata.app/docs/sdk/go/errors/index.md): The Go SDK returns typed errors you inspect with errors.Is and errors.As, each carrying request details and a sentinel for quick classification. - [Funds (Go SDK)](https://www.marketdata.app/docs/sdk/go/funds/index.md): Access historical net asset value (NAV) candles for mutual funds. The Go SDK exposes these endpoints through the client.Funds service. - [Fund Candles (Go SDK)](https://www.marketdata.app/docs/sdk/go/funds/candles/index.md): Fetch historical daily NAV candles for a mutual fund with the Go SDK Candles and GetCandles methods on the Funds service, with times in US Eastern. - [Installation (Go SDK)](https://www.marketdata.app/docs/sdk/go/installation/index.md): The Market Data Go SDK is installed with the standard go get command. It is a normal Go module with a /v2 major-version suffix on its import path. - [Logging (Go SDK)](https://www.marketdata.app/docs/sdk/go/logging/index.md): The Go SDK logs through log/slog and never prints your full API token. Supply your own logger, raise the verbosity, or turn logging off. - [Markets (Go SDK)](https://www.marketdata.app/docs/sdk/go/markets/index.md): Check whether a market was open, closed, or closed early on any trading day. The Go SDK exposes these endpoints through the client.Markets service. - [Status History](https://www.marketdata.app/docs/sdk/go/markets/status-history/index.md): Call StatusHistory on the Go SDK Markets service to get the open or closed market status for every day in a date range, one entry per day. - [Market Status (Go SDK)](https://www.marketdata.app/docs/sdk/go/markets/status/index.md): Retrieve the market status (open, closed, or early close) for a single trading day — past, present, or future. - [Options (Go SDK)](https://www.marketdata.app/docs/sdk/go/options/index.md): Go SDK options endpoints: option chains, expiration dates, single and multi-contract quotes, and OCC symbol lookup, each with a context-aware method. - [Option Chain (Go SDK)](https://www.marketdata.app/docs/sdk/go/options/chain/index.md): Fetch a current or historical option chain with the Go SDK Chain method, filtering by expiration, strike, side, moneyness and liquidity. - [Expirations (Go SDK)](https://www.marketdata.app/docs/sdk/go/options/expirations/index.md): List the expiration dates with listed option contracts for an underlying using the Go SDK Expirations method, with optional strike and date filters. - [Lookup (Go SDK)](https://www.marketdata.app/docs/sdk/go/options/lookup/index.md): Resolve an option contract to its standard OCC option symbol with the Go SDK, from the underlying, expiration, strike price and option type. - [Option Quotes (Go SDK)](https://www.marketdata.app/docs/sdk/go/options/quotes/index.md): Fetch current or historical end-of-day option quotes with the Go SDK: Quote for one OCC contract or Quotes for many, each with a Get wrapper. - [Parameters (Go SDK)](https://www.marketdata.app/docs/sdk/go/parameters/index.md): Universal Market Data parameters work on every endpoint. In the Go SDK you set them as client-level functional options that apply to each request. - [Stocks (Go SDK)](https://www.marketdata.app/docs/sdk/go/stocks/index.md): The Go SDK client.Stocks service returns quotes, candles, bulk candles, SmartMid prices, earnings reports and news for stock symbols. - [Bulk Candles (Go SDK)](https://www.marketdata.app/docs/sdk/go/stocks/bulkcandles/index.md): Retrieve a single daily candle for many stock symbols in one API request — ideal for market snapshots. - [Stock Candles (Go SDK)](https://www.marketdata.app/docs/sdk/go/stocks/candles/index.md): Retrieve historical OHLCV (open, high, low, close, volume) candles for a stock symbol across intraday, daily, weekly, monthly, and yearly resolutions. - [Earnings (Go SDK)](https://www.marketdata.app/docs/sdk/go/stocks/earnings/index.md): Get historical earnings-per-share data and the upcoming earnings calendar for a stock, one report per fiscal quarter. - [News (Go SDK)](https://www.marketdata.app/docs/sdk/go/stocks/news/index.md): Retrieve news articles for a stock symbol with the Go SDK client.Stocks.News method, narrowing the results to a date window. - [Prices (Go SDK)](https://www.marketdata.app/docs/sdk/go/stocks/prices/index.md): Get real-time SmartMid midpoint prices for one or more stocks — a lightweight alternative to a full quote when only a single price per symbol is needed. - [Stock Quote (Go SDK)](https://www.marketdata.app/docs/sdk/go/stocks/quote/index.md): Get a real-time price quote for a single stock symbol, including bid/ask, last trade, change, and volume. - [Stock Quotes (Go SDK)](https://www.marketdata.app/docs/sdk/go/stocks/quotes/index.md): Fetch real-time quotes for several stock symbols in one call with the Go SDK GetQuotes and Quotes methods on the Stocks service. - [Utilities (Go SDK)](https://www.marketdata.app/docs/sdk/go/utilities/index.md): The Go SDK client.Utilities service reports on the API itself, with health and uptime, a request header echo, and your API credit state. - [API Status (Go SDK)](https://www.marketdata.app/docs/sdk/go/utilities/api-status/index.md): Check the Market Data API status and its historical uptime with the Go SDK Status and GetStatus methods on the Utilities service, with no parameters. - [Headers (Go SDK)](https://www.marketdata.app/docs/sdk/go/utilities/headers/index.md): Echo back the request headers your application is sending — useful for debugging authentication and proxy issues. - [User (Go SDK)](https://www.marketdata.app/docs/sdk/go/utilities/user/index.md): Retrieve information about the authenticated account: its API credit state for the current window and its options data entitlement. ### Python - [Python SDK](https://www.marketdata.app/docs/sdk/py/index.md): Welcome to the Market Data Python SDK documentation. This SDK allows you to easily integrate Market Data services into your Python applications. - [Authentication (Python SDK)](https://www.marketdata.app/docs/sdk/py/authentication/index.md): Set your Market Data Bearer Token for the Python SDK through an environment variable, a .env file, or by passing it to the client directly. - [Client (Python SDK)](https://www.marketdata.app/docs/sdk/py/client/index.md): The Python SDK MarketDataClient makes requests, parses responses, tracks rate limits and logs, across stocks, options, funds and market status. - [Funds (Python SDK)](https://www.marketdata.app/docs/sdk/py/funds/index.md): The Python SDK wraps the Market Data Funds endpoints, giving access to historical mutual fund price data. - [Fund Candles (Python SDK)](https://www.marketdata.app/docs/sdk/py/funds/candles/index.md): Retrieve historical price candles for any supported fund symbol with the Python SDK candles method, raw or human-readable. - [Installation (Python SDK)](https://www.marketdata.app/docs/sdk/py/installation/index.md): Install the Python SDK from PyPI with pip or uv on Python 3.10 or newer, with optional pandas or other DataFrame extras for DataFrame output format. - [Markets (Python SDK)](https://www.marketdata.app/docs/sdk/py/markets/index.md): The Python SDK wraps the Market Data Markets endpoints, which report whether a market was open or closed on a given date. - [Market Status (Python SDK)](https://www.marketdata.app/docs/sdk/py/markets/status/index.md): Retrieve open or closed market status for a range of dates and a country with the Python SDK status method. - [Options (Python SDK)](https://www.marketdata.app/docs/sdk/py/options/index.md): The Python SDK wraps the Market Data Options endpoints for chains, expirations, quotes and OCC option symbol lookup. - [Option Chain (Python SDK)](https://www.marketdata.app/docs/sdk/py/options/chain/index.md): Retrieve a complete or filtered options chain for a given underlying symbol. Both real-time and historical requests are possible. - [Expirations (Python SDK)](https://www.marketdata.app/docs/sdk/py/options/expirations/index.md): Get the current or historical option expiration dates for an underlying symbol with the Python SDK expirations method. - [Lookup (Python SDK)](https://www.marketdata.app/docs/sdk/py/options/lookup/index.md): Look up the OCC option symbol for a contract from a human-readable string with the Python SDK lookup method. - [Option Quotes (Python SDK)](https://www.marketdata.app/docs/sdk/py/options/quotes/index.md): Retrieve quotes for one or more option symbols with the Python SDK quotes method, raw or in human-readable form. - [Settings (Python SDK)](https://www.marketdata.app/docs/sdk/py/settings/index.md): Configure the Python SDK output format, date format and data mode through several methods, and see which priority level wins when they disagree. - [Stocks (Python SDK)](https://www.marketdata.app/docs/sdk/py/stocks/index.md): The Python SDK wraps the Market Data Stocks endpoints, hiding the HTTP request and response handling behind ordinary methods. - [Stock Candles (Python SDK)](https://www.marketdata.app/docs/sdk/py/stocks/candles/index.md): Retrieve historical price candles for any supported stock symbol with the Python SDK candles method, raw or human-readable. - [Earnings (Python SDK)](https://www.marketdata.app/docs/sdk/py/stocks/earnings/index.md): Retrieve reported and upcoming earnings data for any supported stock symbol with the Python SDK earnings method. - [News (Python SDK)](https://www.marketdata.app/docs/sdk/py/stocks/news/index.md): Retrieve news articles for any supported stock symbol with the Python SDK news method, raw or in human-readable form. - [Prices (Python SDK)](https://www.marketdata.app/docs/sdk/py/stocks/prices/index.md): Retrieve the latest price for any supported stock symbol with the Python SDK prices method, raw or in human-readable form. - [Stock Quotes (Python SDK)](https://www.marketdata.app/docs/sdk/py/stocks/quotes/index.md): Retrieve live quotes for any supported stock symbol with the Python SDK quotes method, raw or in human-readable form. ### JavaScript - [JavaScript SDK](https://www.marketdata.app/docs/sdk/js/index.md): The Market Data JavaScript SDK brings typed responses, runtime schema validation and a functional error pattern to Node.js and TypeScript. - [Authentication (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/authentication/index.md): Set your Market Data Bearer Token for the JavaScript SDK through an environment variable, a .env file, or by passing it to the client directly. - [Client (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/client/index.md): The JavaScript SDK MarketDataClient handles requests, response parsing, retries, rate-limit tracking and logging for all five resource groups. - [Funds (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/funds/index.md): The JavaScript SDK wraps the Market Data Funds endpoints, giving typed access to the net asset value history of a mutual fund. - [Fund Candles (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/funds/candles/index.md): Fetch daily OHLC candles for a mutual fund with the JavaScript SDK candles() method on the funds resource, as decoded records, raw JSON or a CSV Blob. - [Installation (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/installation/index.md): Install the JavaScript SDK with pnpm, npm or yarn on Node.js 20 or newer, with TypeScript definitions built in and both ESM and CommonJS builds. - [Markets (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/markets/index.md): The JavaScript SDK wraps the Market Data Markets endpoints, which report whether a market was open or closed on a given date. - [Market Status (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/markets/status/index.md): Retrieve open or closed market status for a range of dates and a country with the JavaScript SDK status method. - [Options (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/options/index.md): The JavaScript SDK wraps the Market Data Options endpoints for chains, expirations, quotes and OCC symbol lookup, with typed responses. - [Option Chain (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/options/chain/index.md): Retrieve the full option chain — every call and put contract — for any supported underlying symbol, with extensive filtering options. - [Expirations (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/options/expirations/index.md): List current or historical option expiration dates for an underlying symbol with the JavaScript SDK expirations() method on the options resource. - [Lookup (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/options/lookup/index.md): Convert a human-readable option description (e.g. "AAPL 12/17/2027 250 Call") into its standard OCC option symbol. - [Option Quotes (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/options/quotes/index.md): Fetch quotes with full Greeks for one or more option contracts by OCC symbol with the JavaScript SDK quotes() method on the options resource. - [Settings (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/settings/index.md): Configure the JavaScript SDK output format, date format and data mode through several methods, and see which one wins when they disagree. - [Stocks (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/stocks/index.md): The JavaScript SDK wraps the Market Data Stocks endpoints, hiding the HTTP request and response handling behind typed methods. - [Stock Candles (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/stocks/candles/index.md): Fetch historical OHLCV stock candles with the JavaScript SDK candles() method, which splits long intraday ranges into chunks fetched concurrently. - [Earnings (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/stocks/earnings/index.md): Fetch historical and upcoming earnings for a stock with the JavaScript SDK earnings() method, returned as decoded records, raw JSON or a CSV Blob. - [News (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/stocks/news/index.md): Retrieve news articles for any supported stock symbol with the JavaScript SDK news method, in raw or human-readable form. - [Prices (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/stocks/prices/index.md): Retrieve the latest price for any supported stock symbol with the JavaScript SDK prices method, in raw or human-readable form. - [Stock Quotes (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/stocks/quotes/index.md): Fetch bid, ask, mid, last and volume for one or more stocks with the JavaScript SDK quotes() method, which returns a MarketDataPromise of records. - [Utilities (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/utilities/index.md): The JavaScript SDK Utilities methods cover the two diagnostic endpoints, service status and request header inspection. - [Headers (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/utilities/headers/index.md): Echo back the request headers your JavaScript SDK client sent, to debug a proxy, custom header plumbing, or the user agent it presents. - [API Status (JavaScript SDK)](https://www.marketdata.app/docs/sdk/js/utilities/status/index.md): Retrieve health information for every Market Data endpoint with the JavaScript SDK. No token is needed, and the SDK probes it before a retry. ### C# - [C# / .NET SDK](https://www.marketdata.app/docs/sdk/csharp/index.md): The Market Data C# and .NET SDK ships typed records, an async-first API with cancellation, automatic retries and a focused exception hierarchy. - [Authentication (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/authentication/index.md): Set your Market Data Bearer Token for the C# SDK through an environment variable, .NET user secrets, a .env file, or a direct constructor argument. - [Client (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/client/index.md): MarketDataClient is the C# SDK entry point. It groups the five resources and owns configuration, authentication, retries, timeouts and rate-limit tracking. - [Funds (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/funds/index.md): The C# SDK wraps the Market Data Funds endpoints in typed, asynchronous methods, each one accepting an optional CancellationToken. - [Fund Candles (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/funds/candles/index.md): Retrieve historical NAV candles (open/high/low/close) for a mutual fund symbol. Fund candles have no volume. - [Installation (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/installation/index.md): Install the MarketDataApp package from NuGet to use the C# SDK on net8.0 or net10.0, review its dependencies, and update it when a new release ships. - [Markets (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/markets/index.md): The C# SDK wraps the Market Data Markets endpoints in typed, asynchronous methods that report whether a market was open on a given date. - [Market Status (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/markets/status/index.md): Retrieve whether a country's stock market is open or closed on a given day, or over a range of days — the market calendar. - [Options (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/options/index.md): The C# SDK wraps the Market Data Options endpoints in typed, asynchronous methods for chains, expirations, quotes and OCC symbol lookup. - [Option Chain (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/options/chain/index.md): Retrieve a complete or filtered option chain with the C# SDK. Every contract returns a full quote with greeks, implied volatility and open interest. - [Expirations (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/options/expirations/index.md): Call GetExpirationsAsync on the C# SDK Options resource to list expiration dates for an underlying symbol, filtered by strike or historical date. - [Lookup (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/options/lookup/index.md): Turn a human-readable option description into a well-formed OCC option symbol with the C# SDK and its OptionsLookupRequest type. - [Option Quotes (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/options/quotes/index.md): Retrieve a real-time or historical quote for a specific option contract, identified by its OCC option symbol. - [Settings (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/settings/index.md): Configure the C# SDK at two levels, client options set once and request options passed per call, and see how universal parameters cascade between them. - [Stocks (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/stocks/index.md): The C# SDK wraps the Market Data Stocks endpoints in typed, asynchronous methods for candles, quotes, prices, earnings and news. - [Stock Candles (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/stocks/candles/index.md): Retrieve historical open, high, low, close and volume candles for a stock with the C# SDK StockCandlesRequest and its resolution options. - [Earnings (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/stocks/earnings/index.md): Retrieve historical and upcoming earnings reports for a stock symbol: fiscal period, report date and time, and reported vs. estimated EPS. - [News (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/stocks/news/index.md): Retrieve news articles for a stock symbol with the C# SDK, using StockNewsRequest to set the symbol and the date window you want. - [Prices (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/stocks/prices/index.md): Retrieve the latest mid price and change for one or more stock symbols with the C# SDK, a lighter payload than a full quote. - [Stock Quotes (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/stocks/quotes/index.md): Retrieve real-time bid, ask, mid, last and volume for one or more stock symbols with the C# SDK, in single or multi-symbol form. - [Utilities (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/utilities/index.md): The C# SDK Utilities methods report API service status, echo your request headers, and describe the authenticated account. None takes parameters. - [Headers (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/utilities/headers/index.md): Echo back the HTTP headers the Market Data API received, using the C# SDK, to debug what your application or a proxy actually sends. - [API Status (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/utilities/status/index.md): Retrieve the current operational status of the Market Data API services, with 30- and 90-day uptime. This is a public endpoint that works in demo mode. - [User (C# SDK)](https://www.marketdata.app/docs/sdk/csharp/utilities/user/index.md): Retrieve the authenticated account's details: request quota and options-data entitlement. Requires a token. ### PHP - [PHP SDK](https://www.marketdata.app/docs/sdk/php/index.md): Welcome to the Market Data PHP SDK documentation. This SDK allows you to easily integrate Market Data services into your PHP applications. - [Authentication (PHP SDK)](https://www.marketdata.app/docs/sdk/php/authentication/index.md): The Market Data PHP SDK requires an API token to authenticate requests. You can obtain a token from the Market Data Dashboard. - [Client (PHP SDK)](https://www.marketdata.app/docs/sdk/php/client/index.md): The Client class is the main entry point for the Market Data PHP SDK. It provides access to all API endpoints through resource properties. - [Error Handling (PHP SDK)](https://www.marketdata.app/docs/sdk/php/errors/index.md): The PHP SDK raises a hierarchy of exceptions, from MarketDataException down to the specific request and status errors you can catch individually. - [Mutual Funds (PHP SDK)](https://www.marketdata.app/docs/sdk/php/funds/index.md): The PHP SDK gives access to historical mutual fund price data through the Market Data Funds endpoints. - [Fund Candles (PHP SDK)](https://www.marketdata.app/docs/sdk/php/funds/candles/index.md): Get historical open, high, low, close and volume candles for a mutual fund with the PHP SDK candles method. - [Installation (PHP SDK)](https://www.marketdata.app/docs/sdk/php/installation/index.md): Install the PHP SDK with composer require marketdataapp/sdk-php on PHP 8.2 or newer, review its Guzzle and Carbon dependencies, and verify the setup. - [Logging (PHP SDK)](https://www.marketdata.app/docs/sdk/php/logging/index.md): The Market Data PHP SDK supports PSR-3 compatible logging for debugging and monitoring API interactions. - [Markets (PHP SDK)](https://www.marketdata.app/docs/sdk/php/markets/index.md): The PHP SDK gives access to market status and trading calendar information through the Market Data Markets endpoints. - [Market Status (PHP SDK)](https://www.marketdata.app/docs/sdk/php/markets/status/index.md): Check whether the market was, is or will be open on any trading day with the PHP SDK status() method on the markets resource, as a Statuses object. - [Options (PHP SDK)](https://www.marketdata.app/docs/sdk/php/options/index.md): PHP SDK options endpoints: option chains, expiration dates, contract quotes and OCC symbol lookup for any underlying, all via the options resource. - [Option Chain (PHP SDK)](https://www.marketdata.app/docs/sdk/php/options/chain/index.md): Get a current or historical end-of-day options chain for an underlying ticker symbol with extensive filtering options. - [Expirations (PHP SDK)](https://www.marketdata.app/docs/sdk/php/options/expirations/index.md): Get the current or historical option expiration dates for an underlying symbol with the PHP SDK expirations method. - [Lookup (PHP SDK)](https://www.marketdata.app/docs/sdk/php/options/lookup/index.md): Convert a plain-language option description such as AAPL Jan 2025 $180 Call into an OCC symbol with the PHP SDK lookup() method. - [Option Quotes (PHP SDK)](https://www.marketdata.app/docs/sdk/php/options/quotes/index.md): Fetch current or historical end-of-day quotes for one or more option contracts with the PHP SDK quotes() method on the options resource. - [Parameters (PHP SDK)](https://www.marketdata.app/docs/sdk/php/parameters/index.md): Configure the PHP SDK output format, date format and data mode through several methods, and see which priority level wins when they disagree. - [Stocks (PHP SDK)](https://www.marketdata.app/docs/sdk/php/stocks/index.md): Access real-time and historical stock market data including price candles, quotes, earnings reports, and news articles. - [Bulk Candles (PHP SDK)](https://www.marketdata.app/docs/sdk/php/stocks/bulkcandles/index.md): Retrieve one daily candle for each of many stock symbols in a single PHP SDK request, which suits a whole-market snapshot. - [Stock Candles (PHP SDK)](https://www.marketdata.app/docs/sdk/php/stocks/candles/index.md): Fetch historical OHLCV candles for a stock with the PHP SDK candles() method, which splits long date ranges into yearly chunks fetched concurrently. - [Earnings (PHP SDK)](https://www.marketdata.app/docs/sdk/php/stocks/earnings/index.md): Get historical earnings per share, or a calendar of upcoming reports, for a stock symbol with the PHP SDK earnings method. - [News (PHP SDK)](https://www.marketdata.app/docs/sdk/php/stocks/news/index.md): Retrieve news articles for a stock symbol with the PHP SDK news method, which returns a collection of Article objects. - [Prices (PHP SDK)](https://www.marketdata.app/docs/sdk/php/stocks/prices/index.md): Fetch real-time SmartMid midpoint prices for one or more stocks with the PHP SDK prices() method on the stocks resource, returned as a Prices object. - [Stock Quote (PHP SDK)](https://www.marketdata.app/docs/sdk/php/stocks/quote/index.md): Get a real-time price quote for a single stock symbol with the PHP SDK quote method, which returns one Quote object. - [Stock Quotes (PHP SDK)](https://www.marketdata.app/docs/sdk/php/stocks/quotes/index.md): Fetch real-time quotes for several stocks in one request with the PHP SDK quotes() method on the stocks resource, returned as a Quotes object. - [Utilities (PHP SDK)](https://www.marketdata.app/docs/sdk/php/utilities/index.md): The PHP SDK Utilities endpoints report API status, echo your debug headers, and show the rate limit state of your account. - [API Status (PHP SDK)](https://www.marketdata.app/docs/sdk/php/utilities/api-status/index.md): Check Market Data service status and 30 and 90 day uptime with the PHP SDK api_status() method, which caches results and needs no token. - [Headers (PHP SDK)](https://www.marketdata.app/docs/sdk/php/utilities/headers/index.md): Inspect the request headers your application sends with the PHP SDK headers() method on the utilities resource, to debug Authorization problems. - [Rate Limits (PHP SDK)](https://www.marketdata.app/docs/sdk/php/utilities/user/index.md): Retrieve the rate limit information for the authenticated Market Data account with the PHP SDK user method. ### Java - [Java SDK](https://www.marketdata.app/docs/sdk/java/index.md): The Market Data Java SDK brings typed record responses, sync and async variants of every endpoint, automatic retries and a sealed exception hierarchy. - [Authentication (Java SDK)](https://www.marketdata.app/docs/sdk/java/authentication/index.md): Set your Market Data Bearer Token for the Java SDK through an environment variable, a .env file, or by passing it straight to the client. - [Client (Java SDK)](https://www.marketdata.app/docs/sdk/java/client/index.md): MarketDataClient is the Java SDK entry point, reaching all five resources and handling parsing, retries with backoff, rate limits and logging. - [Funds (Java SDK)](https://www.marketdata.app/docs/sdk/java/funds/index.md): The Java SDK wraps the Market Data Funds endpoints in typed methods, each available in a synchronous and a CompletableFuture form. - [Fund Candles (Java SDK)](https://www.marketdata.app/docs/sdk/java/funds/candles/index.md): Retrieve a mutual fund net asset value OHLC series with the Java SDK FundCandlesRequest, choosing the resolution that you need. - [Installation (Java SDK)](https://www.marketdata.app/docs/sdk/java/installation/index.md): Add the marketdata-sdk-java artifact to Gradle or Maven to install the Java SDK on JDK 17 or newer, a single JAR with no third-party HTTP client. - [Markets (Java SDK)](https://www.marketdata.app/docs/sdk/java/markets/index.md): The Java SDK wraps the Market Data Markets endpoints in typed sync and async methods that report whether a market was open on a date. - [Market Status (Java SDK)](https://www.marketdata.app/docs/sdk/java/markets/status/index.md): Retrieve the exchange open/closed calendar — whether the market was (or will be) open on a given day. - [Options (Java SDK)](https://www.marketdata.app/docs/sdk/java/options/index.md): The Java SDK wraps the Market Data Options endpoints in typed sync and async methods for chains, expirations, quotes and symbol lookup. - [Option Chain (Java SDK)](https://www.marketdata.app/docs/sdk/java/options/chain/index.md): Retrieve a full option chain for an underlying, with a rich set of filters. The chain is where most option workflows start. - [Expirations (Java SDK)](https://www.marketdata.app/docs/sdk/java/options/expirations/index.md): List the available option expiration dates for an underlying symbol with the Java SDK and its OptionsExpirationsRequest type. - [Lookup (Java SDK)](https://www.marketdata.app/docs/sdk/java/options/lookup/index.md): Turn a human-readable option description into a well-formed OCC option symbol with the Java SDK and its OptionsLookupRequest type. - [Option Quotes (Java SDK)](https://www.marketdata.app/docs/sdk/java/options/quotes/index.md): Retrieve bid, ask, last and Greeks for option contracts by OCC symbol with the Java SDK quote and quotes methods, which fan out per symbol. - [Settings (Java SDK)](https://www.marketdata.app/docs/sdk/java/settings/index.md): Customize Java SDK requests with universal parameters for date format, data mode, columns and CSV shaping, set per resource or by environment variable. - [Stocks (Java SDK)](https://www.marketdata.app/docs/sdk/java/stocks/index.md): The Java SDK wraps the Market Data Stocks endpoints in typed sync and async methods for candles, quotes, prices, earnings and news. - [Stock Candles (Java SDK)](https://www.marketdata.app/docs/sdk/java/stocks/candles/index.md): Retrieve historical open, high, low, close and volume candles for a stock with the Java SDK StockCandlesRequest and its resolution options. - [Earnings (Java SDK)](https://www.marketdata.app/docs/sdk/java/stocks/earnings/index.md): Retrieve historical and upcoming earnings data (EPS actuals, estimates, surprises) for a stock symbol. - [News (Java SDK)](https://www.marketdata.app/docs/sdk/java/stocks/news/index.md): Retrieve news articles for a stock symbol with the Java SDK, building the query with a StockNewsRequest object. - [Prices (Java SDK)](https://www.marketdata.app/docs/sdk/java/stocks/prices/index.md): Retrieve the latest mid price and change for one or more stock symbols with the Java SDK StockPricesRequest, a lighter payload than a quote. - [Stock Quotes (Java SDK)](https://www.marketdata.app/docs/sdk/java/stocks/quotes/index.md): Retrieve real-time bid, ask, mid, last and volume for one or more stock symbols with the Java SDK, in single or multi-symbol request form. - [Utilities (Java SDK)](https://www.marketdata.app/docs/sdk/java/utilities/index.md): The Java SDK utility methods check API health, inspect your account quota and debug requests, each in a synchronous and an asynchronous form. - [Headers (Java SDK)](https://www.marketdata.app/docs/sdk/java/utilities/headers/index.md): Echo back the headers the Market Data API received with the Java SDK, to confirm your Authorization header arrived. Sensitive values are redacted. - [API Status (Java SDK)](https://www.marketdata.app/docs/sdk/java/utilities/status/index.md): Call status() on the Java SDK utilities resource for a public liveness check of Market Data API services, with an online flag and uptime percentiles. - [User (Java SDK)](https://www.marketdata.app/docs/sdk/java/utilities/user/index.md): Retrieve your Market Data account details with the Java SDK, including how much of the daily request quota is still available. ## Google Sheets reference - [Google Sheets Add-on Documentation](https://www.marketdata.app/docs/sheets/index.md): The Market Data add-on brings stock, option, index and fund data into Google Sheets through custom formulas. Start here to install and use it. - [Authentication (Sheets)](https://www.marketdata.app/docs/sheets/authentication/index.md): The Sheets add-on signs in with your Google account and links to the Market Data account that uses the same e-mail address. - [Automatic Refreshing](https://www.marketdata.app/docs/sheets/automatic-refresh/index.md): Google Workspace add-ons cannot use WebSockets, so the Sheets add-on has no streaming quotes. Use the Refresh button or a formula workaround. - [Dates and Times (Sheets)](https://www.marketdata.app/docs/sheets/dates-and-times/index.md): Market Data formulas accept several date formats, along with relative dates and option expiration dates, so you can write dates that suit your sheet. - [Market Formulas](https://www.marketdata.app/docs/sheets/markets/index.md): Google Sheets formulas for market status: check whether a stock market is open or closed on any past, present or future date. - [MARKETSTATUS](https://www.marketdata.app/docs/sheets/markets/marketstatus/index.md): The MARKETSTATUS formula answers open or closed for a stock market on one date or many, covering past, present and future trading days. - [Option Formulas](https://www.marketdata.app/docs/sheets/options/index.md): Google Sheets formulas for options: quotes, option chains, expiration dates and contract lookup, straight into a spreadsheet cell. - [OPTIONCHAIN](https://www.marketdata.app/docs/sheets/options/optionchain/index.md): The OPTIONCHAIN formula fetches a current or end-of-day historical option chain into your spreadsheet. See the syntax, samples and data availability. - [OPTIONDATA](https://www.marketdata.app/docs/sheets/options/optiondata/index.md): The OPTIONDATA formula fetches current or historical option quotes for one contract or a whole range of contracts. See the syntax, samples and limits. - [OPTIONLOOKUP](https://www.marketdata.app/docs/sheets/options/optionlookup/index.md): Look-up the OCC option symbol from text or 4 cell references containing (1) underlying symbol, (2) expiration date, (3) strike, (4) call or put. - [Sharing Your Sheet](https://www.marketdata.app/docs/sheets/sharing/index.md): Share a sheet that uses Market Data formulas. Every recipient needs the add-on installed and a Market Data account of their own. - [Stock Formulas](https://www.marketdata.app/docs/sheets/stocks/index.md): Google Sheets formulas for stocks and ETFs: real-time and historical prices, candles and earnings data, straight into a spreadsheet cell. - [EARNINGS](https://www.marketdata.app/docs/sheets/stocks/earnings/index.md): Use the EARNINGS formula in Google Sheets to fetch current or past earnings data for a stock ticker, with attributes such as eps and report date. - [STOCKDATA](https://www.marketdata.app/docs/sheets/stocks/stockdata/index.md): Fetches a current stock quote or historical stock candles from Market Data. It can also fetch a single historical candle for multiple stocks. - [Troubleshooting (Sheets)](https://www.marketdata.app/docs/sheets/troubleshooting/index.md): Most Google Sheets add-on errors come from limits Google places on add-ons. Learn the limits and how to avoid the errors they cause. - [Excessive Refreshing](https://www.marketdata.app/docs/sheets/troubleshooting/excessive-refreshing/index.md): Google's urlfetch quota makes unwanted cell refreshes costly. Learn what triggers a background refresh and how add-ons and macros add to it. - [Extensions Menu Disabled in Google Sheets](https://www.marketdata.app/docs/sheets/troubleshooting/extension-disabled/index.md): A grayed-out Extensions menu comes from viewing a fully protected sheet, not from the add-on. Switch to a tab with an editable cell to fix it. - [Mobile Devices](https://www.marketdata.app/docs/sheets/troubleshooting/mobile-devices/index.md): Google does not support add-on sidebars on mobile, but custom formulas such as STOCKDATA and OPTIONDATA still work. See the workarounds. - [Multiple Google Accounts Error](https://www.marketdata.app/docs/sheets/troubleshooting/multiple-google-accounts/index.md): Google does not support multi-login with Google Workspace Add-ons. Google's official statement on the issue: - [Permissions Not Granted During Installation](https://www.marketdata.app/docs/sheets/troubleshooting/permissions-not-granted/index.md): Formulas and menus fail when a permission was unchecked during installation. Uninstall and reinstall the add-on, accepting every permission. - [Price Differences](https://www.marketdata.app/docs/sheets/troubleshooting/price-differences/index.md): Market Data prices come from quotes while Google Finance and others use trades, so after-hours figures differ. Learn why and how to match them. - [Unknown Function Error](https://www.marketdata.app/docs/sheets/troubleshooting/unknown-function/index.md): A #NAME error means the add-on is not connected to the open spreadsheet. Re-enable it, or perform a clean installation, to restore the formulas. - [Urlfetch Errors](https://www.marketdata.app/docs/sheets/troubleshooting/urlfetch/index.md): Google caps urlfetch calls at 20,000 a day for consumer accounts and 100,000 for Workspace. Learn to cut your usage or raise the limit. - [Universal Attributes](https://www.marketdata.app/docs/sheets/universal-attributes/index.md): Universal attributes are modifiers you can pass in the attributes argument of any Market Data formula to change what the formula outputs. - [No Headers](https://www.marketdata.app/docs/sheets/universal-attributes/no-headers/index.md): Add the noheaders attribute to any Market Data Google Sheets formula, such as STOCKDATA or OPTIONDATA, to leave the header row out of the output. ## Account & Policies - [Market Data Account](https://www.marketdata.app/docs/account/index.md): Manage your Market Data account from the Customer Dashboard, and read the plan, billing, data policy and verification guides in this section. - [Billing Portal](https://www.marketdata.app/docs/account/billing-portal/index.md): Access the third-party Billing Portal to manage your Market Data subscription, update your payment method and download your invoices. - [Cancellations](https://www.marketdata.app/docs/account/cancellations/index.md): Cancel your Market Data subscription from your member page or the Billing Portal, and see what happens to unused time and how to restart later. - [Data Freshness](https://www.marketdata.app/docs/account/data-freshness/index.md): Real-time, delayed and historical are the three freshness categories Market Data applies to responses, with different cutovers for stocks and options. - [Data Policies](https://www.marketdata.app/docs/account/data-policies/index.md): Exchange agreements govern how Market Data distributes financial data. Read the policies that set your obligations and shape your access to data. - [Account Verification Policy](https://www.marketdata.app/docs/account/data-policies/account-verification/index.md): Market Data verifies the identity and employer of every paid subscriber, then certifies each account to the exchanges as professional or non-professional. - [Data Redistribution Policy](https://www.marketdata.app/docs/account/data-policies/data-redistribution/index.md): Self-service Market Data plans are personal licenses. Learn what counts as redistribution, why it is prohibited, and how commercial licensing works. - [Exchange Agreements](https://www.marketdata.app/docs/account/data-policies/exchange-agreements/index.md): Market Data is an authorized vendor for the UTP Plan, OPRA and IEX. Read the subscriber agreement each exchange requires you to accept for its data. - [Free and Trial Account Data Policy](https://www.marketdata.app/docs/account/data-policies/free-accounts/index.md): Free Forever and trial accounts receive data at least 24 hours old. Learn which exchange rules cause the delay and how to unlock real-time data. - [Professional Status Policy](https://www.marketdata.app/docs/account/data-policies/professional-status/index.md): Market Data self-service plans serve non-professional subscribers only. Learn how you self-certify your status and what a wrong classification costs. - [Single IP Address Policy](https://www.marketdata.app/docs/account/data-policies/single-ip/index.md): Exchange agreements limit each Market Data account to one IP address at a time. Learn how the rule is enforced and what multi-device access requires. - [Exchange Entitlements](https://www.marketdata.app/docs/account/entitlements/index.md): Exchange entitlements let Market Data send you IEX, UTP and OPRA data. Learn what each entitlement covers and how to sign the agreement that grants it. - [Feature Requests](https://www.marketdata.app/docs/account/feature-requests/index.md): Submit and upvote ideas on the Market Data Feature Request Board, follow the Product Roadmap, and learn how urgent requests are handled. - [Free Accounts](https://www.marketdata.app/docs/account/free-accounts/index.md): Compare the Free Forever plan and the 30-day free trial on request limits, delayed data, premium endpoint access and historical data depth. - [Invoices](https://www.marketdata.app/docs/account/invoices/index.md): There are two ways to access your invoices: through the order confirmation email you received at the time of purchase, or through the Billing Portal. - [Plan Limits](https://www.marketdata.app/docs/account/plan-limits/index.md): Every Market Data plan sets limits on credits, devices, historical data age, data type and endpoints. Compare the standard plans and their usage windows. - [Data Plans](https://www.marketdata.app/docs/account/plans/index.md): Compare the Market Data subscription plans and choose the one that matches how much data you need and how often you request it. - [Commercial Plan](https://www.marketdata.app/docs/account/plans/commercial/index.md): Real-time, historical and tick-level stock and options data with a commercial license, and no exchange licensing, exchange fees or per-user fees. - [Free Forever Plan](https://www.marketdata.app/docs/account/plans/free-forever/index.md): The Free Forever plan gives 100 API requests a day at no cost. Learn what it includes, where its limits fall, and how it compares to the paid plans. - [Prime Plan](https://www.marketdata.app/docs/account/plans/prime/index.md): The Prime plan is the largest Market Data subscription, built for traders who need very high request volumes and the deepest data access. - [Quant Plan](https://www.marketdata.app/docs/account/plans/quant/index.md): The Quant plan suits systematic traders who need extensive data access and a high daily request allowance. See its pricing, features and limits. - [Starter Trial](https://www.marketdata.app/docs/account/plans/starter-trial/index.md): Try the Starter plan free for 30 days with no credit card. See what the trial includes, what it leaves out, and how it compares to a subscription. - [Starter Plan](https://www.marketdata.app/docs/account/plans/starter/index.md): The Starter plan adds deeper historical records and premium endpoints for growing projects. See its pricing, allowances and advantages. - [Trader Trial](https://www.marketdata.app/docs/account/plans/trader-trial/index.md): Try the Trader plan free for 30 days with no credit card. See the credits it grants, the features it withholds, and how it compares to other plans. - [Trader Plan](https://www.marketdata.app/docs/account/plans/trader/index.md): The Trader plan gives high-volume users a large API credit allocation and access to the most comprehensive data sets. See its pricing and features. - [Review Us](https://www.marketdata.app/docs/account/review-us/index.md): Share your experience with Market Data. Find our social media accounts and the consumer and B2B review sites where you can leave a review. - [Troubleshooting (Account)](https://www.marketdata.app/docs/account/troubleshooting/index.md): Resolve common Market Data account problems, most of which come from incomplete information given during sign-up and account verification. - [Account Deletion](https://www.marketdata.app/docs/account/troubleshooting/account-deletion/index.md): Request permanent deletion of your Market Data account and all associated personal data, and learn what the 30-day process removes. - [Billing Portal Access](https://www.marketdata.app/docs/account/troubleshooting/billing-portal-access/index.md): Cannot sign in to the Billing Portal? Create the portal account, reset a forgotten password, and fix a reset email that never arrives. - [Disagree With Your Classification](https://www.marketdata.app/docs/account/troubleshooting/classification-dispute/index.md): Market Data classified your account as professional and you disagree. Learn how classification is decided and what to do to have it reviewed. - [Financial Industry Employer](https://www.marketdata.app/docs/account/troubleshooting/financial-employer/index.md): Working for a bank, brokerage or investment firm triggers extra verification review. Learn what documents show your actual job responsibilities. - [Incomplete Profile](https://www.marketdata.app/docs/account/troubleshooting/incomplete-profile/index.md): Missing, vague or placeholder profile fields stall account verification. Learn which employer, job title and contact details Market Data needs. - [LinkedIn Profile Issues](https://www.marketdata.app/docs/account/troubleshooting/linkedin-issues/index.md): Verification stalls when a LinkedIn profile does not confirm your employer. Learn how to fix the profile or supply alternative documentation. - [Retired or Not Working](https://www.marketdata.app/docs/account/troubleshooting/retired-or-unemployed/index.md): Exchanges require proof of employment status even when you are retired or out of work. Learn what documentation Market Data accepts as confirmation. - [Self-Employed or Business Owner](https://www.marketdata.app/docs/account/troubleshooting/self-employed/index.md): Self-employed subscribers must show what their business does. Provide a public link, answer a few questions, or send supporting documentation. - [Plan Upgrades](https://www.marketdata.app/docs/account/upgrades/index.md): Upgrade a Market Data plan and keep your unused time. See how the credit is calculated when you move between monthly and annual billing.