22.1 Major Release

New and Updated APIs

V3 Loan: iLAD Support

iLAD Import Now Supported
Support for importing iLAD loan files has been added with this release. The following APIs have been updated to support iLAD imports:

  • Loan: Converter APIref – Use this API import an FNMA/MISMO contract from which to create a new loan.
  • Loan: Importer API – Use this API to update an existing loan with data in an iLAD loan file.
    As part of this update, the mediaType parameter for both APIs has been updated to accept ILAD as a value. When mediaType=ILAD, the request payload will accept iLAD loan data.

Usage Notes

  • Only users assigned with the Export iLAD option in Encompass Persona settings can export iLAD (MISMO 3.4) loans from the Pipeline.
  • Use the content type, application/vnd.elliemae.mismo34+xml for both MISMO 3.4 AUS and iLAD.

Workflows
The workflow is the same as the current MISMO 3.4 workflows.

To Create a New Loan from an iLAD File:

  1. Convert the iLAD file to the V3 Loan Contract using the V3 Converter API.
    POST /v3/converter/loans
    Request body: attached iLAD file
    Content Type: application/vnd.elliemae.mismo34+xml

  2. Using the response from Step 1, call the V3 Create Loan API to create the loan.
    POST /v3/loans
    Request body: attached response from step 1

  3. Update the loan using V1 or V3 Update Loan API.

To Update an Existing Loan by Importing an iLAD File:

  1. Update the loan using the V3 Importer API.
    POST /v3/loans/{loanId}/importer
    Request body: attached iLAD file
    Content Type: application/vnd.elliemae.mismo34+xml

  2. Update the loan using V1 or V3 Update Loan API.

Additional Resources

V3 Loan: Schema

New Query Parameters Available for V3 Virtual Fields API
The EBS Virtual Fields API now supports the ability to filter virtual fields in the response by InstanceSpecifierType or virtualFieldTypes. This will allow the caller to pull all virtual fields based on instance specifiers. This will provide virtual fields defined for both standard and enhanced conditions as well as other types of virtual fields.

  • New instanceSpecifierType Query Parameter
    The InstanceSpecifierType query parameter filters the Virtual Fields list based on a single instance specifier type.

    GET /v3/schemas/loan/virtualFields?instanceSpecifierType={field instance specifier type}
    

    Only one value can be passed at a time. Possible values are: None, Index, Role, Milestone, Document, UnderwritingCondition, PostClosingCondition, MilestoneTask, CustomAlert, PreliminaryCondition, MilestoneTemplate, EnhancedCondition, EnhancedConditionSingleAttribute, EnhancedConditionByOption

  • New virtualFieldTypes Query Parameter
    The virtualFieldTypes query parameter filters the Virtual Fields list based on one or more virtual field types. virtualFieldTypes can be passed in a comma separated value format.

    GET /v3/schemas/loan/virtualFields?virtualFieldTypes={virtual field types}
    

    Possible values are: None, Borrower, CoMortgager, ComplianceTest, Documents, LoanAssociate, Milestones, PostClosingConditions, RateLocks, UnderwritingConditions, PreliminaryConditions, MilestoneTask, InterimServicing, LastDisclosedGFE, LastDisclosedLE, LastDisclosedCD, LastDisclosedTIL, eDisclosureTracking, eDisclosureTracking2015, Alerts, DocEngine, MilestoneTemplate, AusTracking,BidTapePricing, EnhancedConditionExtension, EnhancedCondition, EnhancedConditionDefinitions

EBSP-29806

V3 Loan: Registration Logs

New API Available for Retrieving Details for a Specified Registration Log
Registration logs provide validation that a loan has been registered with an investor. They contain details about the most current registration activity for a loan. Encompass automatically generates a registration log when a loan is registered. This API is used to retrieve details for a single registration log for a loan that is registered outside of Encompass (i.e. via LO Connect). The RegistrationLogContract is returned in the response.

 GET  /v3/loans/{loanId}/registrationLogs/{logId}

EBSP-34891

V3 Settings: Loan Templates

New Query Parameter Available for GET Loan Template List APIs
The V3 GET Loan Templates APIs now support the ability to include the template description on demand. The new includeAdditionalInfo query parameter is now available for these APIs to control whether the template descriptions will be displayed. Setting includeAdditionalInfo to True allows client applications to display the template description in their UI if needed. The default value is False.

