Create Provider source.

Hi,
I'm trying to setup a client_watchList in order to test our update implementation. As I understand you must create a providersource ( SEQ-10) in order to upload a watchlist ( SEQ-12 ... ). Or am I getting one wrong already?
I'm using postman to test the creation.
When I execute SEQ-10 I reveive a "Internal Server Error".
This is how my body looks like :
provider-source-identifier = 756654321
client_watchlist_name = PDBABBDATABASE
{
"identifier": "{{provider-source-identifier}}",
"abbreviation": "PDBABB",
"name": "{{client_watchlist_name}}",
"providerSourceStatus": "ACTIVE",
"type": {}
}
Result :
{
"timestamp": 1529933464494,
"status": 500,
"error": "Internal Server Error",
"exception": "java.net.SocketTimeoutException",
"message": "Read timed out",
"path": "/api-gateway-service-rest/api/v1/reference/providers/sources/756654321"
}
Can you please give a direction to look for?
Thanks,
Answers
-
There is no error in the payload you are sending in your request.
However, I see that you are using an incorrect path:
"path": "/api-gateway-service-rest/api/v1/reference/providers/sources/756654321"
If you are creating a new provider source identifier in pilot environment, then the path should be:
https://rms-world-check-one-api-pilot.thomsonreuters.com/v1/reference/providers/sources/756654321
Please check the path you are sending your requests to.
0 -
Thanks for your response. I noticed that the path was wrong. Yet I'm giving this :
PUT /v1/reference/providers/sources/756654321 HTTP/1.1
Host: rms-world-check-one-api.thomsonreuters.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 143
Authorization: Signature keyId="#####################################"
Date: Mon, 25 Jun 2018 13:32:59 GMT
Cache-Control: no-cache
Postman-Token: ########################{
"identifier": "756654321",
"abbreviation": "PDBABB",
"name": "PDBABBDATABASE",
"providerSourceStatus": "ACTIVE",
"type": {}
}0 -
Hi,
I believe the body you're passing is incorrect, it shouldn't contain the information provider-source-identifier = 756654321,client_watchlist_name = PDBABBDATABASE, the body must contain only the fields as shown below,
{
"identifier": "{{provider-source-identifier}}",
"abbreviation": "PDBABB",
"name": "{{client_watchlist_name}}",
"providerSourceStatus": "ACTIVE",
"type": {}
}
I tried with the same payload and I got a 204 No Content(attached screenshot for your reference).
Also to mention even if you include the fields provider-source-identifier = 756654321,client_watchlist_name = PDBABBDATABASE you would receive a 400 Bad Request and not a 500.
We will look into this and get back to you shortly!seq10.png
Regards,
Mehran Khan
API Technical ConsultantWorld-check One
0 -
Following up to know if you are still getting an error when calling the SEQ-10 API call.
If yes, kindly let us know the error code you are receiving from WC1 API when you call the API.
If you are getting a 400 bad request while sending your request, then the issue should be with the payload you are sending. Kindly note the payload being sent should be strictly JSON. You can try the below JSON and let us know if that works. I am getting a 204: No content code when I try sending this through.
{
"identifier": "756654321",
"abbreviation": "PDBABB",
"name": "PDBABBDATABASE",
"providerSourceStatus": "ACTIVE",
"type": {}
}Also, I noticed that you are sending your request to the host "rms-world-check-one-api.thomsonreuters.com" which is the URL for the production environment. If you intend to send your requests to production environment, it is the correct URL. Otherwise, you will get a 401 unauthorized error.
0 -
Thank you for following up my question!
The only thing I changed is the body as you suggested.
{
The result is now 400 Bad Request.
"identifier":"756654321",
"abbreviation":"PDBABB",
"name":"PDBABBDATABASE",
"providerSourceStatus":"ACTIVE",
"type": {}
}I changed back to the pilot environment and this gave me the same result. 400 Bad Request
Kind Regards,
0 -
There may be a mismatch between the "provider source identifier" value you are providing in the URL and the JSON payload of your request.
As you can notice, "identifier" in the JSON body and "provider source identifier" has to be the same.
The format of URL is
https://rms-world-check-one-api-pilot.thomsonreuters.com/v1/reference/providers/sources/
{{provider-source-identifier}}
and the format of JSON body to be used for the API call is
{
"identifier": "{{provider-source-identifier}}",
"abbreviation": "PDBABB",
"name": "{{client_watchlist_name}}",
"providerSourceStatus": "ACTIVE",
"type": {}
}
so you have to provide the same value in both the place. This not only adds an identifier to the provider source you are creating but also creates a new endpoint with the same value.
Kindly pass the below JSON as the body and make sure the endpoint you are hitting is
756654321.
{
"identifier":"756654321",
"abbreviation":"PDBABB",
"name":"PDBABBDATABASE",
"providerSourceStatus":"ACTIVE",
"type": {}
}If this does not fix the problem, please send me the body of the request, the complete URL you are sending your request and the error code so that I can debug this.
0 -
I placed the full url to try:
https://rms-world-check-one-api-pilot.thomsonreuters.com/v1/reference/providers/sources/{{provider-source-identifier}}
The 2 variables exist in my environment.
{
"identifier":"{{provider-source-identifier}}",
"abbreviation":"PDBABB",
"name":"{{client_watchlist_name}}",
"providerSourceStatus":"ACTIVE",
"type": {}
}the result I get when I click on the 'code' link
PUT /v1/reference/providers/sources/756654321 HTTP/1.1
Host: rms-world-check-one-api-pilot.thomsonreuters.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 139
Authorization: Signature keyId="############################""
Date: Tue, 26 Jun 2018 07:14:33 GMT
Cache-Control: no-cache
Postman-Token: ##############################{
"identifier":"756654321",
"abbreviation":"PDBABB",
"name":"PDBABBDATABASE",
"providerSourceStatus":"ACTIVE",
"type": {}
}This gives me back the internal error messsage.
{
"timestamp": 1529997630796,
"status": 500,
"error": "Internal Server Error",
"exception": "java.net.SocketTimeoutException",
"message": "Read timed out",
"path": "/api-gateway-service-rest/api/v1/reference/providers/sources/756654321"
}Ik don't know why he is using "api-gateway-service-rest/".
Thanks,
Bjorn
0 -
cusersu6068964pictures15content-type-as-json.pngcusersu6068964pictures15pre-request-script.png@bjorn.somers
Lets start this afresh:
First of all, please select the content type of your payload as JSON(application/JSON). You can do this by clicking on the body section of the Postman. Select the radio button "raw" and select "JSON(application/JSON)". Screenshot attached.
Keep the JSON body of the API call as below:
{
"identifier": "{{provider-source-identifier}}",
"abbreviation": "PDBABB",
"name": "{{client_watchlist_name}}", # As you are trying to use the value of "name",i.e, "client_watchlist_name" as a variable defined in your environment#
"providerSourceStatus": "ACTIVE",
"type": {}
}
Now define the variable "provider-source-identifier" as 756654321 and "client_watchlist_name" as "PDBABBDATABASE" at the environment level.In order to use the variable "client_watchlist_name" from the environment, you would have to paste the below code in the pre request script section of your API call. Screenshot attached.
content = content.replace("{{client_watchlist_name}}", environment["client_watchlist_name"]);
The above step is necessary to replace the value of variable "client_watchlist_name" defined in the environment.
If you do not want to do the above step, then you can pass the value of "name" directly in the JSON body as shown below:"name": "PDBABBDATABASE" (instead of "name": "{{client_watchlist_name}}" )
Now check your environment to see if the below variables and their values are exactly the same in your environment.
api-key and api-secret as usual.
gateway-host: rms-world-check-one-api-pilot.thomsonreuters.com
gateway-url: /v1/
protocol:https://
provider-source-identifier:756654321
client_watchlist_name: PDBABBDATABASE (if you want to define this variable in the environment, if not exclude this and pass it directly in the JSON body itself)The below variables will be defined automatically when you send the request, just make sure that they are selected when you are sending the request.
content
contentLength
authorisation
currentDateKindly let me know if this works for you.
0 -
Please find the screenshot of the Postman environment in the attached.cusersu6068964pictures15variables.png
0 -
Ok I selected the text format : "Application/json". I did everything as you suggested and
I am now getting a 404 not found status.
0 -
@bjorn.somers
Can you provide me the complete Postman Console logs of the request?
You can open the Postman Console by using the shortcut keys Ctrl+Alt+C. Then resend your request while Postman Console is open to record the logs of the API call.
Would you be interested in a quick webex call to resolve your query? If yes, I can write an email to bjorn.somers@delen.be to schedule a call.
0 -
Following up on this to find out if you are still getting a 404 error.
Let me know if you would like to get into a WebEx call to understand the correct way to call this API.
Alternatively, you can share the Postman Console logs so that I can investigate this further.
0 -
Thank you for the follow up. I contacted Nabil a few days ago and he said that our account is not authorized to create a provider source. So I'm waiting on his confirmation before I test again.
I'll be in touch.
0
Categories
- All Categories
- 3 Polls
- 6 AHS
- 37 Alpha
- 166 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 34 Data Model Discovery
- 697 Datastream
- 1.5K DSS
- 632 Eikon COM
- 5.2K Eikon Data APIs
- 12 Electronic Trading
- 1 Generic FIX
- 7 Local Bank Node API
- 4 Trading API
- 2.9K Elektron
- 1.4K EMA
- 256 ETA
- 563 WebSocket API
- 39 FX Venues
- 15 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 25 Messenger Bot
- 3 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 281 Open PermID
- 46 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 23 RDMS
- 2K Refinitiv Data Platform
- 748 Refinitiv Data Platform Libraries
- 4 LSEG Due Diligence
- LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 12 World-Check Customer Risk Screener
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 45 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 27 DACS Station
- 123 Open DACS
- 1.1K RFA
- 107 UPA
- 194 TREP Infrastructure
- 229 TRKD
- 918 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 96 Workspace SDK
- 11 Element Framework
- 5 Grid
- 19 World-Check Data File
- 1 Yield Book Analytics
- 48 中文论坛