Applies to Request or response handling Rule description
HTTP headers Request
  • Spurious / extra request headers will be ignored / not processed and not result in an error
  • Headers are case insensitive
Query string parameters Request
  • Spurious / extra parameters will be ignored / not processed and not result in an error
  • Parameters are case sensitive (both keys and values)
Payloads for all POST and PUT operations Request
  • Any default property (as defined in the Swagger definition) will be given the default value by the register (no need to supply in the request)
  • Read only fields if supplied are ignored and will not generate an error
    If extra properties and objects (compliant with the Swagger definition / schema for the operation) are supplied that are NOT required / or used, they will be IGNORED (even if they contain errors).
  • Default values will be applied to new records as per swagger or BSC specification.
  • JSON will be checked for well formedness
  • Swagger compliance is enforced.  Properties supplied not defined in the schema will result in an error.  Case sensitivity applies
  • Mandatory fields / objects (and their nested mandatory fields and objects) are checked and an error will result if not supplied according to required or conditional rules
  • Where multiple validation rules apply for a property (that is mandatory and missing or the field value is incorrect) the error array may return multiple errors. One errorCode in the array will always be specific to the error.
Payloads for PUT operations Request
  • Mandatory fields / objects (and their nested mandatory fields and objects) are currently OPTIONAL. If they are not supplied, then the stored values will not be modified. Please note mandatory fields WILL be enforced for PUT operations in a later build.
  • If an optional property (ie. feld value) is missing in the PUT - it will be REMOVED (where no default is defined) or DEFAULTED to the default value
  • If an optional object (ie. element that contains other objects and/or fields) is missing in the PUT - it will NOT be changed.
All operations Response
  • All fields part of an object’s definition in the swagger WILL be included in the response, whether or not they were provided in the request or have a value. Fields without a value (regardless of data type) will be returned with an empty string value.