The includeAdditionalInfo query parameter is available for the following endpoints:

  • GET /v3/settings/templates/loanTemplateSet/folders
  • GET /v3/settings/templates/loanProgram/folders
  • GET /v3/settings/templates/closingCost/folders
  • GET /v3/settings/templates/settlementServiceProvider/folders
  • GET /v3/settings/templates/affiliatedBusinessArrangement/folders
    EBSP-34464

V3 Settings: External Users

New APIs Available for Creating and Deleting External TPO Users
The External Users API set has been expanded to include the PATCH method for managing external users. Previously, external TPO users could only be created and deleted through the SOAP APIs or Encompass > Settings > External Company Setup.

  • Create External Users
    The External Users API now allows client applications to create new external users. When a user is created as active through this API, they are enabled to login to the TPO Connect portal and manage loans. With this initial release, this API supports the creation of one external user per call.

    PATCH  /v3/externalUsers?orgid={org id}&action=add&View=entity
    
  • Delete External Users
    The External Users API now allows client applications to delete external users. When a user is deleted through this API, the user gets deleted from Encompass. The user will no longer appear in the UI and will be removed from the database as well. With this initial release, this API supports the deletion of one external user per call.

     PATCH  /v3/externalUsers?orgid={org id}&action=delete&View=entity
    

Usage Notes:

  • The caller must have persona access to create or delete an external user.
  • With this initial release, when deleting an external user, there is no validation for loan or contact reassignment.
  • Any loans or contacts assigned to the user must be reassigned manually.

📘

New SDK Migration Guide Available for External Users

The following new guide is available: SDK Migration: Encompass SDK to REST APIs.

V3 Settings: Personas

New Settings API Available for Retrieving Personas
The Settings: Personas API provides the ability to retrieve a list of all available personas on the Encompass instance or details for a specified persona.

  • Get a List of Personas API
    Returns the list of all personas on the Encompass instance. Details include basic information, such as persona ID and name, whether default access is enabled, whether the persona is internal and/or external, and displayOrder in the list of personas.

    GET  /v3/settings/personas
    
  • Get Persona Details API
    Returns details for a specified persona. Details include the persona name, whether default access is enabled, whether it is an internal and/or external persona, and the access rights enabled for the persona.

    GET /v3/settings/personas/{id}
    

V3 eFolder: Attachment

Attachment APIs Capture Additional AIQ Sync Attributes
The eFolder Create Attachment and Update Attachment APIs have been enhanced to support new AIQ metadata attributes for lenders using AIQ.

Users of the V3 attachment APIs will have access to the aiqMetadata object with the following APIs:

  • PUT /v3/loans/{loanId}/attachments/{attachmentId}
  • PATCH /v3/loans/{loanId}/attachments?action=update
  • GET /v3/loans/{loanId}/attachments/{attachmentId}
  • GET /v3/loans/{loanId}/attachments
  • POST /v3/loans/{loanId}/attachmentsFilter
AIQ Metadata Contract Attributes:Description
Id
string
AIQ Document GUID.
type
string
AIQ Resource Type. For example, Document|MailItem.
status
string
AIQ Document Status.
friendlyId
string
AIQ Document Friendly ID ("ID").
comments
string
AIQ Document Comments ("Additional Info").
tags
array of strings
AIQ Document Tags Collection.
lastUpdated AIQ Processing Last Update ("Last Updated") (UTC Format). For example, 2021-11-24T16:32:25.744Z.

EBSP-34976

V1 Loan: Freddie Mac Loan Product Advisor (LPA)

Loan Assignment APIs
The following new APIs for Freddie Mac Loan Product Advisor (LPA) loans are being added with this release:

  • Assign LPA Loan API – Use this API to assign LPA loans to third parties such as loan sellers and brokers
  • Release LPA Loan API – Use this API to release LPA loans from third parties, such as loan sellers and brokers, so that the loan is no longer assigned to them and can be reassigned to other users
    EVP-25765, EVP-25771

V1 Loan: Management

New Format=Export.UCD.Final Query Parameter Added to V1 Get Loan API
In the Encompass Developer Connect 21.4 release, a new UseForUCDExport attribute was added to the V1 and V3 DisclosureTracking2015 logs for Closing Disclosure logs. This attribute indicates whether the Closing Disclosure is selected as the disclosure to send for UCD (Uniform Closing Dataset) to Fannie Mae or Freddie Mac.

