New and Updated APIs

Search Service

New Search API
The Search API provides the ability to search the web version of Encompass for forms containing a given field ID and to retrieve fields within a given form.

 POST   /encwsearch/v1/search?key=form_fields

Given that the search is on forms/fields, search requests use the “form_fields” key, as shown above.

The form/field search supports use cases such as:

  • Governance
    • Return a list of all the custom forms that contain a given custom field.
    • Return a list of all the fields in a given custom form.
  • Custom Navigation – Return all forms (standard, custom, standard tools) that contain the given field. This will come in handy if you are building a custom workflow for validating fields for running AUS or sending disclosures; this API in conjunction with the navigation methods in the ICE Secure Scripting Framework is useful to direct your users to the appropriate form that has the field.

Usage Notes:

  • The Search API is not for searching for forms or fields independently. When performing a field search, the search returns all the forms where the specified field exists. When performing a form search, the search returns a list of fields within the form.
  • Search results can provide insight into how your custom fields are leveraged in custom forms and which fields are used in a custom form, but should not be used to take an entire inventory of custom fields or custom forms.
  • Fields and forms NOT included in search results are:
    • Custom forms and custom fields that only exist in the desktop version of Encompass.
    • A custom field used only in a calculation or in business rules and not in custom forms in the web version of Encompass.
    • Custom Tools and Global Tools.

Filtering and Sorting:
The Search API allows Encompass users to filter search results by a given property, such as a form name, form type, field id, field type, modified date, and so on. The filter criteria for the results is passed in the query object of the search request. This API supports both full and partial text searches for standard and custom forms, and full text search on standard and custom fields.
ENCW-57806

Loan

Validation Added to Prevent More Than Six Borrower Pairs from Being Added to Loans via V1/V3 Create Loan APIs
To match the Encompass Smart Client and SDK borrower pair limit, lenders can now add only six borrower pairs on loans created with the V1/V3 Create Loan APIs. If more than six borrower pairs are added to a loan file via Create Loan APIs, a 400 error (Bad request) error will be returned. ICE Mortgage Technology recommends that lenders and partners review their automated testing and test cases to ensure loan files do not exceed the limits established for Developer Connect.
EBSP-26918

Property Names Converted to Camel Case in V3 Error Responses
Property names returned in the Summary section of error responses have been converted to camel case. This change does not impact the API camel casing itself; it is limited to the consistency in error messages.

  • Property names that have changed to camel case are:
  • Disclosure Tracking
  • External Users
  • External Org
  • eClose Log creation
  • Milestones
  • Loan Recipients
  • Conversation Logs
  • Roles
  • Loan Versions API
  • Company Settings
{
  "summary": "Bad Request",
  "details": "Request Payload has errors",
  "errors": [
    {
      "summary": "disclosureRecipients[0].disclosedMethod",
      "details": "'DisclosedMethod' for recipient can only be 'eClose' for 'eClose' logs."
    }
  ]
}

EBSP-38414

New Enum Value CountOnly Available for CalculateTotalCount Query Parameter in V3 Loan Pipeline and Query Engine
The CalculateTotalCount query parameter for Pipeline and Query Engine now supports a new option for CountOnly in addition to the prior options (NoCount, WaitForCount, NoWait). When using this option to call the APIs, Developer Connect will return only a count of the loans matching the provided criteria.

  /v3/queryEngines/loan?calculateTotalCount=CountOnly 

  /v3/loanPipeline?calculateTotalCount=CountOnly 

EBSP-39022

Price Concessions Supported on Lock Request Operations
The priceConcessionIndicator (field ID 4789), extensionIndicator (field ID4790), priceConcessionRequestStatus (field ID 4791) have been added to the V1 Rate Lock snapshot. These attributes will not be exposed on the UI but will be available via the API for use in reporting if desired. This change impacts the following endpoint:

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

EBSP-37079

V1 Loan: Added Support for Field Trigger Advanced Code Method Fields.ExecuteCalculation()
When the Field Writer API is used to change the value of a field, field triggers may execute based on the field value changing as well as any other criteria associated with the rule. If the executed field trigger contains advanced code method Fields.ExecuteCalculation(), it will now also run. When a rule is triggered via the Field Writer API, calculations will run without having the loan open. All calculations associated with the Get MI button on the Get MI Form will also run, populate the loan, and be saved in the loan file.
EBSP-41239

Disclosure Tracking

Added Support for Legacy Disclosure Tracking Logs Created via Smart Client and SDK
This release introduces support for legacy logs created through the Encompass Smart Client and SDK. Previously, the Update Disclosure Tracking Logs API in V3 was limited to the Enhanced Disclosure Tracking logs, which are the ones created using the V3 APIs or through Encompass eClose.

This enhancement provides the ability to update and manage legacy disclosure tracking logs via V3 Disclosure Tracking Logs APIs. A notable benefit to this support is the ability to update the UseForUCDExport flag in any disclosure tracking log for use in UCD Automation. The UseForUCDExport flag determines whether a Closing Disclosure is selected as the disclosure to send for UCD. Previously, this flag could only be updated via the V3 APIs if the log was created using V3 APIs.

For the callers already using V3 Disclosure Tracking Logs APIs, this change will be transparent. The update will be seamless without differentiating between legacy and enhanced Disclosure Tracking logs.
EBSP-38233

Added Ability to Pass eConsent Data
Enhancements have been made to the V3 Update Loan and V3 Update 2015 Disclosure Tracking APIs to enable integrations other than Encompass to update eConsent fields. With these updates, eConsent data can be provided to update both the loan and selected Disclosure Tracking records.

  • Loan - eConsent data can be updated in the loan using:

       PATCH /encompass/v3/loans/{loanId} 
    
  • Disclosure Tracking records - eConsent data can be updated in selected Disclosure Tracking records delivered outside of Consumer Connect using:

       PATCH /v3/loans/{loanId}/disclosureTracking2015Logs/{disclosureLogId} 
    

Disclosure Tracking record data, including eConsent status, delivery type and sent/receipt dates will be taken into account by Encompass when calculating the compliance timeline for the loan. See Working with 2015 RESPA-TILA Regulations in the Encompass online help for the usage of these fields within Encompass for purposes of TRID compliance.

Constraints:

  • The loan field eConsentType (field ID 4499) must be set to FullexternaleConsent. This value controls whether the loan level eConsent fields will be updated by Consumer Connect. If this value is not set and the instance is using consent data provided from a partner or from the client’s own systems, the data in these fields may be overwritten.

  • Disclosure Tracking records for packages disclosed through Consumer Connect are not eligible for having eConsent values updated.

  • The disclosure tracking UI will not display eConsent data from the API until the 23.1 release but data will be accessible via an API request.

  • Disclosure Tracking records can be created using:

       POST /encompass/v3/loans/{loanId}/disclosureTracking2015logs   
    

    These records have the following constraints:

    • The snapshot created will represent the state of Encompass data at the point the record is created (equivalent to creation of a manual disclosure tracking log)
    • The log entry must include a reference to its creator.

EBSP-40082

External Organizations

