Product Documentation

Fixes and Changes in SKFS 4.17.0

 

#

Explanation

RFE-287

Response for errors returned by SKFS updated to provide more information as well as a consistent format.

As mentioned in the "Upcoming Changes" section in the v4.16 release notes, all SKFS errors have been converted to JSON objects similar to a successful response from the SKFS.

SKFS v4.16 and older:

SKFS responds to webservice requests in two (2) different ways:
    • When the service request is successful, a JSON Object is returned as a String that can be reassembled into a first-class object using an appropriate library. An example follows:

      {

       "Response": "Successfully processed registration response",
       "responseCode": "FIDO-MSG-0004",
       "pkixValidated": false,
       "skfsVersion": "4.15.1",
       "skfsFQDN": "example.strongkey.com",
       "TXID": "1-1-75-1711751776586"
      }


  • However, when the service request fails, the response is a simple String message that cannot be converted into a JSON object, as follows. This forces applications to deal with two different response types:

    FIDO-ERR-1501: SKFS Domain does not exist: skfs did= 2


SKFS v4.17 and newer:

In the next release of the SKFS (4.17), the success response will have the 'Response' key changed to 'response' and 'TXID' changed to 'txid':

{
 "response": "Successfully processed registration response",
 "responseCode": "FIDO-MSG-0004",
 "pkixValidated": false,
 "skfsVersion": "4.15.1",
 "skfsFQDN": "example.strongkey.com",
 "txid": "1-1-75-1711751776586"

}


The error response will be made consistent by sending a JSON Object as a String that can be reassembled back into a first-class JSON object, as follows:

{
 "response": "SKFS Domain does not exist: skfs did= 2",
 "responseCode": "FIDO-ERR-1501",
 "skfsVersion": "4.15.1",
 "skfsFQDN": "example.strongkey.com",
 "txid": "1-1-75-1711751776586"
}

 

RFE-296

Modify API Responses to camel case.

All SKFS API responses are json objects returning relevant information based on the endpoint. Some of the Json keys within the response were not consistent and we have made all the Json keys within the response object follow camel casing. The two objects that were changed are highlighted below:


{ Response: ... , TXID: "..." }

Have been updated to:

{
    response: ... ,
    txid: "..."
}