---
title: "FAQs"
description: "Answers to common questions about the Investment Details Feed API: requests, views, jobs and results, delta loads and portfolio holdings."
url: "https://developer-beta.morningstar.com/investment-details-feed-api/faqs"
image: "https://developer-beta.morningstar.com/_og/d/c_Ocean.takumi,title_~RkFRcyB8IEludmVzdG1lbnQgRGV0YWlscyBGZWVkIEFQSQ,description_~QW5zd2VycyB0byBjb21tb24gcXVlc3Rpb25zIGFib3V0IHRoZSBJbnZlc3RtZW50IERldGFpbHMgRmVlZCBBUEk6IHJlcXVlc3RzLCB2aWV3cywgam9icyBhbmQgcmVzdWx0cywgZGVsdGEgbG9hZHMgYW5kIHBvcnRmb2xpbyBob2xkaW5ncy4,props_eyJ0aGVtZSI6eyJtb2RlIjoibGlnaHQiLCJjb2xvcnMiOnsicHJpbWFyeSI6IiMwMDAwMDAifX19,p_Ii9pbnZlc3RtZW50LWRldGFpbHMtZmVlZC1hcGkvZmFxcyI,s_mwxJSWO3UhMKCT3J.png"
---

-   [APIs](https://developer-beta.morningstar.com/apis)
-   [API Catalog](https://developer-beta.morningstar.com/api-catalog)
-   [API Assistant MCP Server](https://developer-beta.morningstar.com/api-assistant-mcp)
-   [Guides](https://developer-beta.morningstar.com/api-guides)
-   [Trial Access](https://developer-beta.morningstar.com/trial-access)

# Investment Details Feed API

Get detailed profile data for up to 250 investments in a single request, drawing on Morningstar's fundamental, reference, and historical data..

# FAQs

[View Markdown](https://developer-beta.morningstar.com/investment-details-feed-api/faqs.md)[Download Markdown](https://developer-beta.morningstar.com/investment-details-feed-api/faqs.md)

Answers to common questions about the Investment Details Feed API. If a request fails or returns unexpected results, see [Troubleshooting](https://developer-beta.morningstar.com/investment-details-feed-api/troubleshooting).

## [General](#general)

What does the Investment Details Feed API do?

It returns detailed investment data in bulk. You request up to 250 investments and up to 3 views in one request, the API processes the request asynchronously, and you retrieve the results when they are ready. It is designed for scheduled loads into databases, analytics platforms and reports. See [Core Concepts](https://developer-beta.morningstar.com/investment-details-feed-api/core-concepts).

---

How is it different from the Investment Details API and the Investment List API?

The [Investment Details API](https://developer-beta.morningstar.com/investment-details-api) returns data for one investment at a time, in real time, so it suits rendering a page. The [Investment List API](https://developer-beta.morningstar.com/investment-list-api) returns a flat, tabular list for up to 100 investments, so it suits grids and watchlists. The Investment Details Feed API is for loading detailed data for many investments in bulk.

---

What endpoints does the API have?

The API has six endpoints.

| Endpoint                                                               | Purpose                                                             |
| :--------------------------------------------------------------------- | :------------------------------------------------------------------ |
| POST /direct-web-services/v1/investments                               | Submits a request for investment details.                           |
| GET /direct-web-services/v1/investments/result/{resultId}              | Retrieves the results of a request.                                 |
| GET /direct-web-services/v1/investments/views                          | Lists the views you can request.                                    |
| GET /direct-web-services/v1/investments/views/{viewId}                 | Returns the definition of a view.                                   |
| POST /direct-web-services/v1/investments/deltas                        | Retrieves the dates on which data changed.                          |
| POST /direct-web-services/v1/investments/{id}/portfolio-holdings-dates | Retrieves the dates for which portfolio holdings data is available. |

Use the base URL for your region.

-   Americas: `https://www.us-api.morningstar.com`
-   APAC: `https://www.apac-api.morningstar.com`
-   EMEA: `https://www.emea-api.morningstar.com`

---

Is the API asynchronous?

Yes, for requests for investment details. You send the `Prefer: respond-async` header, and the API responds with `202 Accepted` and a job ID. The results are collected afterwards. The utility endpoints, such as listing views and retrieving delta dates, return their answers immediately. See [Investment Details](https://developer-beta.morningstar.com/investment-details-feed-api/investment-details).

---

Do I need a licence?

Yes. Access to data is entitled at package level, so you can request the views in the packages you are licensed for. See [Before You Start](https://developer-beta.morningstar.com/investment-details-feed-api/getting-started). To check whether self-serve trial access is available, see [Trial Accounts](https://developer-beta.morningstar.com/trial-access).

---

## [Authentication](#authentication)

How do I authenticate?

Request a token from `POST /token/oauth`, then send it on every other request in the `Authorization` header as `Bearer {token}`. See [Authentication](https://developer-beta.morningstar.com/api-authentication).

---

How long does an access token last?

A token is valid for 60 minutes and can be reused across requests during that time. Long-running jobs must request a new token before it expires, and retry any request that returns `401 Unauthorized`.

---

## [Requests](#requests)

How many investments can I request at once?

From 1 to 250 per request. To load a larger universe, split it across several requests and merge the results.

---

How many views can I request at once?

From 1 to 3. Some views must be the only view in a request: `full-look-through-portfolio-holdings`, `full-portfolio-holdings-month-end-or-quarter-end-most-recent` and `equity-financials`. See [Core Concepts](https://developer-beta.morningstar.com/investment-details-feed-api/core-concepts#request-limits).

---

Why is the Prefer header required?

It tells the API to process the request asynchronously. It must be set to `respond-async`. If you leave it out, or set it to another value, the request fails.

---

Which identifiers can I use?

Morningstar Performance ID (the default), ISIN, fund code, Morningstar Security ID, CUSIP, Morningstar ID, trading symbol and industry code. Set `idType` to say which one an `id` is, and add lookup details if an identifier can match more than one investment.

---

How do I find the views I can request?

Call the list views endpoint. It returns the views you are entitled to, with their view IDs. The view definition endpoint shows the data points in a view. See [Get View IDs](https://developer-beta.morningstar.com/investment-details-feed-api/get-view-ids).

---

Which packages need extra information?

A few packages take additional inputs, have their own limits, or need a supporting resource. Each has a package-specific guide. See [Package-Specific Guides](https://developer-beta.morningstar.com/investment-details-feed-api/package-specific-guides) and for more information.

---

How do I request time series data?

Set `startDate` and `endDate` in the request, as `yyyy-MM-dd`. The range can be up to 60 months. Dates apply only to views that return time series data.

---

How do I set the language, country and region?

Use the request-level properties `languageId` (the default is `ENG`), `countryId` (the default is `USA`) and `regionId` (for style box breakpoints, from `1` to `7`). The view definition shows which data points depend on language or country.

---

## [Jobs and Results](#jobs-and-results)

How do I know when my request is complete?

The `202` response contains a link for checking the job. Call it until the job is complete. See [Retrieve Investment Details](https://developer-beta.morningstar.com/investment-details-feed-api/retrieve-results#check-the-job).

---

How do I retrieve the results?

When the job is complete, call the results endpoint with the result ID: `GET /direct-web-services/v1/investments/result/{resultId}`. See [Retrieve Investment Details](https://developer-beta.morningstar.com/investment-details-feed-api/retrieve-results#retrieve-the-results).

---

How are the results structured?

The response has an `investments` array and a `metadata` object. Each investment has an `identifiers` object, and data groups named for the data they hold. A group is an object when there is one record, and an array when there can be several. Some values are returned as an object with a `value` and a `code`. See [Retrieve Investment Details](https://developer-beta.morningstar.com/investment-details-feed-api/retrieve-results#read-the-response).

---

Does a successful response mean every investment returned data?

No. Investments or data points that couldn't be returned are reported in `metadata.messages`, so always check it. See [Retrieve Investment Details](https://developer-beta.morningstar.com/investment-details-feed-api/retrieve-results#check-metadata-and-warnings).

---

What if the response payload is too large?

The API returns `413.investmentDetailsAsync.005`. Split the request into smaller requests, with fewer investments or a shorter date range.

---

What is the requestId for?

It is a unique identifier for the request. It is returned in the `metadata` of responses and in error responses. Include it if you contact support.

---

## [Delta Loads](#delta-loads)

What is a delta load?

A delta load retrieves only the data that has changed since a time that you give, so that you can keep your data current without reloading everything. See [Delta Loads](https://developer-beta.morningstar.com/investment-details-feed-api/delta-loads).

---

How do I request a delta load?

Send the normal request, and add `deltaStartTime`, in UTC. Set `includeUnchangedData` to `true` to get each changed row complete, or `false` to get only the fields that changed. See [Request Delta Load](https://developer-beta.morningstar.com/investment-details-feed-api/request-delta-load).

---

Which views support delta loads?

Delta loads and delta dates currently apply to the `equity-financials` view only.

---

How do I find out what changed?

Use the delta dates endpoint. It returns the data points that changed, and the dates, without retrieving the data. See [Retrieve Delta Dates](https://developer-beta.morningstar.com/investment-details-feed-api/retrieve-delta-dates).

---

## [Portfolio Holdings](#portfolio-holdings)

What are portfolio dates?

They are the dates for which portfolio holdings data is available. Retrieve them with the portfolio holdings dates endpoint, and use one as the `portfolioDate` of a request for `full-look-through-portfolio-holdings` or `full-portfolio-holdings-month-end-or-quarter-end-most-recent`. If you don't pass `portfolioDate`, the most recent data is returned. See [Full Look Through Portfolio Holdings](https://developer-beta.morningstar.com/investment-details-feed-api/full-look-through-portfolio-holdings).

---