Behavior Change for CompanyNetWorth Attribute in Get External Organization API Contract
The CompanyNetWorth attribute in the Get External Organization API contract has been made nullable. With this change, if a value is not passed for CompanyNetWorth when an organization is created or updated, the value for CompanyNetWorth will be stored as NULL and the attribute will not be returned in the response. Previously, if a value was not passed for this attribute, it was stored as “0” and returned as 0 in the response.

For all new or updated External Organization data, when a null value is passed for CompanyNetWorth, the value will be stored as NULL and CompanyNetWorth will not be returned in the response.

For existing External Organization data, when a null value is passed for CompanyNetWorth, the value will be stored as “0”, and returned in the response as 0.

These changes apply to V1/V3 Update Document APIs.
EBSP-41574

Correspondent Trades

Improved Pagination when Retrieving Trades Pipeline Data
To improve pagination in Trades, the total number of trades will be passed in X-Total-Count of response header when calling the Get Trades Pipeline API (without pagination).

Updates to Trades Statistics Response Payload
Two attributes, Purchased Loan Amount and Purchased Loan Amount Percentage, have been added to the Correspondent Trades Statistics response payload.

Updates to Correspondent Trades Pipeline API
Same two attributes mention above, Purchased Loan Amount and Purchased Loan Amount Percentage, have been added to the Correspondent Trades Pipeline body and response payloads.
SEC-23158

Point of Sale Framework

With this release, ICE Mortgage Technology introduces Point of Sale Framework APIs for ICE Mortgage Technology Partners. Our Point of Sale Framework enables Partners to build custom solutions for Encompass lenders.

If you have not already registered as a Partner offering Point of Sale services, see Become an ICE Mortgage Technology Partner, or contact your ICE Mortgage Technology Partner Alliance Manager to register. Your Partner Alliance Manager will also provide guidance and help step you through building and onboarding your integration.

Encompass eClose Integration

This initial release offers our Point of Sale Framework APIs for building custom Encompass eClose integrations. Encompass lenders can leverage these integrations to provide their borrowers with a seamless eClose document management and eSign experience. This solution is also compatible with Encompass Consumer Connect borrower portal and widgets.

Our Point of Sale Framework APIs for building custom Encompass eClose integrations include:

  • Create a Package Event
    Creates an eClose package event. This is a synchronous webhook listener allowing Delivery Partner integration to hook into package creation and observe data and replace the email content and portal linking.

      POST  https: //{Partner Point of Sale Framework API root}/packages 
    
  • Create a Delivery Room Session
    Creates a Delivery Room session for a recipient in a Partner portal. The Create Package Event payload provides details to the Partner system that determine whether to resolve a user or create a user in the Partner portal.

      POST  /pos/v1/sessions 
    

IMTI-329

Fixed Issues

V3/V1 Loan: Resolved Issue with Loan Lock Error
Some lenders experienced an issue with when creating a loan folder where the loan would lock with an error message stating, “the loan was currently locked because Capsiloniq was currently editing it”. This issue occurred when concurrent calls were made for Update Loan API and Resource Locks API (with an exclusive locks). In this case, both a shared and exclusive lock would be acquired, respectively. This issue was resolved.
EBSP-39146

V3 Loan: Log Collections No Longer Returned in Every Default Get Loan Response
InvestorDeliveryLogs and EncompassToEncompassLogs were being returned with every GET loan view=entity response. Starting with this release, log collections are only returned with view=logs and view=full.
EBSP-41843

V3 Loan: LegacyId in Vesting Entity Contract was Changed to ReadOnly
The application.legacyId attribute in the Vesting Entity contract was changed to readOnly since it is an auto populating field. Previously, the API accepted the legacyId in request payload even though the value was ignored. This change impacts the following endpoint:

  PATCH /v3/loans/{{LoanId}}/closingDocument/vestingEntities?action=add&view=entity 

EBSP-38062

V3 Loan: Resolved Issue with Comp Total Fields Not Populating when Compensation Plan is Applied
When a compensation plan was applied to a loan via the V3 Create or Update Loan APIs, the loan officer Compensation Tool fields LCP.X8 and LCP.X14 were not calculating or populating for a TPO loan. This issue was resolved and now the LCP.X8 and LCP.X14 fields are calculated and populated as expected with the V3 Create and Update Loan APIs.
EBSP-29246

V1 Loan: Resolved Issue with Folder Name Case-Sensitivity when Moving a Loan
When moving a loan via the Move Loan to Folder API, the target loan folder name is no longer case-sensitive. Previously, the move operation would fail if the case of target folder name specified in the request did not match the actual target folder.
EBSP-10506

V1 Loan: Resolved Issue with Field Trigger Business Rules Not Running when Value in Activation Field is Removed
An issue existed with Field Trigger business rules configured to run when a field value is modified. With this issue, the Field Trigger business rules would not run if a field value was removed from the activation field via V1 Loan API. This issue was resolved.
EBSP-40358

V1 Loan: Resolved Issue with the Assign a Loan Associate API
When assigning a user to the underwriter role via the Assign a Loan Associate API, the UWID field was not being updating in the loan file. This issue was resolved and now the Assign a Loan Associate API updates the UWID field as expected.
EBSP-39651

Important Notices

Manage External Users API is Temporarily Unavailable
The V3 Manage External Users API is temporarily unavailable while we work on several improvements.

PATCH /encompass/v3/externalUsers 

Change to V1 Loan Contract
With the release of Developer Connect 22.2, the attribute type for V1 Loan contract attributes ApplicantType and BorrowerIndex was changed to ReadOnly. These attributes now have the same behavior as other ReadOnly properties in V1 Create/Update Loan.
EBSP-38831

Upcoming Change to V3 Loan Contract
The attribute type for V3 Loan contract attributes ApplicantType and isBorrower will change to ReadOnly with the release of Developer Connect 23.1. ICE Mortgage Technology recommends removing usage of these fields prior to the 23.1 release.

The following error will be thrown if either attribute is passed in the payload after the release of 23.1.

{
    "summary": "Bad Request",
    "details": "Request Payload has errors",
    "errors": [
        {
            "summary": "loanContract.applications[0].borrower.applicantType",
            "details": "The ApplicantType field is readonly."
        },
        {
            "summary": "loanContract.applications[0].borrower.isBorrower",
            "details": "The IsBorrower field is readonly."
        }
    ]
}

EBSP-39067

New and Updated Developer Resources

New GitHub Repository

Our GitHub URLs have changed. All of the Developer Connect open source files and project files now point to the new ICE Mortgage Technology repository at https://github.com/IceMortgageTechnology.
The Sample Custom Tool is now located here:
https://github.com/IceMortgageTechnology/loconnect-custom-tool-sample

Be sure to update your bookmarks and favorites.

New Guides & Blog Posts

  • eFolder API Tips & Tricks
    This new Best Practices resource provides helpful tips and tricks from our developers for managing eFolder attachments using APIs. See the eFolder API Tips & Tricks.

  • The API Explorer (aka The "Try It!" button)
    The API Explorer in the Developer Connect portal allows developers to run requests directly from the browser and view an actual response from the API. This new guide describes how Developer Connect users can get started using the API Explorer. See the API Explorer Guide.

  • V1 vs V3 APIs, what’s the difference?
    This Blog Post describes the technological and functional differences between our V1 and V3 APIs and provides answers to the most frequently asked questions. Read the blog post: V1 vs V3 APIs, what’s the difference?

