Create Collateral Widget

Customers or their vendor partners may use the following steps to create a collateral widget and have it featured with other third party applications within Sageworks.

High-Level Walkthrough

Use the list of endpoints available via the Sageworks API to:

  1. Define the name label and available statuses for a collateral widget button
  2. Generate any necessary user-defined fields
  3. Define the name and label for fields sent via the API
  4. Define which fields are required to submit an order
  5. Generate the widget

Verify which fields and formats exist in Sageworks

The following code is a snippet response from the GET /v1/collateral-widgets/available-fields call and lists all the collateral fields which exist in Sageworks. It is recommended to utilize these fields as much as possible before generating user defined fields. Leveraging these will auto populate the values from directly on the collateral.

[
  {
    "fieldName": "Abundance of Caution"
  },
  {
    "fieldName": "Account/LOC Number"
  },
  {
    "fieldName": "AccurateProductType"
  },
  {
    "fieldName": "Agricultural Purpose"
  },
  {
    "fieldName": "Aircraft Engine Operating Hours"
  },
  {
    "fieldName": "Aircraft Make"
  },
  {
    "fieldName": "Aircraft Model"
  },
  {
    "fieldName": "Aircraft Number"
  },
  {
    "fieldName": "Aircraft Registration Number"
  },
  {
    "fieldName": "Aircraft Serial Number"
  },
  {
    "fieldName": "Aircraft Year"
  },
  {
    "fieldName": "Appraisal Date"
  },
  {
    "fieldName": "Beneficiary"
  },
  {
    "fieldName": "Body/Style"
  },
  {
    "fieldName": "Capitalization Rate"
  },
  {
    "fieldName": "CBRA/OPA Designation Date"
  },
  {
    "fieldName": "Census Tract"
  },
  {
    "fieldName": "Collateral Breakout"
  },
  {
    "fieldName": "Collateral Code"
  },
  {
    "fieldName": "Collateral Description"
  },
  {
    "fieldName": "Comments"
  },
  {
    "fieldName": "Condition"
  },
  {
    "fieldName": "Construction Method"
  },
  {
    "fieldName": "Co-Owners"
  },
  {
    "fieldName": "County Code"
  },
  {
    "fieldName": "Current Value"
  },
  {
    "fieldName": "CUSIP"
  },
  {
    "fieldName": "Date Appraisal Requested"
  },
  {
    "fieldName": "Discount Rate"
  },
  {
    "fieldName": "Dwelling"
  },
  {
    "fieldName": "Equipment Manufacturer"
  },
  {
    "fieldName": "Equipment Operating Hours"
  },
  {
    "fieldName": "Equipment Operating Hours"
  },
  {
    "fieldName": "Equipment Serial Number"
  },
  {
    "fieldName": "Equipment Year"
  },
  {
    "fieldName": "Example UDF"
  },
  {
    "fieldName": "Existing or Proposed"
  },
  {
    "fieldName": "Existing Property"
  },
  {
    "fieldName": "Flood Determination Date"
  },
  {
    "fieldName": "Flood Insurance Amount"
  },
  {
    "fieldName": "Flood Program Type"
  },
  {
    "fieldName": "Flood Zone"
  },
  {
    "fieldName": "Flood Zone Code"
  },
  {
    "fieldName": "Gov't Contract Date"
  },
  {
    "fieldName": "Gov't Contract Number"
  },
  {
    "fieldName": "Held By"
  },
  {
    "fieldName": "HMDA Appraisal Current Value"
  },
  {
    "fieldName": "Home Port"
  },
  {
    "fieldName": "Insured By"
  },
  {
    "fieldName": "Is Ready For Appraisal"
  },
  {
    "fieldName": "Issued By"
  },
  {
    "fieldName": "Issuer"
  },
  {
    "fieldName": "Issuer Address"
  },
  {
    "fieldName": "Issuer City"
  },
  {
    "fieldName": "Issuer State"
  },
  {
    "fieldName": "Issuer Zip Code"
  },
  {
    "fieldName": "Land Improvements"
  },
  {
    "fieldName": "Latitude"
  },
  {
    "fieldName": "Legal Description"
  },
  {
    "fieldName": "Letter of Credit Date"
  },
  {
    "fieldName": "Life Insurance Maximum"
  },
  {
    "fieldName": "Life Insurance Policy Number"
  },
  {
    "fieldName": "Loan Proceeds Will Purchase Collateral"
  },
  {
    "fieldName": "Location of Document"
  },
  {
    "fieldName": "LOMC"
  },
  {
    "fieldName": "LOMC Case Number"
  },
  {
    "fieldName": "LOMC Date"
  },
  {
    "fieldName": "Longitude"
  },
  {
    "fieldName": "Make"
  },
  {
    "fieldName": "Manufactured Home Condition"
  },
  {
    "fieldName": "Manufactured Home Land Property Interest"
  },
  {
    "fieldName": "Manufactured Home Type"
  },
  {
    "fieldName": "Manufacturer"
  },
  {
    "fieldName": "Median Household Income"
  },
  {
    "fieldName": "Metropolitan Division"
  },
  {
    "fieldName": "Metropolitan Division Code"
  },
  {
    "fieldName": "Mileage"
  },
  {
    "fieldName": "Mileage"
  },
  {
    "fieldName": "Model"
  },
  {
    "fieldName": "Mortgage Amount"
  },
  {
    "fieldName": "MSA"
  },
  {
    "fieldName": "Multifamily Affordable Units"
  },
  {
    "fieldName": "NFIP Community Name"
  },
  {
    "fieldName": "NFIP Community Number"
  },
  {
    "fieldName": "NFIP Map Number"
  },
  {
    "fieldName": "NFIP Map Panel Date"
  },
  {
    "fieldName": "NFIP Property Description"
  },
  {
    "fieldName": "Occupancy Type"
  },
  {
    "fieldName": "Occupancy Type from 1008 Transmittal"
  },
  {
    "fieldName": "Original Value"
  },
  {
    "fieldName": "Owner Occupied"
  },
  {
    "fieldName": "Percent Interest Owned"
  },
  {
    "fieldName": "Pledged By"
  },
  {
    "fieldName": "Possessory Type"
  },
  {
    "fieldName": "Property Address"
  },
  {
    "fieldName": "Property City"
  },
  {
    "fieldName": "Property County"
  },
  {
    "fieldName": "Property State"
  },
  {
    "fieldName": "Property Tax ID"
  },
  {
    "fieldName": "Property Zip"
  },
  {
    "fieldName": "Proposed Adjustment"
  },
  {
    "fieldName": "Proposed Comments"
  },
  {
    "fieldName": "Proposed Current Value"
  },
  {
    "fieldName": "Protected Area"
  },
  {
    "fieldName": "Registration Number"
  },
  {
    "fieldName": "Second Home"
  },
  {
    "fieldName": "Serial Number"
  },
  {
    "fieldName": "Shares"
  },
  {
    "fieldName": "Source"
  },
  {
    "fieldName": "Special Flood Hazard Area"
  },
  {
    "fieldName": "State Code"
  },
  {
    "fieldName": "Test"
  },
  {
    "fieldName": "testap"
  },
  {
    "fieldName": "Titled"
  },
  {
    "fieldName": "Total Units"
  },
  {
    "fieldName": "Tract Code"
  },
  {
    "fieldName": "Type"
  },
  {
    "fieldName": "UCC Expiration Date"
  },
  {
    "fieldName": "UCC Filing Date"
  },
  {
    "fieldName": "UCC Filing Number"
  },
  {
    "fieldName": "UCC Filing State"
  },
  {
    "fieldName": "Value"
  },
  {
    "fieldName": "Vehicle State"
  },
  {
    "fieldName": "Vessel Engine Operating Hours"
  },
  {
    "fieldName": "Vessel Length (ft)"
  },
  {
    "fieldName": "Vessel Make"
  },
  {
    "fieldName": "Vessel Model"
  },
  {
    "fieldName": "Vessel Name"
  },
  {
    "fieldName": "Vessel Number"
  },
  {
    "fieldName": "Vessel Propulsion Type"
  },
  {
    "fieldName": "Vessel Year"
  },
  {
    "fieldName": "VIN"
  },
  {
    "fieldName": "Year"
  }
]

