For a deeper look into our DataScope Select REST API, look into:

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials

question

Upvotes
Accepted
23 9 14 23

How to get full holdings for a fund via DSS Rest API

We use the following example request given in the file below

extraction_request.txt

We expected that we get the instruments where the fund is invested in together with some additional information like the value in the fund invested amount.

Unfortunately this seems to be the wrong request type since we just get information about the fund itself and not its holdings.

Could you give us an example request for getting the holdings of a fund?

dss-rest-apidatascope-selectdssfunds
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Hello @rahul.deshmukh,

Thank you for your participation in the forum.

Is the reply below satisfactory in resolving your query? If yes please click the 'Accept' text next to the reply. This will guide all community members who have a similar question. Otherwise please post again offering further insight into your question.

Thanks,

-AHS

Upvotes
Accepted
22k 58 14 21

Here is the query for ISIN

{
  "ExtractionRequest": {
    "@odata.type": "#ThomsonReuters.Dss.Api.Extractions.ExtractionRequests.FundAllocationExtractionRequest",
    "ContentFieldNames": [
      "Asset SubType Description",
      "Asset Type",
      "Asset Type Description",
      "CUSIP",
      "Identifier Segment Source",
      "Identifier Segment Source Description",
      "Instrument ID",
      "Instrument ID Type",
      "Security Description",
      "Allocation Asset Type",
      "Allocation CUSIP",
      "Allocation Date",
      "Allocation Item",
      "Allocation OrgID",
      "Allocation Percentage",
      "Allocation Rank",
      "Market Value Currency",
      "Market Value Held",
      "RIC",
      "FundSERVAC",
      "FundSERVBE",
      "FundSERVDM",
      "FundSERVDO",
      "FundSERVFE",
      "FundSERVIS",
      "FundSERVLL",
      "FundSERVNL",
      "FundSERVVS"
    ],
    "IdentifierList": {
      "@odata.type": "#ThomsonReuters.Dss.Api.Extractions.ExtractionRequests.InstrumentIdentifierList",
      "InstrumentIdentifiers": [{
          "Identifier": "DE0005317333",
          "IdentifierType": "Isin"
        }
      ],
      "ValidationOptions": null,
      "UseUserPreferencesForValidationOptions": false
    },
    "Condition": {
      "FundAllocationTypes": [
        "Asset",
        "Currency",
        "FullHoldings",
        "IndustrySector",
        "InvestmentCountry",
        "TopTenHoldings"
      ]
    }
  }
}

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Hallo Gurpreet,


Currently i am facing performance issue as i am trying to process http request one per ISIN.

Do you have an example where we can process multiple ISIN per http request ? Also any other example may be using threading or other approach to improve performance ?


Thanks and regards,

Rahul Deshmukh

PS: Please ask new questions in a new post. It helps us track responses.

You can specify more than one instrument in a single request, since InstrumentIdentifiers is a JSON array. Example:

"InstrumentIdentifiers": [{
    "Identifier": "SHV.O",
    "IdentifierType": "Ric"
  }, {
    "Identifier": "00209tab1",
    "IdentifierType": "Cusip"
  }, {
    "Identifier": "IBM.N",
    "IdentifierType": "Ric"
  }, {
    "Identifier": "US4592001014",
    "IdentifierType": "Isin"
  }, {
    "Identifier": "B1YW440",
    "IdentifierType": "Sedol"
  }
]
Upvotes
32.2k 40 11 20

Hello @rahul.deshmukh,

I think the request for fund holdings is the right request. However, the RIC identifier has to be a Lipper RIC in order to request funds holdings info, and I expect one has to be entitled for the relevant content set. This request works for me:

{
 "ExtractionRequest": {
        "@odata.type": "#ThomsonReuters.Dss.Api.Extractions.ExtractionRequests.FundAllocationExtractionRequest",
        "ContentFieldNames": [
            "Asset SubType Description",
            "Asset Type",
            "Asset Type Description",
            "CUSIP",
            "Identifier Segment Source",
            "Identifier Segment Source Description",
            "Instrument ID",
            "Instrument ID Type",
            "Security Description",
            "Allocation Asset Type",
            "Allocation CUSIP",
            "Allocation Date",
            "Allocation Item",
            "Allocation OrgID",
            "Allocation Percentage",
            "Allocation Rank",
            "Market Value Currency",
            "Market Value Held",
            "RIC"
        ],
        "IdentifierList": {
            "@odata.type": "#ThomsonReuters.Dss.Api.Extractions.ExtractionRequests.InstrumentIdentifierList",
            "InstrumentIdentifiers": [
                {
                    "Identifier": "LP68233262",
                    "IdentifierType": "Ric"
                }
            ],
            "ValidationOptions": null,
            "UseUserPreferencesForValidationOptions": false
        },
        "Condition": {
            "FundAllocationTypes": [
                "Currency",
                "FullHoldings"
            ]
        }
    }
    }

However, for a definitive answer on how to request specific content correctly, in terms of identifiers needed, for a customer, a much better resource would be Refinitiv Content Helpdesk Online , select DSS + "I need help finding content".



icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

extraction_request_ISIN.txtHello @Zoya.Farberov,

Unfortunately this request doesn't provide the identifier information for ISIN which we actually need to get the funds holdings info. When i tried to provide "IdentifierType":ISIN then i am getting the response as 'Bad Request'

Can you please provide the request type where Identifier should be ISIN to get the funds holdings info?

Thanks.

Upvotes
22k 58 14 21

Try this:

{
            "ExtractionRequest": {
                "@odata.type": "#ThomsonReuters.Dss.Api.Extractions.ExtractionRequests.FundAllocationExtractionRequest",
                "ContentFieldNames": [
                    "Asset SubType Description",
                    "Asset Type",
                    "Asset Type Description",
                    "CUSIP",
                    "Identifier Segment Source",
                    "Identifier Segment Source Description",
                    "Instrument ID",
                    "Instrument ID Type",
                    "Security Description",
                    "Allocation Asset Type",
                    "Allocation CUSIP",
                    "Allocation Date",
                    "Allocation Item",
                    "Allocation OrgID",
                    "Allocation Percentage",
                    "Allocation Rank",
                    "Market Value Currency",
                    "Market Value Held",
                    "RIC",
                    "FundSERVAC",
                    "FundSERVBE",
                    "FundSERVDM",
                    "FundSERVDO",
                    "FundSERVFE",
                    "FundSERVIS",
                    "FundSERVLL",
                    "FundSERVNL",
                    "FundSERVVS"
                ],
                "IdentifierList": {
                    "@odata.type": "#ThomsonReuters.Dss.Api.Extractions.ExtractionRequests.InstrumentIdentifierList",
                    "InstrumentIdentifiers": [{
                            "Identifier": "LP60054179",
                            "IdentifierType": "Ric"
                        }
                    ],
                    "ValidationOptions": null,
                    "UseUserPreferencesForValidationOptions": false
                },
                "Condition": {
                    "FundAllocationTypes": [
                        "Asset",
                        "Currency",
                        "FullHoldings",
                        "IndustrySector",
                        "InvestmentCountry",
                        "TopTenHoldings"
                    ]
                }
            }
        }

result:

Mutual Funds,MTLF,Mutual Funds,,F,Mutual Fund,LP60054179,RIC,HannoverscheMaxInvest,,,2020/04/30,CASH,,3.53,2,,,LP60054179,,,,,,,,,
Mutual Funds,MTLF,Mutual Funds,,F,Mutual Fund,LP60054179,RIC,HannoverscheMaxInvest,,,2020/04/30,FRANCE,,35.11,1,,,LP60054179,,,,,,,,,
Mutual Funds,MTLF,Mutual Funds,,F,Mutual Fund,LP60054179,RIC,HannoverscheMaxInvest,,,2020/04/30,GERMANY,,27.86,2,,,LP60054179,,,,,,,,,
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Hallo Gurpreet,

Unfortunately this request doesn't provide the identifier information for ISIN which we actually need to get the funds holdings info. When i tried to provide "IdentifierType":ISIN then i am getting the response as 'Bad Request'

Can you please provide the request type where Identifier should be ISIN to get the funds holdings info?

Regards.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.