Postman Collection Updates

The Developer Connect Postman collection has been updated to include the new and updated APIs introduced with this release. The Postman Environment JSON has also been updated.

To learn how to import the Postman collection and environment JSON, see Testing with Postman.


New and Updated APIs

V1 Encompass Compliance Service APIs

The Encompass Compliance Service (powered by Mavent) provides an instant loan file check and determines if a loan complies with selected state and federal regulations. The Encompass Compliance Service APIs provide lenders with the ability to programmatically order and retrieve a full compliance review or preview reports for a given loan.

  • View Compliance Reports
    The Get Compliance Report API retrieves the latest compliance review report for a loan. The complianceReport response contract contains details for each review that was performed and provides the result of each review. When a compliance issue occurs, the data (or missing data) causing the issue is also described in the report.

    GET   ecs/v1/compliancereports
    
  • Order a Compliance Report
    The Order a Compliance Report API runs a set of compliance reviews in areas such as TILA tolerance, federal/state/local high cost thresholds, federal higher-priced mortgage loan thresholds, GSE fee limits, and Ability-to-Repay/Qualified Mortgage (ATR/QM) requirements. The types of reviews performed on a loan will depend on which services have been set up in Encompass and the type of loan being reviewed.

    POST   ecs/v1/compliancereports
    

V3 Borrower Vesting APIs

The Borrower Information - Vesting form available in Encompass Loan Officer Connect enables users to enter borrower information, define the ownership rights for the property, enter corporation and trust information, if needed, and create the vesting statement that is used in loan documents. The Borrower Information - Vesting form data can also be viewed and managed programmatically with the Encompass Developer Connect Borrower Vesting APIs.

Borrower Vesting APIs include the following:

  • View Vesting Entities - Returns the borrower vesting entities on a loan.

    GET   /v3/loans/{loanId}/closingDocument/vestingEntities?view=entity
    
  • Manage Vesting Entities - Adds, deletes, replaces, reorders, and updates the vesting entities for a borrower or co-borrower.

    PATCH   /v3/loans/{loanId}/closingDocument/vestingEntities
    

EBSP-35905

EPPS Lookups APIs

The EPPS Lookups API set has been expanded to search for and return more types of loan information across the Product and Pricing system. The new Lookups APIs include the following:
GET /epps/v2/lookups/state/{stateId}/counties
GET /epps/v2/lookups/states
GET /epps/v2/lookups/agencyapprovals
GET /epps/v2/lookups/lockdays
GET /epps/v2/lookups/prepayPenaltyTerms
GET /epps/v2/lookups/deliveryTypes
GET /epps/v2/lookups/encompassElements
GET /epps/v2/lookups/customFields
GET /epps/v2/lookups/documentationTypes
GET /epps/v2/lookups/citizenship
GET /epps/v2/lookups/buydownType
GET /epps/v2/lookups/nonQMDocLevel
GET /epps/v2/lookups/buydownContributorType
GET /epps/v2/lookups/NODTypes
GET /epps/v2/lookups/zipcodes/{zipCode}/locations
GET /epps/v2/lookups/loans/{LoanID}/loanlimits
GET /epps/v2/lookups/UnitTypes
GET /epps/v2/lookups/CommitmentTypes
GET /epps/v2/lookups/clientSettings
GET /epps/v2/lookups/investors
GET /epps/v2/programs/{programID}/guidelines/details/{qualificationID}

V3 Get All Milestone Logs API

The new V3 Milestones API retrieves all milestone logs for a given loan.

GET  /v3/loans/{loanId}/milestones

EBSP-35437

V1 Webhook Enhancements

New Webhook for Exclusive Loan Lock and Unlock Events
Encompass Developer Connect now supports webhook subscriptions for exclusive lock and unlock events against the Loan resource. Subscribing to exclusive lock and unlock events, enables integrated lenders and partners to receive notifications when loans are exclusively locked and unlocked in the platform and respond accordingly.

❗️

Important

As with all webhook events, webhook notifications are not guaranteed to be in real-time. There will be a delay for a webhook notification to be sent after a triggering loan lock/unlock event occurs. Due to this, there is the potential for an intervening lock event between the emission of the notification and your application's attempt to gain a new lock on the file. Implementation of the loan lock/unlock events subscription will not eliminate the need to handle retries, but it can assist in limiting the amount of polling that your applications have to do in order to access loan files after a user releases a lock.

For additional details about subscribing to Lock and Unlock events, see Subscribing to Loan Lock and Unlock Events.

Delete Event Now Supported for Enhanced Condition Template and Enhanced Condition Type
The Webhook API now supports the delete event for the Enhanced Condition Template and Enhanced Condition Type resources. Create a subscription to the delete event to receive notifications when an Enhanced Condition Template and Enhanced Condition Type is permanently deleted from Encompass.

New Webhooks for AIQ Resources and Events — Limited Availability
Some lenders and partners who are using AIQ with their Encompass instance will be able to subscribe to AIQ resources and events to notify lenders when documents are propagated from AIQ Sync to the Encompass eFolder, and when new updates to the loan file (made in AIQ) are available.
NOTE: This enhancement is not generally available. Lenders who use AIQ with Encompass may see AIQ resources and events, however, will not be able to subscribe via self-service. For more information about this enhancement, please contact your ICE Mortgage Technology Relationship Manager.
PSS-60364

Updates Made to V3 Loan API

Null Check Performed to Exclude Empty Arrays
Starting with this release, the V3 Loan API performs an is-empty check to exclude empty arrays from the Get Loan response. Our V3 JSON schema does not mark these collection/array properties as required, which means it already allows them to be omitted. These changes impact only V3 APIs, for example, the Get Trade API.
EBSP-37683

AltId Returned Only with Create Loan Response
The altId (string) attribute in the CorrOtherInsuranceContract will be generated with the Create Loan response only.
EBSP-37583

Update Made to V3 Update Loan API to Support Investor Templates
A new query parameter, templateType=Investor, has been added to the Loan API. This parameter assigns an Investor Template to an existing loan file.
EBSP-37532

New Query Parameter Added to V3 Pipeline API
A new query parameter, calculateTotalCount, has been added to the Loan: Pipeline API. This parameter specifies how long the query can take to calculate the total loan count for pagination.
Possible values are:

  • NoWait (default): Calculate total count, but if not returned in 3 seconds, then return without calculation.
  • WaitForCount: Wait for total count to be returned before returning response.
  • NoCount: Skip calculation and return pipeline query result (fastest option).

EBSP-36950

Update Made to V3 Enhanced Conditions API
A new attribute, SourceOfConditions, has been added to the EnhancedConditions contract to capture the source of the condition. Possible values are the AUS options: DUFindings, EarlyCheck, Findings, PAFindings, FHAFindings.
EBSP-37239

Updated Documentation to Reflect Current EPPS Contracts

