Hpml Module - Response

The Data object for a response from the Hpml module is defined below, in the order the fields are returned:

The Data object for a response from the Hpml module is defined below, in the order the fields and objects are returned:

🟥 Data

TypeRequired
Objectyes

Fields: 🔸IsHpml, 🔸Apor, 🔸Spread, 🔸Difference, 🔸Date

Objects: 🟥 Errors[], 🟥 Warnings[]


🔸 Data.IsHpml

TypeRequiredValues
Booleanyestrue, false

The value of this field will either be true or false, and will indicated whether or not the submitted loan is a higher priced mortgage loan.

🔸 Data.Apor

TypeRequiredValues
StringyesNumber in [-99.999...600]

The value of this field contains the Average Prime Offer Rate for the submitted loan. This value is retrieved from the appropriate APOR file (fixed or adjustable).

🔸 Data.Spread

TypeRequiredValues
StringyesNumber in [-99.999...600]

The spread value depends upon the type of lien. First-lien loans have a spread of 1.5, and subordinate-lien loans have a spread of 3.5.

🔸 Data.Difference

TypeRequiredValues
StringyesNumber in [-99.999...600]

The value of this field returns the difference between the submitted Regulation Z APR, and the APOR plus the spread. If the difference is greater than or equal to zero (which means that the Reg. Z APR is greater than or equal to the APOR plus spread), then the loan is a HPML.

🔸 Data.Date

TypeRequiredValues
StringyesYYYY-MM-DD

The Date field contains the date on which the APOR data was effective. As an example, if the lock in date was 2009-12-22, then the date returned should be 2009-12-21 (if the APOR rates files are up to date).


🟥 Data.Errors[]

TypeRequired
Array of Stringyes

The Errors[] field contains an array of Strings which describe any errors encountered while handling the request. If the length of the Errors[] Array is zero (0), then the module processed the request successfully, and the Data object can be further processed by the calling application for the returned data.

On the other hand, if the length of the Errors[] Array is greater than zero (0), then this indicates that an error condition has been detected, and the calling application should not process the respons Data object further. In this case, the contents of the Errors[] array will describe the error(s) encountered.

Typical errors include the omission of 🟥 required fields, invalid field values, etc.


🟥 Data.Warnings[]

TypeRequired
Array of Stringyes

The Warnings[] field contains an array of Strings which describe any warnings generated by the module handling the request. The most common warnings returned by modules inform the calling application that the module does not recognize a specified field (which may help to isolate a field name spelling error in the calling application's code). Note that field names which start with "//" will bre treated as comment fields by the SCE, and no warnings will be generated for these unrecognized fields.

Example - Request and response illustrating warnings when passing unrecognized fields:

{
  "Module" : "Hpml",
  "Data" : {
    "//" : "This is a comment.",
    "Hello" : "Friend!",
    "How" : "are you?"
  }
}
{
    "Result": 200,
    "Module": "Hpml",
    "Data": {
        "Errors": [
            "Data.LienType (String) not found.",
            "Data.IsJumbo (Boolean) not found.",
            "Data.RateType (StringFloat) not found.",
            "Data.LockInDate (StringDate) not found.",
            "Data.RegZApr (StringFloat) not found.",
            "Data.TermInYears (StringInt) not found."
        ],
        "Warnings": [
            "Request field Data.Hello (String) not recognized.",
            "Request field Data.How (String) not recognized."
        ]
    }
}