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

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials

question

Upvotes
Accepted
16 2 1 4

Commodities Screener in DataScope Select

Hello, Can you please share a sample code on how we can pull Commodities in the API, replicating how a Commodities Screener will do in the GUI?

dss-rest-api#productcommodities
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
Accepted
78.6k 248 52 74

@darshpatel

It is a criteria list. You can use the DSS REST API to create criteria lists.

You can use the following request to create that Commodities screener.

{
    "ListName": "CommodityCriteria1",
    "Type": "Commodities",
    "PreferredIdentifierType": "Ric",
    "Filters": [
                {
                    "@odata.type": "#DataScope.Select.Api.Extractions.SubjectLists.MultiValueFilter",
                    "Name": "Underlying Asset",
                    "Op": "In",
                    "Values": [
                        "Natural Gas"
                    ]
                },
                {
                    "@odata.type": "#DataScope.Select.Api.Extractions.SubjectLists.BooleanFilter",
                    "Name": "Active Status",
                    "Value": "Yes"
                },
                {
                    "@odata.type": "#DataScope.Select.Api.Extractions.SubjectLists.BooleanFilter",
                    "Name": "Basis Gap Adjusted",
                    "Value": "All"
                }
            ]
}

Send it to the Extractions/CriteriaListCreate endpoint with the HTTP POST method. This request will create a criteria list named CommodityCriteria1.

The response will contain a ListId which can be used in on-demand extractions.

{
    "@odata.context": "https://selectapi.datascope.refinitiv.com/RestApi/v1/$metadata#CriteriaLists/$entity",
    "ListId": "0x085e7b6245988fd7",
    "Name": "CommodityCriteria1",
    "Type": "Commodities",
    "PreferredIdentifierType": "Ric",
    "Created": "2023-02-22T02:02:27.000Z",
    "Modified": "2023-02-22T02:02:27.000Z",
    "Filters": [
...
]
}

For example, you can use the criteria list ID with the TermsAndConditionsExtractionRequest.

{
    "ExtractionRequest": {
        "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.TermsAndConditionsExtractionRequest",
        "ContentFieldNames": [
            "RIC",
            "Asset Type"
        ],
        "IdentifierList": {
            "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.InstrumentCriteriaListIdentifierList",
            "CriteriaListId": "0x085e7b6245988fd7"
        }
    }
}

Otherwise, you can specify the criteria filters directly in on-demand extractions.

{
    "ExtractionRequest": {
        "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.TermsAndConditionsExtractionRequest",
        "ContentFieldNames": [
            "RIC",
            "Asset Type"
        ],
         "IdentifierList": {
            "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.InstrumentCriteriaList",
            "Filters": [
                {
                    "@odata.type": "#DataScope.Select.Api.Extractions.SubjectLists.MultiValueFilter",
                    "Name": "Underlying Asset",
                    "Op": "In",
                    "Values": [
                        "Natural Gas"
                    ]
                },
                {
                    "@odata.type": "#DataScope.Select.Api.Extractions.SubjectLists.BooleanFilter",
                    "Name": "Active Status",
                    "Value": "Yes"
                },
                {
                    "@odata.type": "#DataScope.Select.Api.Extractions.SubjectLists.BooleanFilter",
                    "Name": "Basis Gap Adjusted",
                    "Value": "All"
                }
            ],
            "PreferredIdentifierType": "Ric"
        }
    }
}

However, this list contains more than 300,000 results which can exceed the extract limits defined on this page.

For more information regarding the criteria list endpoints, please refer to the DSS REST API Reference Tree.

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
10.2k 18 6 9
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
16 2 1 4

hi @jason.ramchandani01 , thank you. However these are for instrument list. Commodities screener have criteria list. Hence i am not sure if it is the same thing?

1677008811558.png


1677008811558.png (413.5 KiB)
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
16 2 1 4

thank you @Jirapongse , I will let client know the same

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.