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

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials

question

Upvotes
Accepted
3 0 0 1

DSS API using Python to extract price history is giving error message.

{"error":{"message":"Malformed request payload: For the property name \"StartDate\" in the JSON request the value could not be parsed successfully. Please check the casing or spelling of the property."}}


Extraction request below:

from collections import OrderedDict import requests import json url = "https://selectapi.datascope.refinitiv.com/RestApi/v1/Extractions/ExtractWithNotes" header3 = { 'Prefer': 'respond-async', 'Content-Type': 'application/json; odata=minimalmetadata', 'Authorization': 'Token'+'MyToken' }listIdentifiers = [{"Identifier":"SARON.S","IdentifierType":"Ric"}] fromdate = "2023-03-05" todate = "2023-03-09" odataType = "#DataScope.Select.Api.Extractions.ExtractionRequests.PriceHistoryExtractionRequest" condition = {"StartDate": fromdate + "T00:00:00.000Z","EndDate": todate + "T00:00:00.000Z"} listFields = ["Trade Date","Currency Code","Universal Close Price"] payload = {"ExtractionRequest":OrderedDict([("@odata.type", odataType),("ContentFieldNames", listFields),("IdentifierList", OrderedDict([("@odata.type", "#DataScope.Select.Api.Extractions.ExtractionRequests.InstrumentIdentifierList"),("InstrumentIdentifiers", listIdentifiers)])),("Condition",condition)])} response = requests.post(url, data=json.dumps(payload), headers=header3, timeout=15) print(response.text)

python#technologydss-rest-apipython api
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.

Hi @bopanna.nc ,


Thank you for your participation in the forum.

If the reply below is satisfactory in resolving your query please click the 'Accept' text next to the most appropriate reply. This will guide all community members who have a similar question.

Otherwise please post again offering further insight into your question.

Thanks,

AHS

Hi,

Please be informed that a reply has been verified as correct in answering the question, and marked as such.

Thanks,

AHS

Upvotes
Accepted
10.2k 18 6 9

@bopanna.nc Thanks for your question - could you try changing the following from:

condition = {"StartDate": fromdate + "T00:00:00.000Z","EndDate": todate + "T00:00:00.000Z"}

to:

condition = {"QueryStartDate": fromdate + "T00:00:00.000Z","QueryEndDate": todate + "T00:00:00.000Z"}

I took this from the following example which had the JSON request as follows:

'''
{
  "ExtractionRequest": {
    "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.PriceHistoryExtractionRequest",
    "ContentFieldNames": [
      "File Code",
      "RIC",
      "Trade Date",
      "Last Trade Price"
      "Universal Close Price"
      "Alternate Close Price",
      "High Price"
      "Low Price",
      "Open Price",
      "Volume Weighted Average Price",
      "Turnover",
      "Volume",
      "Accumulated Volume Unscaled",
      "Bid Price",
      "Asset Type",
      "Quote ID",
      "Bid Yield",
      "Exchange Code",
      "Currency Code"          
    ],
    "IdentifierList": {
      "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.InstrumentIdentifierList",  
      "InstrumentIdentifiers": [
      { "Identifier": "438516AC0", "IdentifierType": "Cusip" },
      { "Identifier": "ALVG.DE", "IdentifierType": "Ric" },
      { "Identifier": "IBM.N", "IdentifierType": "Ric" }
      ]
    },
    "Condition": {
      "AdjustedPrices": true,
      "QueryStartDate": "2006-05-24T00:00:00.000Z",
      "QueryEndDate": "2006-05-31T00:00:00.000Z"
    }
  }
}
'''

I hope this can help.

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.

Upvotes
3 0 0 1

@jason.ramchandani01 Thank you for the assistance...!


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.

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.