The Rates Contracts and Attributes tables have been updated to reflect the current contracts in EPPS. The updated contracts include Loan Qualifier, Lock, and Eligible Rates.

Postman Collection Updates

The Developer Connect Postman collection has been updated to include the new and updated APIs introduced with this release. Example use cases for these APIs are available in the collection. The Postman Environment JSON has also been updated.

  • Download the 22.2 Developer Connect Postman Collection

  • Get the 22.2 Postman Environment JSON

API Reference Updates

The following changes have been made to the left-navigation menu in the API reference:

  • The Services APIs for ordering and getting credit, electronic verification, AUS, appraisal, and flood reports are now listed under Services: Partner.
  • The EPPS V2 APIs for searching for best-fit program and pricing information with Encompass Product and Pricing Service are now listed under Services: EPPS.
  • The new Encompass Compliance Service APIs for ordering and retrieving full compliance reviews and preview reports are listed under Services: ECS.

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 API – 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.


The changes made with the Encompass Developer Connect and Encompass eClose 21.4 March Critical Patch impact clients using the Encompass eClose workflow. There is no new version of Encompass for clients to download.

eClose

Values on LE/CD Total of Payments
An issue existed where loans with financed MI had different values on LE/CD total of payments if generated through eClosing or Developer Connect API vs Encompass. This issue is resolved.

UCD Export
This critical patch also provides an update to V1 Get Loan formats for export.UCD and export.UCD.Final to comply with the UCD Mandate scheduled for March 31, 2022. This will be available for clients leveraging Developer Connect for UCD Automation with this release.
Note: The updates for UCD will not be available on Encompass Smart Client until March 10, 2022.
EBSP-37531. EBSP-36976, EBSP-37531


Announcements

UI Enhancements and Faster Page Loading
With this release we have adopted a new UI framework for the portal. You will see minor formatting changes throughout, but more importantly faster page loading!

Try It Support for 18 Languages
The Try It feature has been enhanced to generate code in 18 different languages:
C, C#, C++, Clojure, cURL, Go, Java, JavaScript, Kotlin, Node, Objective-C, oCaml, PHP, PowerShell, Python, R, Ruby, and Swift.

Retirement of Language Bindings
The .NET Language Bindings are being retired with this release. ICE Mortage Technology will continue to support them.

Webhook Update
In order to standardize communications from the Webhooks platform, all webhook event type names across all products were converted to lowercase. With this change, all client and partner webhook subscriptions remain intact and functional.

Example: Before
"eventId": "03d3ed0e-9932-4d68-b364-e95ffafc8757",
"eventTime": "2022-01-25T22:39:50.733Z",
"eventType": "Update",

Example: After
"eventId": "03d3ed0e-9932-4d68-b364-e95ffafc8757",
"eventTime": "2022-01-25T22:39:50.733Z",
"eventType": "update",

Best Practice
As a best practice, and for customers seeing a difference post adoption of 21.4, we recommend doing a case-insensitive string comparison when condition checking webhook event JSON string values.

const RESOURCE = 'loan'; // declared as lowercase
const EVEN_TYPE = "update"; // declared as lowercase

let eventHookEvent = {
  "eventId": "03d3ed0e-9932-4d68-b364-e95ffafc8757",
  "eventTime": "2022-01-25T22:39:50.733Z",
  "eventType": "update",
  "meta": {
    "userId": "user",
    "resourceType": "Loan",
    "resourceId": "b9b45c4c-abfa-445f-9829-fca448825014",
    "instanceId": "bexxxxxxxx",
    "resourceRef": "/encompass/v3/loans/b9b45c4c-abfa-445f-9829-fca448825014"
  }
};

/*
in the middle of the code to see the right event type

*/

if (eventHookEvent.eventType.toLowerCase() === EVENT_TYPE) { //Note we are doing case insensitive compare

}

Enhancements and Fixes

Loan Management

V3 Create Loan API: New Action Attribute Applies TPO Loan Originator Information to URLA 2020 Loans
The V3 Create Loan API has been enhanced to support a new TPO Action: tpoRegister. When the tpo.loId and loId query parameters are passed with action=tpoRegister, the tpo.loId value will be applied as the Loan Officer in the resulting loan.
EBSP-33614

V3 Update Loan API: Two New TPO Actions Available
The V3 Update Loan API has been enhanced to support the following new TPO actions:

  • tpoOrderAppraisal. Orders an appraisal for the specified loan.
  • tpoGenerateDisclosures. Generates LE/Disclosures for the specified loan.

PATCH /v3/loans/{loanId}?action=tpoOrderAppraisal | tpoGenerateDisclosures
EBSP-33303, EBSP-33302

Loan: Field Lock Data

New Field Lock Data API Available
A new Field Lock Data API is available for managing the list of locked fields in a loan. Previously, the list of fields in the fieldLockData was being replaced on each Update Loan API call. With this API, the fieldLockData collection is treated as an appendable collection rather than replacing on each call. This API is particularly useful in scenarios where a field needs to be removed from the list of locked fields.
PATCH /v3/loans/{loanId}/fieldLockData?action=add | remove | replace
EBSP-18967

Send Encompass Docs

Opening Doc Set API Supports Encompass Forms
The Send Encompass Docs API suite has been enhanced to support the ability to add additional Encompass forms to an existing opening doc set. Previously, only eFolder documents could be added to an existing opening doc set.
NDE-17613

Loan: Disclosure Tracking 2015

New Attribute Added to Disclosure Tracking API Contract
A new UseForUCDExport attribute has been added to the V1 DisclosureTracking2015 contract (read-only) and V3 EnhancedDisclosureTracking logs (read-only) 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.
EBSP-33974

eFolder: Document

Behavior Change for StatusBy/StatusDate Attribute Sets in Update Document API Contract
A change has been made to how the values for receivedBy/receivedDate and requestedBy/requestedDate attribute sets behave when updating a document. This change applies to V1/V3 Update Document APIs.
EBSP-33423, EBSP-33422

eFolder: Attachments

Update Attachments Successfully on Locked Loans
The V1/V3 Update Attachments APIs were enhanced to allow attachments to be updated on loans that are locked. The remove action will continue to return a 409 Conflict error when the loan is locked.
EBSP-33420

EstimatedClosingDate Value Now Retained when Rate Lock is Confirmed
A change has been made to the V1/V3 Rate Lock APIs to resolve an issue that prevented the estimatedClosingDate value from being retained when a lock is confirmed.
EBSP-33442


The Encompass 21.3 Major Release Critical Patch 2 was released on December 16, 2021 for the year-end updates recently announced government agencies. In addition to the updates described in the Encompass release notes, the following updates will be provided when you upgrade to Encompass version 21.3.0.2.

Settings: External Users

Resolved Issue with Get External User API
An issue has been resolved that caused the Get External User API to fail with a bad request if the specified TPO userID started with “0”.
EBSP-27694

Loan: Rate Lock

Null Values Now Retained in the Request Payload for Certain Fields
Updates were made to the V1 Rate Lock APIs to retain empty/null values when the following fields are passed in the request payload: Sell Side Fields, Buy Side Fields, Comparison Fields, Loan information.
EBSP-33309, EBSP-33310

