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

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials

question

Upvotes
Accepted
7 2 0 0

Can't get Close Price from REST API

Hello. We really need your help!

We are trying to switch from the old SOAP API to the new REST API. But we encounter several problems. Here is one of them:

There are two identical requests. In one, we ask for the value of the Universal Close Price, and in the second, simply the Close Price. We get an adequate response to the first request, but the second one returns an error number 400.

Request #1:

{"ExtractionRequest":{"@odata.type":"#ThomsonReuters.Dss.Api.Extractions.ExtractionRequests.PriceHistoryExtractionRequest","ContentFieldNames":["Universal Close Price"],"IdentifierList":{"@odata.type":"#ThomsonReuters.Dss.Api.Extractions.ExtractionRequests.InstrumentIdentifierList","InstrumentIdentifiers":[{"Identifier":"MSFT.O","IdentifierType":"Ric"}],"ValidationOptions":null,"UseUserPreferencesForValidationOptions":false},"Condition":{"ReportDateRangeType":"Range","QueryStartDate":"2017-08-30T00:00:00.000Z","QueryEndDate":"2017-08-30T23:59:59.000Z"}}}

Response #1:

[{"IdentifierType":"Ric","Identifier":"MSFT.O","Universal Close Price":74.01}]

Request #2:

{"ExtractionRequest":{"@odata.type":"#ThomsonReuters.Dss.Api.Extractions.ExtractionRequests.PriceHistoryExtractionRequest","ContentFieldNames":["Close Price"],"IdentifierList":{"@odata.type":"#ThomsonReuters.Dss.Api.Extractions.ExtractionRequests.InstrumentIdentifierList","InstrumentIdentifiers":[{"Identifier":"MSFT.O","IdentifierType":"Ric"}],"ValidationOptions":null,"UseUserPreferencesForValidationOptions":false},"Condition":{"ReportDateRangeType":"Range","QueryStartDate":"2017-08-30T00:00:00.000Z","QueryEndDate":"2017-08-30T23:59:59.000Z"}}}

Response #2:

400 Bad Request

In the old SOAP API, we received the values of these fields without problems. No hints were found in the documentation. Tell me what is our mistake?

dss-rest-apidatascope-selectdssrest-apipricing
icon clock
10 |1500

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

1 Answer

Upvotes
Accepted
23k 22 9 14

Hello @akhmed.turabov,

The template requested, PriceHistoryExtractionRequest, does not support "Close Price" as is, it supports several different Close Prices, such as " Universal Close Price" and "Official Close Price", but not "Close Price".

Different fields are available from different templates.

One way to verify if a field is supported by a template, is to request the complete list of fields that are supported by that template, with brief descriptions, with request:

{
                {protocol}}{
                {host}}{
                {api}}Extractions/GetValidContentFieldTypes(ReportTemplateType=ThomsonReuters.Dss.Api.Extractions.ReportTemplates.ReportTemplateTypes'PriceHistory') 

It will come back with the complete list of fields such as:

... 
{
            "Code": "ET2.Official Bid",
            "Name": "Official Bid",
            "Description": "Official Bid price posted at end of pit or ring trading period.",
            "FormatType": "Number",
            "FieldGroup": " "
        },
        {
            "Code": "ET2.Official Close Price",
            "Name": "Official Close Price",
            "Description": "The official closing price from Exchange.",
            "FormatType": "Number",
            "FieldGroup": " "
        },
...

I would suggest using free tool Postman for HTTP REST testing and our collection for Postman already has this request, step-by-step detailed explanation can be found in REST API Tutorial 4: On Demand price history extraction.

Another way is to lookup the available fields in DSS Data Content Guide.

Hope this helps

icon clock
10 |1500

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

Click below to post an Idea Post Idea