# May 2026 | Market Data

> The Market Data JavaScript and TypeScript SDK is released, with full type declarations, runtime validation and a runnable charting examples library.

Source: https://www.marketdata.app/changelog/may-2026/

---

(image: The Market Data May Update banner: an isometric illustration of three figures around a giant magnifying glass held over a document, beside the words MAY UPDATE)

-   [Changelog](/changelog/)

# May 2026

The Market Data JavaScript and TypeScript SDK is released, with full type declarations, runtime validation and a runnable charting examples library.

-   Last updated May 29, 2026

## JAVASCRIPT SDK RELEASED

We’re thrilled to announce the official release of the [Market Data JavaScript SDK](/docs/sdk/js/), built to make working with U.S. market data faster, safer, and more efficient for JavaScript and TypeScript developers.

This SDK is designed to reduce integration time and operational friction, so you can focus on research, analysis, and production systems instead of plumbing.

## Key Features

**Type safety and runtime validation:** [the JavaScript SDK](/docs/sdk/js/) ships full TypeScript declarations for every endpoint, parameter, and response shape — so autocomplete works out of the box in any modern editor. Every request and response is also validated at runtime via Zod, so malformed payloads surface as typed errors instead of silent corruption.

-   **Flexible output formats**: Choose the format that best fits your workflow: typed objects, human-readable strings, raw JSON, or CSV. Chainable `.save(path)` and `.blob()` helpers let you stream a CSV straight to disk or get a Blob without any extra plumbing.
-   **Predictable error handling**: A structured error hierarchy — `ValidationError`, `RateLimitError`, `RequestError`, `AuthenticationError`, and more — lets you catch exactly what you mean with a normal `try`/`catch`. Every public method returns a familiar throwing Promise, so the SDK feels idiomatic alongside `fetch` and any other JS library you already use.
-   **Built-in reliability**: Automatic retries with exponential backoff handle transient API issues transparently. The SDK also checks API status before retrying to ensure efficient and reliable data access.
-   **Automatic rate-limit awareness**: The SDK tracks usage and validates requests to help prevent rate-limit violations before they occur, reducing unexpected interruptions.
-   **Full options coverage**: Pull full chains with greeks and IV, look up OCC symbols from human-readable input, or filter by expiration, strike range, delta, bid-ask spread, open interest, and volume directly at request time — no custom post-processing required.
-   **Flexible date inputs**: Pass JavaScript `Date` objects, ISO strings, or Unix timestamps. All inputs are normalized automatically, and long historical ranges are split into chunks and fetched concurrently behind the scenes.
-   **Examples library**: Runnable charting examples for [Lightweight Charts](https://www.tradingview.com/lightweight-charts/), [Apache ECharts](https://echarts.apache.org/), [Chart.js](https://www.chartjs.org/), [Plotly](https://plotly.com/javascript/), and [Highcharts Stock](https://www.highcharts.com/products/stock/) — plus a live options-chain monitor terminal — so you can clone, install, and have working charts in under a minute. Our team will continue expanding this library over time.
-   **Production-ready by design**: Dual ESM and CommonJS builds (the same import works for `import` and `require`), comprehensive validation, structured logging, and a global concurrency pool that prevents accidental hammering on large fan-outs — suitable for research notebooks and live trading systems alike.
-   **Best-in-class documentation**: Comprehensive, precise documentation covers every endpoint, parameter, and return type, with clear explanations and examples. It’s continuously maintained alongside the SDK to stay accurate as the platform evolves.

## 2 Minute Tutorial

Getting started with the Market Data API is easy. Use the [Swagger user interface](https://www.youtube.com/watch?v=tOIZi7s6nqQ) to begin testing your requests and see how easy it is to get up and running.