eFolder: Attachments

Resolved Issue that Caused V3 Attachment API to Fail with a “CheckAttachmentXmlVersion” Error
Some lenders experienced the following error when attempting to upload an attachment via the API:
“Create Attachment failed. Please try again. Message: Couldn't read latest version of Attachment xml file.”
This error occurred with loans that had a mismatched value for FileSequenceNumber between attachments.xml and the corresponding value in the DB. This issue has been resolved.
EBSP-33185

Loan: Management

V3 Loan Management Endpoints Now Return Loan Item IDs When View=id is Passed
When the calling the V3 Update Loan API with the view=id query parameter, the ID of the loan item was returned in the response instead of the Loan ID. For example, when calling:
PATCH /v3/loans/{loanId}/investorDeliveryLogs?action=add&view=id
The Investor Delivery Log ID was being returned instead of the Loan ID.
This issue has been resolved and when view=id is passed with Update Loan, the Loan ID is now returned in the response.
EBSP-32029


Resolved Issue with Opening Disclosures Not Being Attached and Assigned when Ordered Through the Send Docs API
An issue existed where opening disclosures retrieved in the eFolder were not being attached automatically to the correct document if they were ordered through the Send Docs API. When users clicked the Retrieve button in the eFolder, the opening disclosure files were displayed in the Unassigned section of the File Manager. With this issue, the Auto Assign function also failed to automatically assign these files to the appropriate eFolder document.
This issue was resolved and now opening disclosures ordered through the Send Docs API are being attached and assigned correctly.
NDE-19587

Resolved Webhook Issue with DocumentOrder Events Not Being Received at Subscription Endpoint
An issue was resolved with the Webhook subscription for DocumentOrder events that prevented API calls for opening and audit events (e.g. openingordercompleted, openingauditcompleted, openingauditfailed, and so on) from being received at the subscription endpoint. With this issue, the API call completed asynchronously as expected, however, the webhook event was not being sent.
This issue has been resolved and DocumentOrder events are now being received at the subscription endpoint as expected.
NDE-19587


New and Updated V3 APIs

New V3 APIs for Disclosure Tracking 2015 Logs

With this release, we are introducing V3 APIs for retrieving and managing Disclosure Tracking 2015 Logs. Use these APIs to retrieve and manage log tracking entries for the 2015 Loan Estimate, Closing Disclosure, Settlement Service Provider, and Safe Harbor disclosures.

Endpoint URL: /v3/loans/{loanId}/disclosureTracking2015Logs

The following APIs are available for retrieving and managing Disclosure Tracking 2015 Logs:

  • Get All Disclosure Tracking Logs. Retrieves all disclosure tracking logs for a specified loan.
  • Get a Disclosure Tracking Log. Retrieves the specified Disclosure Tracking 2015 log for the specified loan.
  • Add a Disclosure Tracking Log. Adds a disclosure tracking 2015 log to a specified loan.
  • Update a Disclosure Tracking Log. Updates an existing disclosure tracking 2015 log on a specified loan.
  • Get all Snapshots. Retrieves snapshot data for all the Disclosure Tracking logs for a loan.
  • Get a Snapshot. Retrieves a snapshot of a specified Disclosure Tracking log.

EBSP-26777, CBIZ-38716

New API Available for Viewing Eligible Roles for an Encompass User

The Eligible Roles API provides the ability to retrieve a list of roles that an Encompass user qualifies for based on their persona and user group affiliation.

Endpoint URL: /v3/users/{userId}/eligibleRoles

EBSP-28617

New APIs Available for Managing Registration Logs

Use the Loan Registration Log APIs to create and manage registration logs programmatically when loans are registered.

Endpoint URL: /v3/loans/{loanId}/registrationLogs

The following APIs are available to manage registration logs:

  • Get Registration Logs. Retrieves all registration logs for a loan.
  • Create Registration Log. Use this API to create a registration log for an existing loan
  • Update Registration Log. Updates an existing registration log.

EBSP-29357

New Field Writer API Available

The Field Writer API updates the values of fields by Field IDs rather than JSON paths for a given loan. This is an alternative to the Update Loan API, and is especially helpful when trying to update specific fields by field IDs. This API also provides the ability to lock and unlock padlock fields.

Endpoint URL: /v3/loans/{loanId}/fieldWriter

The following Field Writer APIs are available with this release:

  • Update Loan Field Values. Updates field values for a specified loan file.
  • Manage Field Lock Data. Adds or removes field lock data.

EBSP-31551

New APIs Available for Retrieving and Applying Funding Templates

A new API has been added to the Settings: Secondary API set to retrieve a list of funding templates, and the Loan API has been expanded to support the ability to apply a funding template to an existing loan.

Get Funding Templates
The new Get Funding Templates API has been added to the Settings: Secondary API set. It retrieves a list of funding templates available on the Encompass instance.
Endpoint URL: /v3/settings/secondary/fundingTemplates
Use the itemizationType query parameter to filter the results. Possible values are 2009, 2010, and 2015.

GET /v3/settings/secondary/fundingTemplates?itemizationType=<2009|2010|2015>

Apply a Funding Template to an Existing Loan
The Update Loan-1 templateType query parameter has been enhanced to support a value of funding. Use this value to apply a funding template to an existing loan.

PATCH /v3/loans/{loanId}?templateType=funding&templatePath={URI encoded template name}

EBSP-31601

Updates to the Investor Template API Contract

The Investor Template API contract has been updated to include a new purchaserTypeValue attribute. This attribute provides a long form value of the purchaserType field. The purchaserTypeValue attribute is passed between Loan APIs and populates Type of Purchaser (field ID 1397) in the HMDA Information form when the investor template is applied to a loan file.
The table below displays the possible values for the purchaserTypeValue attribute and the correlative purchaserType values:

purchaserTypeValue (Long Form)purchaserType (Enum)
Loan was not originatedNotApplicable
FNMAFannieMae
GNMAGinnieMae
FHLMCFreddieMac
FAMCFarmerMac
Private SecuritizationPrivateSecuritizer
Savings BankCommercialSavingsBankOrAssociation
Credit union, mortgage company, or finance companyCreditUnionMortgageOrFinanceCompany
Life Insurance Co.LifeInsurance
Affiliate InstitutionAffiliateInstitution
Other type of purchaserOthers

EBSP-29124

New and Updated V1 APIs

New Sell/Comparison Update Action Added to Submit Rate Lock API

The Submit Rate Lock API has been enhanced to support the update Sell/Comparison action. Use this action to update only the Sell Side and Comparison Side details for a lock that was previously confirmed, expired, or denied. This action creates a new lock snapshot, inheriting the attributes from the original lockId for lockRequest and buySide. The status of the original lock that you are updating is carried over.

POST /v1/loans/{loanId}/ratelockRequests?action=updateSellComparison&lockId={lock ID}

Enhancements Made to Lock Request Type in Rate Lock APIs

Enhancements have been made to the Rate Lock APIs to give clients the ability to distinguish between lock requests for active, expired, or cancelled locks. When attempting to relock a lock ID, the current status of the lock will determine the lock request type for the new lock request. If it is an active lock, the request type will be “LockUpdate”. If the lock is cancelled or expired, the request type will be “Re-lock”.

