Any merchant that has a setup such that all calls to Cybersource REST APIs should be routed via a cloud-based infrastructure would benefit from these new changes made to Cybersource REST SDKs.
Currently, in the Cybersource REST API SDKs, a new instance of RestClient is created after each Authentication header creation call & initialized with merchantConfig.HostName.
That removes the possibility to set the baseAddress in the RestClient with values different than apitest.cybersource.com or api.cybersoure.com. There should also be a possibility to override few of the authentication headers like Host to specify custom hostname and port number of the server to which the request is being sent. That would allow to call Cybersource API via cloud-based API management platforms (e.g., Azure Api Management)
Cybersouce REST API SDK updates have been made to no longer ignore the basePath configuration sent in the constructor. Additional changes have been made to honor the custom headers set by the caller and not ignore them when SDK processes the incoming request.
What Do I Have To Do?
Use any of the Cybersource REST Client SDKs and
- Set ApiClient.BasePath to your cloud infrastructure URL (e.g., Azure API Management URL)
- Set any additional headers needed in Configuration.DefaultHeader collection
Which version will support this