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

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials

question

Upvotes
Accepted
1 0 0 0

SOAP API connection issue

Hello My client is M&G, they have below error:


We tried using private line and internet line both for below DDN. Application able to create the session but after session while rate extraction received below error-


PROD Private line SoapAPI : https://selectapi.datascope.extranet.refinitiv.biz/DataScopeApi/v1/ExtractionService.asmx


PROD Public line SoapAPI : https://selectapi.datascope.refinitiv.com/DatascopeApi/v1/ExtractionService.asmx


Able to create Session : Session id is - d7a81364-f956-4ea2-b8f7-75c910fdc7a0


Error Occurred while rate extraction :

Timestamp: 02/05/2023 19:31:44


Message: HandlingInstanceID: ea4b6a14-ae67-48e7-b125-cce4bd7a43da

An exception of type 'PruCap.Common.Business.ClientErrorException' occurred and was caught.

-------------------------------------------------------------------------------------------

05/02/2023 19:31:44

Type : PruCap.Common.Business.ClientErrorException, PruCap.Common.Business, Version=1.3.87.2, Culture=neutral, PublicKeyToken=null

Message : A security error has occurred.

Source : PruCap.Common.Business

Help link :

Error : PruCap.Common.Business.RefinitivService.ClientError

Data : System.Collections.ListDictionaryInternal

TargetSite : T Execute[T](System.Func`1[T])

HResult : -2146233088

Stack Trace : at PruCap.Common.Business.ApiUtility.Execute[T](Func`1 expression) in F:\PruCapAgent\_work\24\s\Release\PruCap.Common\PruCap.Common.Business\ApiUtility.cs:line 171

at PruCap.Common.Business.ExtractionUtility.ValidateInstruments(InstrumentValidationRequest validationRequest, ExtractionServiceClient proxy, CredentialsHeader& credentials) in F:\PruCapAgent\_work\24\s\Release\PruCap.Common\PruCap.Common.Business\ExtractionUtility.cs:line 36

at PruCap.Common.Business.CommonBusiness.GetReutersFXRates(String ScreenName, Int32 ReasonId, String ActionBy, String Action, IEnumerable`1 requestObj, CommunicationResults& communicationResults) in F:\PruCapAgent\_work\24\s\Release\PruCap.Common\PruCap.Common.Business\CommonBusiness.cs:line 972


Additional Info:


MachineName : MG22VINTZ04

TimeStamp : 02/05/2023 18:31:44

FullName : Microsoft.Practices.EnterpriseLibrary.ExceptionHandling, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35

AppDomainName : /LM/W3SVC/1/ROOT/PruCapFXWebHost-3-133275255535730733

ThreadIdentity : C001891

WindowsIdentity : MGDOMAIN\SVCTDZ05


datascope-select#productsoap-apidss-soap-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 @Lynn.chen ,

Thank you for your participation in the forum. Is the reply below satisfactory in resolving your query?

If so please can you click the 'Accept' text next to the appropriate reply? This will guide all community members who have a similar question.

Thanks,
AHS

@Lynn.chen

Hi,

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

Thanks,

AHS

1 Answer

· Write an Answer
Upvotes
Accepted
78.9k 250 52 74

@Lynn.chen

Thanks for reaching out to us.

I tested with the simple C# application and it works fine.

    class Program
    {
        static void Main(string[] args)
        {
            var credential = new CredentialsHeader();
            credential.Username = "<DSS Username>";
            credential.Password = "<DSS Password>";
            using (var proxy = new ExtractionServiceClient())
            {
                // Get API version
                var getVersionRequest = new GetVersionRequest();
                var header = new EjvServerHeader();
                var versionInfo = new VersionInfo();
                var getVersionResponse =   proxy.GetVersion(header, out versionInfo);
               
                Console.WriteLine("DSS version = " + versionInfo.DssVersion);
                Console.WriteLine("API version = " + versionInfo.ApiVersion);


                // Validate an instrument
                var identifier = new InstrumentIdentifier
                {
                    IdentifierValue = "TRI.N",
                    IdentifierType = "RIC"
                };
                var validateInstrumentsRequest =
                new ValidateInstrumentsRequest
                {
                    CredentialsHeader = credential,
                    request = new InstrumentValidationRequest
                    {
                        Identifiers = new[] { identifier }
                    }
                };


               
                var instrumentValidateRequest = new InstrumentValidationRequest();
                instrumentValidateRequest.Identifiers = new InstrumentIdentifier[] {new InstrumentIdentifier
                {
                    IdentifierValue = "BHD=",
                    IdentifierType = "RIC"
                }  };
                var instrumentValidateResponse = new InstrumentValidationResponse();
                var validateInstrumentsResponse =
                proxy.ValidateInstruments(ref credential, header, instrumentValidateRequest, out instrumentValidateResponse);
                // Re-assign credentials variable to new credentials instance
                // returned by the API for future calls
                
                Console.WriteLine("User Verified. AuthenticationToken = " +
               credential.AuthenticationToken);
                
                var instrument = instrumentValidateResponse.Instruments[0];
                Console.WriteLine("RIC = " + instrument.IdentifierValue);
                Console.WriteLine("Source = " + instrument.Source);
                Console.WriteLine("AssetID = " + instrument.AssetId);


                var eodRequest = new InstrumentExtractionRequestEndOfDay();
                eodRequest.Instruments = instrumentValidateResponse.Instruments;
                eodRequest.OutputFields = new string[] { "Mid Price","Open Price" };
                var eodResponse = new ExtractionResponse();

                proxy.Extract(ref credential, header, eodRequest, out eodResponse);

                foreach(var col in eodResponse.Columns)
                {
                    Console.WriteLine("{0}: {1}", col.Name, col.Values[0].ToString());
                }
            }
            Console.ReadLine();

        }
    }

The output is:

1683522994000.png

The problem may relate to the proxy or networking settings in the client environment.



1683522994000.png (19.0 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.

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.