EBSP-31261

Enhancements Made to EPPS APIs to Return APR Details

EPPS API contracts have been updated to provide estimated basic APR calculation based on loan amount, rate, estimated closing costs and amortization.

EPPS-28405

New APIs Available to Create and Manage Correspondent Trade Notes

The Correspondent Trades APIs have been expanded to allow lenders to programatically add a note to a correspondent trade and manage existing notes.

Endpoint URL: /v1/trades/correspondent/{tradeId}/notes

The following new Correspondent Trades APIs are available with this release:

Usage Notes:

  • To create, update, or delete notes via the APIs, the caller must have persona access to edit correspondent trades. Access is enabled in Encompass > Settings > Personas > Trades/Contacts/Dashboard/Reports tab > Trades area by selecting the Edit Correspondent Trades check box.
  • Only one note can be created a time.
  • When a note is created, updated, or deleted from an existing correspondent trade using these APIs, an event for “Trade Updated” is created in the correspondent trade history.

SEC-20529, SEC-20611, SEC-20868

New API to Retrieve User Roles

The Settings: Role API provides the ability to retrieve all the roles defined on the Encompass instance. The response includes details about the role, such as Role ID, Name, Abbreviation, assigned Personas and UserGroups, and whether the role has protected access to documents.

Endpoint URL: v1/settings/roles

EBSP-34589

Webhook Enhancements

Added Support for Exponential Back-Off for Retrying Failed Notification Attempts

The Encompass Platform now supports an exponential back-off retry policy that increases the resend interval for each webhook notification failure.

Retry Logic
If the Encompass Platform is unable to deliver a notification to the registered webhook callback or the callback fails to acknowledge the notification, the Encompass Platform will make other attempts to deliver the notification.
The following situations are considered a failed delivery attempt:

  • HTTP status in the range 500-599.
  • HTTP status outside the range 200-599.
  • A request timeout (30 seconds). Note that if a request time-out occurs, the timing of the next retry attempt is based on the retry policy and number of failed attempts.
  • Any connection error such as connection timeout, endpoint unreachable, bad SSL certificate, etc.

Default Retry Logic
By default, the Encompass Platform implements a linear back-off retry policy that will attempt delivery up to three times with a delay of 20 seconds between each retry. If the event is not delivered after three attempts, the notification is discarded.

Retry Logic with Exponential Back-Off
Exponential back-off can be applied to a webhook subscription to increase the resend interval for each failure. This policy allows for a longer retry period while not attempting to deliver the request constantly. When exponential back-off is applied to a subscription, any failed events will automatically retry for up to 8 hours with an exponential back-off interval. The table below shows the interval between retry attempts:

RETRY ATTEMPTSECONDS BETWEEN ATTEMPTSTIME SINCE ORIGINAL WEBHOOK EVENT
13000:00:30
26000:01:00
312000:02:00
424000:04:00
548000:08:00
696000:16:00
7192000:32:00
8360001:00:00
9720002:00:00
101080003:00:00
111440004:00:00
121800005:00:00
132160006:00:00
142520007:00:00
152880008:00:00

Implement Exponential Back-Off for Webhook Subscriptions
The delivery policy for a webhook subscription is determined by the Subscription API deliveryPolicy parameter.

"deliveryPolicy":{"backoff":"linear | exponential"}

The deliveryPolicy parameter is optional. To implement exponential back-off for a webhook subscription, set the deliveryPolicy back-off parameter to “exponential”. If deliveryPolicy is not provided as input, the default retry logic, linear, is used.

curl --location --request POST 'https://<API_SERVER>/platform/v1/events/documentOrder' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <Token>' \
--data-raw '{
    { "endpoint": "<clientEndPoint>", "resource": "Loan", "events": ["create", "change", "update" ], "filters":{ "attributes":["/applications/0/borrower/firstName"] }, "deliveryPolicy":{"backoff":"exponential"} }
}'

PSS-33285

Webhook Support for Third-Party Service Orders

With this release, webhook subscriptions can be created to notify lenders when service orders are placed with third-party mortgage applications. When subscribed to the serviceOrder resource, the API will send a notification to the lender upon completion of each step in the service ordering workflow.

The following events are supported by the Webhook API for the serviceOrder resource:

EVENTDESCRIPTIONSUPPORT
PlacedWhen a service order is delivered to the third-party service provider.API
AcknowledgedWhen a service order is acknowledged by the third-party service provider.API
FulfilledWhen an order is completed and the response is successfully ingested into Encompass.API
System FailureWhen a system exception (API failure) occurred while attempting to prepare the order request.API
Process FailureWhen a process exception (e.g. business rule, authorization, access, and so on) occurred while attempting to prepare the order request.API

PSS-34451

Single Sign-On (SSO) Support for Developer Connect Integrations

This release of Developer Connect introduces support for SSO authentication with Developer Connect API integrations and SSO-enabled Encompass instances. This implementation provides a seamless and secure sign-in experience for clients when accessing SSO-enabled Encompass instances from Developer Connect API integrations.

Requirements

  • SSO must be enabled on the Encompass instance
  • Your company's identity provider (IdP) must be configured with ICE Mortgage Technology settings
  • A Developer Connect API connection must be set up in Developer Connect

For additional details about these requirements and for step-by-step instructions about how to set up SSO for Developer Connect, see the Setting Up SSO for Encompass Products Guide.

Additional Resources

New Parameter Added to the Authorization Endpoint

To support the new SSO flow, new is_sso and instance_id query parameters have been added to the authorization endpoint. The is_sso parameter is required to indicate whether SSO authentication is to be used. A value of true indicates that SSO is enabled. The default value is false.

The instance_id query parameter directs the browser to the Developer Connect SSO login page. It is required when is_sso is true.

Updated authorization endpoint:
https://idp.elliemae.com/authorize?client_id=<client_id>&response_type=code&redirect_uri= <redirect_uri>&state=<state>&scope=lp&is_sso=false

Example for SSO:
https://idp.elliemae.com/authorize?client_id=<client_id>&response_type=code&redirect_uri[…]com/page/api-key&scope=lp&is_sso=true&instance_id=BE11211665

For more information about these parameters and to learn about using SSO with the supported authorization flows, see the Authentication page.

Fixed Issues

Incorrect Case for Custom Field Names in Update Loan API Caused Fields to Get Blanked Out
With the V1 and V3 Update Loan API, when the fieldName attribute for a custom field is passed without proper casing (for example, cust02fv instead of CUST02FV), it was leading the corresponding value of the custom field to get cleared out.
This issue is resolved with the 21.3 release of Encompass Developer Connect.
EBSP-30432

Cancelling a Rate Lock Extension Request via Rate Lock Cancellation API Still Counts Towards Total Number of Extensions
When cancelling an extension rate lock request through the API, the lock was still getting counted towards total number of extensions. This would be an issue when there is a limit defined on the number of extensions in Secondary Settings. This issue is resolved. With the fix, only confirmed extensions will get counted towards the total number of extensions.
EBSP-28118


Enhancements