With the Encompass Developer Connect 22.1 release, we have added a new query parameter to the V1 Get Loan API for determining whether a Closing Disclosure is selected as the disclosure to send for UCD (UseForUCDExport=true) and, if so, is marked as Final in the eFolder.

GET  /v1/loans/{loanId}?format=EXPORT.UCD.FINAL

EBSP-34815, EBSP-34137

V1 Loan: Rate Lock

Rate Lock APIs Now Enforce Persona Access to Fields Business Rules
The V1 Rate Lock APIs will now restrict access to the loan file based on Encompass Persona Access to Fields rules. If the API user’s configured persona does not have access to view an individual field based on the configured rules, they will not see the field data returned through the V1 Rate Lock APIs.

The following GET Rate Lock APIs will no longer return fields that are hidden for a given user/person based on Persona Access to Fields rules:

  • GET /v1/loans/{loanId}/ratelockRequests
  • GET /v1/loans/{loanId}/ratelockRequests/{requestId}
  • GET /v1/loans/{loanId}/ratelockRequests/{requestId}/snapshot

The following POST/PATCH/PUT Rate Lock APIs (with view=entity) will no longer return fields that are hidden for a given user/person based on Persona Access to Fields rules:

  • POST /v1/loans/{loanId}/ratelockRequests/
  • PATCH /v1/loans/{loanId}/ratelockRequests/{requestId}
  • PUT /v1/loans/{loanId}/ratelockRequests/{requestId}/cancellation
  • PUT /v1/loans/{loanId}/ratelockRequests/{requestId}/confirmation
  • PUT /v1/loans/{loanId}/ratelockRequests/{requestId}/denial

EBSP-35264, EBSP-20542

Loan: Field Reader

New Validations Added to the Field Reader API
The V1/V3 Field Reader APIs now return validation messages when a 400 Bad Request error is returned for null, blank, invalid and duplicate fields are passed in the request payload.

New Validation Messages

{
  "summary": "Bad Request",
  "details": "Request Payload has errors",
  "errors": [
    {
      "details": "Field Ids cannot be null or empty."
    }
  ]
}
{
      "summary":  "Bad Request",
      "details":  "Request Payload has errors",
      "errors":  [
            {
                  "details":  "Items in the collection should be unique. Following Field Ids '4000, 4001' appears multiple times in the collection."        
    }    
  ]
}
{
      "summary":  "Bad Request",
      "details":  "Request Payload has errors",
      "errors":  [
            {
                  "details":  "Payload is empty."        
    }    
  ]
}
{
      "summary":  "Bad Request",
      "details":  "Invalid Field Ids: '40034, 40035'"
}

Webhook

New Webhook Notification for eFolder Attachment APIs
A new attachmentCreated event type has been added Webhooks notifications so that lenders can receive a notification when an attachment has been created with the V1 and V3 eFolder Attachment APIs.
EBSP-31777

Fixed Issues

Resolved Issue with V1 Update Loan API
An issue was resolved where the Loan.InterviewerLicenseIdentifier attribute was being updated in the loan contract each time the loan was modified and saved with the V1 Update Loan API. With this issue, when users saved the loan after making any updates, the State License ID # field (2306) would also be updated. This issue has been resolved and now the Loan.InterviewerLicenseIdentifier attribute is updated only when Loan.Property.State is passed through the payload with a different value.
EBSP-34760

Status Code Change Made to V3 Enhanced Condition API
Enhanced Condition API now returns a 409 Conflict status code instead of a 500 Internal Server Error
when "Unable to obtain LOCK in specified time" error occurs during concurrent loan updates.
EBSP-36675

Postman Collection Updates

With this release, we have updated the Developer Connect Postman collection and the Postman Environment JSON.
The Postman collection includes the new V3 External User APIs and Persona APIs. Example use cases for these APIs have also been added to the collection.

External User API use cases include:

  • create ExternalUser with mandatory attributes
  • create ExternalUser with Loan Officer persona All Access
  • create ExternalUser with persona No Access
  • create ExternalUser with all attributes
  • Delete ExternalUser

Persona API use cases include:

  • Get list of Personas
  • Get specific Persona
  • Get specific categories for a Persona

Postman Environment JSON
Updates Made to the Postman Environment JSON
In addition to updating the Developer Connect Postman collection, we have also made some updates to the Postman Environment JSON. Variables for TPOOrgId, TPOUserId1, SiteURLs, PersonaType, and PersonaId have been added.
The updated Postman collection and Postman Environment JSON are available on the
Testing with Postman page.