MISMO API Toolkit

MISMO API Toolkit

MISMO API Toolkit June 1, 2020 Presented by Leslie Malicki, MGIC Elizabeth Smith, USAA Keith Soura, Blend Christopher Stookey, Wells Fargo What is MISMO? • MISMO® “Mortgage Industry Standards Maintenance Organization” is the standards development body for the mortgage industry. MISMO is a wholly owned subsidiary of the Mortgage Bankers Association. • MISMO developed a common language for exchanging information for the mortgage finance industry. Today, MISMO standards are accepted and deployed by every type of entity involved in creating mortgages, and they are required by most regulators, housing agencies and the GSEs that participate in the industry. • Use of MISMO's standards has been found to lower per loan costs, improve margins, reduce errors and speed up the loan process by reducing manual, paper-based processes while creating cost savings for the consumer. API Toolkit Introduction What is an API? API = Application Programming Interface Exchanges information between systems over a network Provides clear, consistent specifications for data requirements, request and response protocols, and security Documentation identifies what to send and what to expect in response Why APIs? The modern Web runs on them! • Time to Market • Efficiency • Integration • Interoperability • Stability • Scalability Example: Online Grocery "USItemId": "172844767", "offerId": "B5F11C1D43E341A39D4AD36DAFE80526", "sku": "3100149894", "basic": { "salesUnit": "Each", "name": "Great Value Large White Eggs, 18 count, 36 oz", "image": { "thumbnail": "https://i5.walmartimages.com/asr/df2ea507-1953-4cb9-97b6- a1bc10f3dd19_1.bc951a020f826ffe87cf466c3fc1c130.jpeg?odnHeight=150&odnWidth=150&odnBg=ffffff" }, "weightIncrement": 1, "averageWeight": null, "maxAllowed": 12, "productUrl": "/ip/Great-Value-Large-White-Eggs-18-count-36-oz/172844767", "isSnapEligible": true, "type": "REGULAR" }, APIs in Relation to MISMO optimal APIs benefit MISMO The API Toolkit will … Utilize Based off the MISMO Logical Data Model, solutions founded from the API toolkit will inherit industry-vetted Industry data definitions rendering industry subject matter Standards expertise out of the box. Utilize Leveraging OpenAPI accelerates API development by Technology enabling standardized API documentation, code Standards generation, and automated testing. Allowing for a subset to be carved out from the industry Enable More superset of information, provides a quick start for Connections succinct business innovation feeding the vision for a growing network of best of breed solutions. Industry Standards Being industry-enabled removes add-on integration cost barriers for growth Project Running Project Running Connections being added Weeks Total Weeks Total Product Type A - #1 4 4 5 5 Product Type B - #1 4 8 5 10 Product Type C - #1 4 12 5 15 Product Type A - #2 & #3 4 + 4 20 1 + 1 17 Product Type B - #2 & #3 4 + 4 28 1 + 1 19 Product Type C - #2 & #3 4 + 4 36 1 + 1 21 Product Type A – Industry Update - #1, #2, #3 2 + 2 + 2 42 2 23 Product Type B – Industry Update - #1, #2, #3 2 + 2 + 2 48 2 25 Product Type C – Industry Update - #1, #2, #3 2 + 2 + 2 54 2 27 Example: Standing up 9 connections (3 product Proprietary Integrations Standard Integrations categories) with one industry compliance change Technology Standards Being able to evolve as preferences change keeps solution enablers relevant Google Trends Relative Popularity Data source: Google Trends (https://www.google.com/trends) Integration Connections Evolution Being connection-enabled allows continued best of breed adoption Stand-alone Best of Breed Software packages for every function; re-keying between requiring Manual Re-keying them all Stand-alone Best of Breed Software packages for every function; importing/exporting requiring Export/Import data between them all Monolithic software packages attempting to serve all Closed Enterprise Solutions functions, usually with shortcomings (“jack of all trades”) Integrated Enterprise Solutions Robust software packages integrating seamlessly with best using Best of Breed of breed ancillary software solutions Open Enterprise Solutions A growing network of best of breed solutions evolving evolving with Best of Breed together, remaining compatible, seamlessly integrated and providing programmatic access to logic and data API Toolkit Value Proposition – Deeper Dive What it provides What it enables INDUSTRY TECHNOLOGY PROVIDER TOOLKIT Best of Breed Concise business Technology MISMO glossary and data standards vetted by requirements industry participants Efficiency and Automation Easy to follow standards MISMO Industry Experts (COPs) to identify subsets of business scenario related data Adoptable Disruption Lightweight transactions Generation of API start-up files to kick-start Quickly Quick to market MISMO-standard JSON and XML integration solutions efforts MISMO API Toolkit Contents • API Objects – Accelerate software development by using standard schemas to define requests/responses • Implementation Guide (I-Guide) – Identifies recommended practices for implementing MISMO- based APIs • Sample API Specifications – Serve as a template or guide for development teams • MISMO Engineering Guidelines (MEG) – Provides engineering guidance on the representation of MISMO data structures and relationships in a Web API Relationships Between Models Legend: In Progress Existing Product Planned Considered Decision Business Glossary of Reference Business Business Model Model Terms Logical Data Model ER Database XML Schema API Toolkit Model Business/Tech Views (Taxonomy) Views Business/Tech Semantic Other Derivative Technical Model Representations API Development Process 1. Identify data points using the LDD 3. Generate code stubs from the API definition 2. Build the API definition using API object files 4. Implement the API Target Dates Can’t wait? Get involved! Comments: COMING Release: July 2020 September 2020 SOON Key Concepts REST Concept REST is about the ‘transfer’ of a particular ‘representation’ of the ‘state’ of a ‘resource’ from/to a unique address. It completely decouples the native representation of the entity at the source from the representation in which it is provided to the requester of the data. The same Borrower record, residing in some database in a platform specific format can be transferred in a JSON, XML, HTML or another format using a REST style API. JSON HTML JSON Records in native format XML Same data, different representations Data Exchange Format – XML or JSON . The ‘representation’ of a ‘resource’ in the REST architectural style can be accomplished using several formats. XML and JSON are by far the most ubiquitous formats. JSON is a more modern format and is the default choice for REST API payloads due to its simplicity and succinctness. <CLOSING_INFORMATION> { <CLOSING_ADJUSTMENT_ITEMS> "ClosingInformation": { <CLOSING_ADJUSTMENT_ITEM> “ClosingAdjustmentsItems": [ <CLOSING_ADJUSTMENT_ITEM_DETAIL> { <ClosingAdjustmentItemAmount>5500.00</ClosingAdjustmentItemAmount> “closingAdjustmentItemAmount": 5500.00, <ClosingAdjustmentItemType>LenderCredit</ClosingAdjustmentItemType> “closingAdjustmentItemType": "LenderCredit" </CLOSING_ADJUSTMENT_ITEM_DETAIL> } </CLOSING_ADJUSTMENT_ITEM> ] </CLOSING_ADJUSTMENT_ITEMS> } </CLOSING_INFORMATION> XML } JSON 1. The XML snippet on the left has 345 characters. 2. The JSON snippet on the right has 135 characters – a 60% reduction. 3. Even with the same level of nesting the JSON is significantly less verbose. Why OpenAPI 3.0? • Modern specification • Highly interoperable • Widely used • Comprehensive lifecycle tools for rapid design, development, and testing OpenAPI Features Documentation Deployment Tests OpenAPI Client Libraries Implementation Prototypes Supported Languages and Frameworks Erlang Slim Silex Scala NancyFx Java Pistache NodeJS Ruby ASP.NET Core Restbed Ada Rails5 JavaScript Haskell Kotlin JAXRS Lumen CXF Python RESTEasy Inflector Micronaut C# C++ Jersey PHP MSF4J Spring Go Zend Q: What is defined in the API Toolkit? A: Building blocks to create APIs . It does NOT define a set of Mortgage APIs . The MISMO API Toolkit focuses on the schemas object • Defines the data model • Describes API input and output • Documents the data exchange . It defines what data is available in an API, not where or how Sample API Our Pilot Use Cases A consumer looking A lender determining Automation relying for how much they if they need to send on credit scores for can afford initial disclosures decisioning • API Call • API Call • API Call • Request Mortgage Insurance • Check Application Threshold • Pull Credit Report for borrowers (MI) Rate • • INPUT • INPUT • INPUT • The six data points defined by • Loan information, credit product • Loan and property information, TILA/RESPA as needed to details, information on parties MI product detail, information have an application to the loan on parties to the loan • • OUTPUT • OUTPUT • OUTPUT • A Yes/No decision indicating • Credit reports from the three • MI product detail, premium whether the lender needs to bureaus information, and a formal quote send disclosures Implementation: Mortgage Insurance Rate Quote Address: description: Address is based upon USPS publication … type: object properties: … cityName: description: The name of the city or Military APO FPO designation. $ref: "MISMOString.yaml#/components/schemas/MISMOString" countyName: description: The name of the county within a… $ref: "MISMOString.yaml#/components/schemas/MISMOString" postalCode: description: The postal code (ZIP Code… MI COP iGuide stateCode:

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    36 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us