Data and Access Entitlements

All integrations built on EPC are governed by two types of application entitlements - access entitlements and data entitlements.


Access Entitlements


The access entitlements govern which instances of an Ellie Mae application can access and originate transactions with your integration. These sets of entitlements follow a standard allowed whitelist and denied blacklist model, with the blacklist taking precedence over the whitelist. You may have noticed your sandbox Encompass instance was included as an entitled instance to access the ZipRight application you registered in the last section.

{
  "entitlements": {
    "access": {
      "allow": [
        "urn:elli:encompass:tebe99999999"
      ],
      "deny": []
    },
    "data": {...}
  }
}

Data Entitlements


The data entitlements govern the data fields an application receives when a transaction is being originated and requested, and the data fields an application can write back to when it is fulfilling a transaction request.

The request for data entitlements is currently an offline process. The partners have to contact their representative and provide a list of data fields they would like to receive Origin and different request type plus identify the list of fields that they would like to update as part of their response. The ICE Mortgage Technology (IMT) support team will set up the data entitlements so partners can view the entitlements by retrieving the product configuration.


πŸ“˜

Updating Data Entitlements

An integrations data entitlements are subject to IMT's Compliance and Information Security requirements. IMT protects sensitive data that we manage our behalf of our clients, and hence it is important for us to control the level of access granted to 3rd party integrators.

To update an application's data entitlements, you will need to work with someone from the EPC Support team. Visit the help page to learn how you can reach out for help!

{
  "entitlements": {
    "access": {...},
    "data": {
      "origin": {
        "fields": [
          {
            "jsonPath": "$.applications[0].borrower.fullNameWithSuffix",
            "description": "Borrower Full Name"
          },
          {
            "jsonPath": "$.applications[0].coborrower.fullNameWithSuffix",
            "description": "Coborrower Full Name"
          },
          {
            "jsonPath": "$.id",
            "description": "Loan UUID"
          },
          {
            "jsonPath": "$.loanNumber",
            "description": "Loan Number"
          }
        ]
      },
      "transactions": [...]
    }
  }
}
{
  "entitlements": {
    "access": {...},
    "data": {
      "origin": {...},
      "transactions": [
        {
          "requestTypes": [
            "Appraisal"
          ],
          "request": {
            "fields": [
              {
                "jsonPath": "$.applications[0].borrower.fullNameWithSuffix",
                "description": "Borrower Full Name"
              },
              {
                "jsonPath": "$.applications[0].borrower.homePhoneNumber",
                "description": "Borrower Home Phone"
              },
              {
                "jsonPath": "$.applications[0].borrower.employment[?(@.currentEmploymentIndicator == true)][0].phoneNumber",
                "description": "Borrower Work Phone"
              },
              {
                "jsonPath": "$.applications[0].borrower.mobilePhone",
                "description": "Borrower Mobile Phone"
              },
              {
                "jsonPath": "$.applications[0].borrower.emailAddressText",
                "description": "Borrower Email"
              },
              {
                "jsonPath": "$.applications[0].borrower.workEmailAddress",
                "description": "Borrower Work Email"
              },
              {
                "jsonPath": "$.applications[0].coborrower.fullNameWithSuffix",
                "description": "Coborrower Full Name"
              },
              {
                "jsonPath": "$.applications[0].coborrower.homePhoneNumber",
                "description": "Coborrower Home Phone"
              },
              {
                "jsonPath": "$.applications[0].coborrower.employment[?(@.currentEmploymentIndicator == true)][0].phoneNumber",
                "description": "Coborrower Work Phone"
              },
              {
                "jsonPath": "$.applications[0].coborrower.mobilePhone",
                "description": "Coborrower Mobile Phone"
              },
              {
                "jsonPath": "$.applications[0].coborrower.emailAddressText",
                "description": "Co Borrower Email"
              },
              {
                "jsonPath": "$.applications[0].borrower.workEmailAddress",
                "description": "Co Borrower Work Email"
              },
              {
                "jsonPath": "$.property.streetAddress",
                "description": "Property Address"
              },
              {
                "jsonPath": "$.property.city",
                "description": "Property City"
              },
              {
                "jsonPath": "$.property.state",
                "description": "Property State"
              },
              {
                "jsonPath": "$.property.postalCode",
                "description": "Property Zip"
              },
              {
                "jsonPath": "$.property.county",
                "description": "Property County"
              },
              {
                "jsonPath": "$.property.loanPurposeType",
                "description": "Purpose Of Loan"
              },
              {
                "jsonPath": "$.id",
                "description": "Loan UUID"
              },
              {
                "jsonPath": "$.mortgageType",
                "description": "Loan Type"
              },
              {
                "jsonPath": "$.purchasePriceAmount",
                "description": "Purchase Amount"
              },
              {
                "jsonPath": "$.borrowerRequestedLoanAmount",
                "description": "Loan Amount"
              },
              {
                "jsonPath": "$.agencyCaseIdentifier",
                "description": "FHA Case Number"
              },
              {
                "jsonPath": "$.loanNumber",
                "description": "Loan Number"
              }
            ]
          },
          "response": {...}
        }
      ]
    }
  }
}
{
  "entitlements": {
    "access": {...},
    "data": {
      "origin": {...},
      "transactions": [
        {
          "requestTypes": [
            "Appraisal"
          ],
          "request": {...},
          "response": {
            "fields": [
              {
                "jsonPath": "$.propertyAppraisedValueAmount",
                "description": "Property Appraised Value Amount"
              },
              {
                "jsonPath": "$.underwriterSummary.appraisalType",
                "description": "Appraisal Form Type"
              },
              {
                "jsonPath": "$.underwriterSummary.appraisalCompletedDate",
                "description": "Appraisal Completed Date"
              },
              {
                "jsonPath": "$.uldd.propertyValuationEffectiveDate",
                "description": "Appraisal Effective Date"
              },
              {
                "jsonPath": "$.contacts[?(@.contactType == 'APPRAISAL_COMPANY')][0].contactType",
                "description": "Appraisal Company Contact Type"
              },
              {
                "jsonPath": "$.contacts[?(@.contactType == 'APPRAISAL_COMPANY')][0].referenceNumber",
                "description": "Appraisal Company Reference Number"
              },
              {
                "jsonPath": "$.contacts[?(@.contactType == 'APPRAISAL_COMPANY')][0].name",
                "description": "Appraisal Company Name"
              },
              {
                "jsonPath": "$.contacts[?(@.contactType == 'APPRAISAL_COMPANY')][0].contactName",
                "description": "Appraisal Company Contact Name"
              },
              {
                "jsonPath": "$.contacts[?(@.contactType == 'APPRAISAL_COMPANY')][0].appraisalMade",
                "description": "Appraisal Company Appraisal Made"
              }
            ]
          }
        }
      ]
    }
  }
}

What’s Next