User Token Impersonation Support for Developer Connect
With this release, Encompass Developer Connect supports a new user impersonation flow. User token impersonation enables privileged Encompass users to perform actions in Encompass under a different user account. For example, an Encompass user with a super administrator persona can run a scenario or update loan information in Encompass by impersonating the loan officer assigned to the loan. Previously, impersonation could only be achieved through the Encompass SDK.

Encompass Developer Connect supports the user impersonation flow by utilizing a custom “grant type” token exchange (urn:elli:params:oauth:grant-type:token-exchange). Developer Connect exchanges the access token of the currently logged-in user with a new access token that includes impersonation semantics, such as the user ID of the currently logged in user (actor_encompass_user) and the impersonated user.

Supported Impersonation Scenarios
Impersonation scenarios currently supported by Developer Connect are provided below. In all cases when a user impersonates another user, the access privileges of the impersonated user are applied to the API calls.

This Encompass User/Persona…Can Impersonate…
Super AdministratorAll other Encompass users, including other SuperAdmin users.
Non-Super AdministratorLenders with grant type resource owner password credentials can impersonate any other users at the same level or below them in the organization hierarchy.

For more information about user token impersonation, see the Authentication section.

New and Updated V3 APIs

Loan Resource Lock APIs Now Available in V3
The Loan Resource Lock APIs provide the ability to return all resource locks or a specified resource lock on a loan, create a lock for the specified resource in Encompass, and unlock a specified resource in Encompass.

Endpoint URLs:
GET /encompass/v3/resourceLocks
GET /encompass/v3/resourceLocks/{lockId}
POST /encompass/v3/resourceLocks
DELETE /encompass/v3/resourceLocks/{lockId}

Field Reader API Now Available in V3
The Loan Field Reader API retrieves the values for the specified field IDs within a loan.

Endpoint URL:
POST /encompass/v3/loans/{loanId}/fieldReader

Support for DataVerify Flood Service
Ability to create service orders for DataVerify Flood and get status of the service order available with this release.

Endpoint URLs:
GET /encompass/v3/loans/{loanGuid}/serviceOrders
POST /encompass/v3/loans/{loanGuid}/serviceOrders

Prerequisites:
Prior to submitting your loans to DataVerify using Encompass Developer Connect APIs, the following need to be configured in Encompass Partner Connect:

  1. Create a new service setup in Encompass LO Connect Admin > Services Management.
  2. Download the CBC cURL API definition from Encompass LO Connect> Services Management> Manual Ordering> DataVerify Flood Services setting.

New and Updated V1 APIs

New Rate Lock API Added to Void a Rate Lock
A Lock Desk user can use the Void Rate Lock API to submit a request to void a pricing event (i.e., lock, relock, extension, denial, or cancellation) and return the lock to its previous state.
Note: This API is applicable only to pricing events in Correspondent Individual Best Effort loans that are not assigned to a Correspondent Trade.

Endpoint URL:
PUT /v1/loans/{loanId}/ratelockRequests/{requestId}/void?dataSyncOption=<>

Webhook Enhancements

Delete Event Now Supported for the Loan Resource
The Webhook API now supports the delete event for the Loan resource. Create a subscription to the delete event to receive notifications when a loan is permanently deleted from Encompass.

FieldChange Event Now Supported for the Loan Resource
The Webhook API now supports the fieldChange event for the Loan resource to provide users with finer-grained filtering than the Loan Change webhook. Create a subscription for the fieldChange event to receive notifications when a change occurs on a specified field, if the field is added to the Audit Trail Database.

Deprecated APIs

V1 EPPS APIs
Starting with the 21.2 release, which is currently scheduled for June 5, 2021, Encompass Developer Connect will no longer support the V1 EPPS APIs. In previous release notes and in the Deprecation Notice - EPPS V1 APIs, we announced that Encompass Developer Connect will stop supporting V1 EPPS APIs starting with this release, and we have recommended that developers who use the V1 EPPS APIs start using the V2 EPPS APIs. Please use the V2 EPPS APIs going forward to programmatically retrieve best-fit program and pricing information and to retrieve and select rates for Encompass loans.

Fixed Issues

Locked Fields in Data Templates Being Honored When Applied in v3 Create & Update Loan Apis
Earlier, field locks in data templates referenced as part of Loan Template Sets were being ignored, and Encompass calculations were being applied. With 21.2 June release, locked fields values will be applied. However, there is a known issue where a locked field, if set to null, is throwing a 500 Error. This is being fixed in 21.3 October release. This is working as expected in V1 Loan Management APIs.
EBSP-19272

Field Data Entry Business Rules With CurrentUser in Advanced Code Was Causing Loan Update to Fail
If CurrentUser method was being used in any Field Data Entry Business rule on an instance, and the loan met the criteria for the Business Rule execution, an "Advanced Code Definition execution failed" error message was preventing the loan from being updated through V1 and V3 Update Loan APIs. This has now been fixed in the 21.2 June release so that the advanced code in the business rule is properly evaluated, and appropriate response is returned.
EBSP-21348

Field Data Entry Business Rules Are Now Evaluated for All Applications in the Loan When the Rule Has a Value Check as Part of Advanced Code
The V1 and V3 Manage Loan APIs were evaluating the Field Data Entry Business Rule only for the primary borrower pair/ application when a value was specified as part of the business rule's Advanced Code. This is fixed with the 21.2 June release to validate the value against all Borrower pairs in the loan.
EBSP-27112

URLA 2020 Proposed Supplemental Property Insurance not Honoring the Itemization Fee Management Settings
Persona Access Rights and Itemization Fee management persona overwrite rules are now honored with the V3 Update Loan API for Lines 1007, 1008 and 1009.
EBSP-27996

Send Encompass Docs APIs

ICE Mortgage Technology is offering a new service to access V1 APIs in Developer Connect for generating, managing, and sending Encompass document packages.

The Send Encompass Docs service provides APIs to order initial disclosures, closing documents, and on-demand forms and send them to recipients (i.e., borrowers, co-borrower, and non-borrowing owners) via the Encompass Consumer Connect borrower portal. Recipients are notified by email when documents are available for them to view. The notification email includes a link to the borrower portal where the documents can be viewed, printed, and eSigned. When an order is sent, a Disclosure Tracking entry is created in Encompass. Lenders can retrieve documents that are completed by the recipient from the Encompass eFolder.

The following Send Encompass Docs APIs are available in this release:

API for Managing Plan Codes

  • Manage Plan Codes V1 API
    Retrieves a list of company plan codes and applies program data from a selected plan code to a loan file. Any plan code conflicts are provided in the response.

    APIs:
    GET /encompassdocs/v1/planclodes
    POST /encompassdocs/v1/planCodes/{planCodeId}/evaluator

