canonical: https://jentic.com/apis/nasdaq.com/nasdaq

# Nasdaq Data Link API (formerly Quandl)

Jentic publishes the only available OpenAPI specification for Nasdaq Data Link API (formerly Quandl), keeping it validated and agent-ready. Nasdaq Data Link provides financial, economic, and alternative datasets through a unified interface. The API exposes seven endpoints for working with two primary resource shapes: time-series 'datasets' (databases composed of dated rows, e.g., daily closing prices) and 'datatables' (relational tables for richer queries). Agents can fetch data in JSON, CSV, or XML by setting the {return_format} path segment, apply column filters and date ranges, request transformations, or download an entire database in bulk.

## For AI agents

Query thousands of financial, economic, and alternative datasets from Nasdaq Data Link as time series or relational tables. API key in query.

## Scope

Does not handle order execution, brokerage account access, or live tick streaming - use for curated time-series and datatable data lookups only.

## Capabilities

- Fetch a time-series dataset's data and metadata in one call by database and dataset code
- Apply built-in transformations (rdiff, normalize, cumul) and column filters to time-series queries
- Download an entire time-series database in bulk as a single zipped file
- Query relational datatables with column filters, sort orders, and pagination via cursor
- Retrieve database-level metadata such as available datasets, refresh frequency, and licence
- Choose response format per request through the {return_format} path segment (.json, .csv, .xml)

## Use cases

### Quant Research Data Pipeline

Quant researchers ingest equities, futures, FX, and economic time series into a feature store before training models. Nasdaq Data Link's GET `/datasets/{database_code}/{dataset_code}/data` endpoint returns the full price history with optional transformations and date range filters in one call, while GET `/databases/{database_code}/data` lets the team grab an entire database in bulk overnight to avoid per-dataset round-trips.

Example prompt: Call GET `/datasets/WIKI/AAPL/data.json` with start_date=2010-01-01 and transform=rdiff to retrieve the daily return series for Apple.

### Datatable Filtering for Alternative Data

Alternative data publishers expose their products through Nasdaq Data Link 'datatables', a relational shape that supports column filters and pagination. GET `/datatables/{datatable_code}.{return_format}` accepts query parameters like ticker and date, returning only the rows matching the filter, which is critical when a single datatable contains millions of rows and the analyst only needs one symbol's data.

Example prompt: Call GET `/datatables/ZACKS/FC.csv` with qopts.columns=ticker,per_end_date,sales and ticker=AAPL to pull Apple's quarterly fundamentals.

### Economic Indicator Reporting

Reporting and dashboard apps surface macroeconomic indicators sourced through Nasdaq Data Link such as Federal Reserve series, Eurostat data, or IMF statistics. Calling GET `/datasets/{database_code}/{dataset_code}.json` returns both data and metadata for a single chart, simplifying widgets that need title, frequency, and last-refresh date alongside the values.

Example prompt: Call GET `/datasets/FRED/GDP.json` and render the most recent 8 quarters of GDP values plus the dataset's refresh frequency.

### AI Agent Financial Data Lookup

An AI analyst invoked through Jentic answers questions like 'what's the year-over-year change in unemployment rate?' by searching for the matching Nasdaq Data Link operation, executing it with the right dataset code and a transform parameter, and returning the structured response. Jentic stores the api_key in the vault, so the agent never sees the raw value.

