Making API Requests
Environments
The different environments have their own base URLs:
Environment | Base URL | Description |
---|---|---|
Production | https://api.risk.lseg.com/data/world-check/{version} * | Returns real data |
Sandbox | https://api.risk.lseg.com/data/world-check/sandbox/{version} * | Returns synthetic data |
Each of these environments require their own set of entitlements.
API Requests
Parameters that can be set when making an API request:
Parameter | Type | API | Notes |
---|---|---|---|
limit | query | Records, References | Sets the maximum number of records in an API response page |
cursor | query | Records, References | Identifies the page to be retrieved in a multi-page response |
queryHash | header | Records, References | Required when sending a request using a cursor |
newSince | query | References | Indicate that the request is for getting Reference records published for the first time |
changedSince | query | References | Indicate that the request is for getting updated Reference records |
mode | query | Records | Sets the API mode to either records (default) or count |
Please go through the provided Postman collection to see a comprehensive ready-to-run examples of World-Check On Demand API requests.
curl --location 'https://api.refinitiv.com/risk-intel/v1/records?limit=1000' \
--header 'Content-Type: application/json' \
--header 'Authorization: ••••••' \
--data '{}'
For the Records API, the request payloads are queries containing a filter or combination of filters. Please see the section on Filters & Parameters for details.
The References API has its own set of Filters & Parameters as well.
Logging
To facilitate troubleshooting when raising a case with LSEG, please log the following information when making API requests:
- full URL, including the query parameters sent
- request header details with redacted bearer token
- request payload (when available)
- response message or snippet of the data where the issue is
meta
object details in the response (when available)
Please raise all concerns via the LSEG MyAccount Portal.
Errors
If there are entitlement errors, you will get a message similar to this:
{
"error": {
"code": "403",
"id": "d987654321-3f56-4556-967d-123abc987",
"message": "Access denied",
"status": "Forbidden",
"errors": [
{
"key": "entitlement",
"reason": "access denied. No entitlement found in the token."
}
]
}
}
It is also possible to have missing entitlements in the token:
{
"error": {
"id": "8323f4e9-3adf-4c27-8575-a1d6c7431bf9",
"code": "insufficient_scope",
"message": "access denied. Scopes required to access the resource: [trapi.risk-intel.wcod.records.read]. Missing scopes: [trapi.risk-intel.wcod.records.read]",
"status": "Forbidden"
}
}
These errors could be due to the following:
- incorrect scope in the token request
- no license or incorrect license assigned to the service account