APIs for Managing Document Packages

  • Opening Packages (Initial Disclosure) V1 API
    Initial Disclosure Packages are also known as Opening documents in Encompass Developer Connect. The /opening endpoint provides methods to audit a loan, order disclosures, generate and send the opening (three-day) package to borrowers.

    APIs:
    POST /encompassdocs/v1/planclodes/{planCodeID}/evaluator
    POST /encompassdocs/v1/encompassdocs/v1/documentAudits/opening
    POST /encompassdocs/v1/encompassdocs/v1/documentOrders/opening

  • Closing Packages V1 API
    The /closing endpoint is provided with methods to audit a loan, order docs, generate, and send Closing documents to the Settlement Agent. Once the package is sent, a notification will be sent to the recipient with the pre-signed URL for accessing the forms to be printed and signed at closing. A compliance audit (by Mavent) is included with Closing document orders.

    APIs:
    POST /encompassdocs/v1/planclodes/{planCodeID}/evaluator
    POST /encompassdocs/v1/encompassdocs/v1/documentAudits/closing
    POST /encompassdocs/v1/encompassdocs/v1/documentOrders/closing

  • On-Demand Document Orders with Additional Forms V1 API
    One or more additional forms can be added to an existing package using the /forms endpoint. When Loan Estimates or Closing Disclosures are added to a document package, the package will be tracked with the Disclosure Tracking Tool in Encompass.

    Endpoint URL:
    POST /encompassdocs/v1/documentOrders/forms

API for Retrieving Loan Recipients and Authentication Codes for Doc Orders

  • Retrieve List of Loan Recipients V3 API
    A new V3 Loan: Recipients API is available for retrieving all recipients associated with a loan. Recipients can include the borrower, co-borrowers, and non-borrowing owners on a loan. This API also returns authentication codes when applicable.

    Endpoint URL:
    GET /encompass/v3/loan/{loanId}/recipients

API for Retrieving Disclosure Tracking Settings to Select Forms for On-Demand Doc Orders

  • Retrieve Disclosure Tracking Settings V3 API
    A new V3 Settings: Disclosure Tracking API is available for retrieving the Disclosure Tracking settings defined in Encompass > Settings > Loan Setup > Disclosure Tracking Settings. This can be used to choose the list of forms to be sent out as part of On Demand Disclosure packages.

    Endpoint URL:
    GET /v3/settings/loan/disclosureTracking

Additional Resources
To get started with the Send Encompass Docs APIs, see the Ordering Document Packages blog post.

Correspondent Trades API

New API Available to Unassign Loans from a Correspondent Trade
The Delete method is now available for the Correspondent Trade API. Use this API to systematically unassign loans from a Correspondent Trade.

Endpoint URL:
DELETE /secondary/v1/trades/correspondent/{tradeId}/loans

Update Correspondent Trade API Now Supports action=updateStatus
The Update Correspondent Trade API now supports updateStatus as a value for action query parameter. Use updateStatus to edit a single Correspondent Trade or to change a commitment status to Committed, Delivered, or Settled.

Endpoint URL:
PATCH /secondary/v1/trades/correspondent/{tradeId}?action=updateStatus

Enhancements

Changes Made to Disclosure Tracking Logs & Time Zones
As described in the Encompass April Release Notes, a change has been made to the timeline calculations used by the Disclosure Tracking tool to help ensure dates and times are consistent across all the Disclosure Tracking log entries in a loan.

As part of this change, the Disclosure Tracking 2015 Log object in the V3 Loan Schema has been updated. All Date-related attributes (i.e. applicationDate, disclosureCreatedDate, and so on) in the Disclosure Tracking 2015 Log object will be stored in Date-only format (YYYY-MM-DD), without the time or time zone indicator. The time zone for these Date-related attributes will be determined by the value of Encompass field LE1.X9 (Closing Costs Estimate Expiration Time Zone), which is set depending on Encompass settings and calculations.

For details about this change and to learn how it impacts existing and new loans, please refer to the Knowledge Article: Disclosure Tracking Logs & Time Zones (KA-39455).

Assign Loan Officer during Loan Creation using V3 API
With V3 Create Loan API, you can now assign a loan officer at the time of creating the loan. A new query parameter loID has been added so that you can pass the userId of the loan officer.

Endpoint URL:
POST /encompass/v3/loans?loID=< >

Clear BuySide and SellSide Data in Rate Lock Requests
A new query parameter clearEntities has been introduced to the Update Rate Lock request API. In order to clear out an entity, simply pass “buySide” and/ or “sellSide” as the parameter value instead of having to pass every attribute as an empty string in the request payload.

Endpoint URL:
PATCH /encompass/v1/loans/{loanId}/ratelockRequests/{requestId}?clearEntities=<buySide,sellSide>

Services API Enhancements
A new request type, RequestReportFiles, is being added in this release. Use this request type to retrieve raw XML files for service reports, (such as credit services, Fannie Mae DU and EarlyCheck, and Freddie Mac LPA) after the service order has been completed.

Endpoint URL:
GET /services/v1/partners/{{Service_Partner_ID}}/transactions

NOTE: This requestType is supported for admin and super admin users only.

Fixed Issues

Performance Optimization of Loan Update API Calls
For Calculated Custom Fields configured with Advanced Code including fields referencing the applicationIndex, only custom fields related to the modified applicationIndex will be run, instead of running calculations for all borrower pairs. For example, if CUST01FV has a calculation based on 4000#1 and CUST02FV has a calculation based on 4000#2, and only 4000#2 was updated, only CUST02FV custom field will be recalculated. This will improve the performance of Loan Update API calls, especially when the instance is configured with many custom fields.
EBSP-27952

Milestone Date Calculations
As part of the loan creation process, if you complete a milestone that is after the “File Started” milestone, prior milestone dates were being calculated based on the number of business days configured in the settings. This was resulting in a milestone completion date prior to the loan creation date. With this release, all the prior milestones will be set to the same date as the completed milestone. For example, if the Qualification milestone is marked as completed as part of the loan creation process, and Qualification is configured to take 3 business days, File Started & Qualification milestones will have the same date of completion. This issue has been addressed in V1 and V3 loan creation flows.
EBSP-25537

Populating Loan Originator Fields Based on Instance Policy Settings for URLA 2020 Loans
For an URLA 2020 Loan, v1 and v3 APIs to Create a Loan with an assigned loan officer should populate URLAX.170, URLAX.171, URLAX.172, URLAX.173 and 1612 based on the settings configured in Encompass Admin Settings. If the Interviewer Name is configured to populate LO details, the user's details passed in loId attribute needs to be used to populate the mentioned fields instead of populating the loan starter’s details. This works as expected for 2009 loans, and this defect has been fixed for URLA 2020 Loans.
EBSP-28957

Loan APIs to Honor Persona Access to Loans Business Rules Based on Milestones
An issue was identified with the Loan CRUD APIs where all Persona Access to Loans Business Rules were being applied irrespective of the milestone stage that the loan is in. This issue has been resolved. Business Rules that are configured to be applied based on a given milestone are now applied as expected.
EBSP-28027

Field Data Entry Business Rules with [value] in Advanced Code Run on Saved and New Versions of Loan
There was a parity gap identified between Encompass Smart Client and APIs where the V1 Update Loan API was running Field Data Entry Business rules twice - once only on the request payload and a second time on the new version of the loan file. With this fix, APIs will continue executing the Field Data Entry rules twice – once on the combination of request payload and saved version of the loan, and a second time on the new version of the loan.
EBSP-27074