Example prompt: Search Jentic for 'fetch time series dataset', load GET `/datasets/{database_code}/{dataset_code}/data.{return_format}`, and execute it with database_code=FRED, dataset_code=UNRATE, transform=rdiff, return_format='.json'.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/datasets/{database_code}/{dataset_code}/data.{return_format}` | Retrieve time-series data for a dataset |
| GET | `/datasets/{database_code}/{dataset_code}/metadata.{return_format}` | Retrieve metadata for a dataset |
| GET | `/datasets/{database_code}/{dataset_code}.{return_format}` | Retrieve data and metadata together |
| GET | `/databases/{database_code}.{return_format}` | Retrieve database-level metadata |
| GET | `/databases/{database_code}/data` | Bulk download an entire time-series database |
| GET | `/datatables/{datatable_code}.{return_format}` | Query a datatable with filters and pagination |
| GET | `/datatables/{datatable_code}/metadata.{return_format}` | Retrieve metadata for a datatable |

## Key resources

- **Time Series** — Dataset and database resources covering historical financial and economic time series
- **Databases** — Bulk download and metadata for an entire time-series database
- **Tables** — Datatable resources supporting column filtering, sorting, and pagination

## Why Jentic

- **Setup:** Wiring Nasdaq Data Link by hand means learning its query-parameter api_key auth on the data.nasdaq.com host, remembering whether a resource is a dataset or a datatable, and handling errors yourself. Through Jentic you install once, import the Nasdaq Data Link API from the API Directory, store the api_key once, and your agent calls it.
- **Permission scoping:** Nasdaq Data Link puts the database and dataset codes in the URL path (`/datasets/{database_code}/{dataset_code}/...`), so a rule can pin your agent to specific data resources. Every operation here is a read, so the agent fetches time-series and datatable data and nothing that changes state.
- **Credential handling:** Your Nasdaq Data Link api_key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'fetch a time-series dataset' or 'query a Nasdaq datatable', and Jentic returns the matching operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Alpha Vantage API** — Free and premium financial market data with technical indicators
- **Polygon.io API** — Realtime and historical equities, options, FX, and crypto market data
- **Finnhub API** — Stock fundamentals, news, and alternative data API
- **Tiingo API** — End-of-day prices, fundamentals, and news

## FAQ

### Why is there no official OpenAPI spec for Nasdaq Data Link?

Nasdaq Data Link does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Nasdaq Data Link API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Nasdaq Data Link API use?

Nasdaq Data Link uses an API key passed as the api_key query string parameter on every request. When called through Jentic the key is encrypted in your Jentic One instance and added to outbound requests transparently; the raw api_key never enters the agent's context.

### What is the difference between datasets and datatables in the Nasdaq Data Link API?

Datasets are time-series resources keyed by date - for example FRED/UNRATE returns one row per observation date. Datatables are relational resources that accept column filters, sort orders, and cursor-based pagination - for example ZACKS/FC stores fundamentals across many tickers and periods. Use the /datasets/* endpoints for time series and /datatables/* endpoints for relational queries.

### Can I download an entire Nasdaq Data Link database at once?

Yes. GET `/databases/{database_code}/data` returns a zipped CSV of every dataset in the database, which is the recommended pattern for refreshing a local copy nightly. For a single dataset, GET `/datasets/{database_code}/{dataset_code}/data.{return_format}` is faster and supports date and column filters.

### What are the rate limits for the Nasdaq Data Link API?

Free tier accounts are limited to 50 calls per day and 20 per 10 minutes; premium subscribers receive 5,000 per 10 minutes and 720,000 per day. Rate limits are returned in response headers, and the spec describes 429 responses when limits are exceeded. Backoff and cache for production agents.

### How do I retrieve a specific time series through Jentic?

Run jentic.search('fetch time series dataset'), load the GET `/datasets/{database_code}/{dataset_code}/data.{return_format}` operation, then jentic.execute with database_code, dataset_code, return_format='.json', and any optional start_date, end_date, or transform values. Jentic injects the api_key from the vault and returns the parsed time series.

### Can I limit what my agent is allowed to do with the Nasdaq Data Link API?

Yes. Because you run Jentic One yourself, your own rules decide which Nasdaq Data Link operations and credentials the agent may use. Every operation here is read-only, so the agent can fetch time-series datasets and datatables but nothing that changes state, and because the database and dataset codes sit in the URL path (`/datasets/{database_code}/{dataset_code}/...`), a rule can pin the agent to specific databases or datatables. You can also scope which stored api_key it is permitted to send.