Generate any necessary user defined fields

POST /v1/collaterals/properties/add is used to generate user-defined fields. It creates a single user-defined field at a time so will need to be leveraged once for each field created. See example of a request body below:

{  
  "id": 0,  
  "name": "Test",  
  "dataFieldInputFormat": "text",  
  "dataFieldFormatString": "textLength200"  
}

Please note that we support many different field types that will provide corresponding UI validation. Field types supported include:

text [value is text],
numeric [value is a pure number],
currency [value represents currency],
date [value is a date],
percent [value is a percentage],
dropdown [value is a dropdown],
radio [value is a radio button group],
label [value is a label],
divider [value represents a divider]

Dropdowns are a particularly useful field type as you can control the selections of the user. See below on how to create a dropdown user defined field with valid options.

POST https://api.sageworks.com/v1/collaterals/properties/add
{
  "name": "Property Type13",
  "dataFieldInputFormat": "dropdown",
  "dataFieldFormatString": "textLength200",
  "options": 
[
{ "label":"dataFieldLabel" },
{ "label":"dataFieldLabel2" }
]
}

Create the collateral widget

POST /v1/collateral-widgets is used to generate the collateral widget. Please take note of the ID generated as this will be used for retrieving the order information during usage. See examples of body and requests below:

{
  "id": 0,
  "name": "Collateral Order",
  "requiredFields": [
  {"fieldName": "Property Address"},
	{"fieldName": "Property City"},
	{"fieldName": "Property County"},
	{"fieldName": "Property State"},
	{"fieldName": "Property Tax ID"},
	{"fieldName": "Property Zip"}

  ],
  "nonRequiredFields": [
    {
      "fieldName": "Condition"
    }
  ],
  "statusUserDefinedFieldName": "string"
}
{
  "id": 5,
  "name": "Collateral Order",
  "requiredFields": [
    {
      "fieldName": "Property Address"
    },
    {
      "fieldName": "Property City"
    },
    {
      "fieldName": "Property County"
    },
    {
      "fieldName": "Property State"
    },
    {
      "fieldName": "Property Tax ID"
    },
    {
      "fieldName": "Property Zip"
    },
    {
      "fieldName": "Collateral Description"
    },
    {
      "fieldName": "Lien"
    },
    {
      "fieldName": "Borrower"
    }
  ],
  "nonRequiredFields": [
    {
      "fieldName": "Condition"
    }
  ],
  "statusUserDefinedFieldName": "Collateral Order Status"
}
Example Widget using the body above

Example Widget using the body above