openapi: 3.2.0 info: title: Loan Look Up API description: This service allows you to look up whether there is an existing Freddie Mac mortgage for a specific subject property. Submit request data to initiate a search of Freddie Mac’s datastore for matching records and receive a response. version: 2.0.0 servers: - url: https://api-test.freddiemac.com/single-family/loan-advisor-suite/v2 security: - bearerAuth: [] tags: - name: Loan Look Up description: This service allows you to look up whether there is an existing Freddie Mac mortgage for a specific subject property. Submit request data to initiate a search of Freddie Mac’s datastore for matching records and receive a response. paths: /loanlookup: post: tags: - Loan Look Up summary: Look up whether there is an existing Freddie Mac mortgage for a specific… operationId: LoanLookup requestBody: content: application/json: schema: $ref: '#/components/schemas/LoanLookupRequest' examples: SingleMatchRequest: $ref: '#/components/examples/SingleMatchRequest' MultipleMatchRequest: $ref: '#/components/examples/MultipleMatchRequest' NoMatchRequest: $ref: '#/components/examples/NoMatchRequest' ClosedLoanRequest: $ref: '#/components/examples/ClosedLoanRequest' required: true responses: '200': description: "OK \n\n " content: application/json: schema: $ref: '#/components/schemas/LoanLookupResponse' examples: SingleMatchResponse: $ref: '#/components/examples/SingleMatchResponse' MultipleMatchResponse: $ref: '#/components/examples/MultipleMatchResponse' NoMatchResponse: $ref: '#/components/examples/NoMatchResponse' ClosedLoanResponse: $ref: '#/components/examples/ClosedLoanResponse' '400': description: "Bad Request \n\n Error codes & details \n\n 400.001 Malformed content from the client \n\n 400.002 Request data does not match the application schema, please validate the request data. \n\n400.005 Empty request body \n\n 400.006 Content-type must be application/json \n\n " content: application/json: schema: $ref: '#/components/schemas/LoanLookupErrorResponse' example: code: '400.006' message: Missing header Content-type details: - error: Content-type must be application/json '401': description: "Unauthorized \n\n Error codes & details \n\n 401.001 Invalid Access Token, please validate the token, if error persists please renew your token. \n\n 401.002 Access Token Expired, please renew your access token. \n\n 401.003 API Product mismatch for token. Your token does not have access to the requested API \n\n 401.004 Invalid API Key, please validate the Client ID \n\n 401.005 Invalid API Key for given resource \n\n 401.006 Insufficient scope for Application \n\n 401.007 Invalid Username/Password combination, the provided combination of username and password is incorrect, please verify your credentials. \n\n 401.008 Invalid Refresh Token. \n\n 401.009 Invalid client secret \n\n 401.010 Refresh Token expired." content: application/json: schema: $ref: '#/components/schemas/LoanLookupErrorResponse' example: code: '401.002' message: Access Token Expired details: - error: Access Token Expired, please renew your access token. '404': description: "Not Found \n\n Error codes & details \n\n 404.001 No resource for POST /path" content: application/json: schema: $ref: '#/components/schemas/LoanLookupErrorResponse' example: code: 404.001 message: No resource for POST /path details: error: No resource for POST /path '429': description: "Too Many Requests \n\n Error codes & details \n\n 429.001 Rate limit exceeded, too many requests have been sent per second. \n\n 429.002 Quota limit exceeded, too many requests have been sent per minute." content: application/json: schema: $ref: '#/components/schemas/LoanLookupErrorResponse' example: code: 429.001 message: Rate limit exceeded details: error: Rate limit exceeded, too many requests have been sent per second. '500': description: "Internal server error. \n\n Error codes & details \n\n 500 Internal server error." content: application/json: schema: $ref: '#/components/schemas/LoanLookupErrorResponse' example: code: '500' message: Internal server error details: - error: Loan Look Up API is unable to retrieve data for the submitted request at this time. Please resubmit or contact Customer Support at (800-FREDDIE) for assistance. deprecated: false components: schemas: LoanLookupRequest: required: - address - borrowerInformation - partyRoleIdentifier - partyRoleType - requestTransactionIdentifier type: object properties: requestType: type: string description: The search method being requested. Valid Value is LoanLookUp. example: LoanLookUp enum: - LoanLookUp requestTransactionIdentifier: maxLength: 50 minLength: 1 type: string description: 128-bit Globally unique identifier (GUID) assigned to each request. example: 4e6da9da-6b10-4995-89a0-b793b6f2b1b2 closedLoanIndicator: type: boolean description: An Boolean indicator, which will include loans which have been paid off recently in the search when set to true. Valid Values are True/False and is set to false by default. example: false enum: - true - false partyRoleIdentifier: maxLength: 10 minLength: 1 type: string description: The unique identifier assigned to the party role. example: '123456' partyRoleType: maxLength: 50 minLength: 1 type: string description: A value from a MISMO defined list that identifies the role that the party plays in the transaction. Parties may be either a person or legal entity. A party may play multiple roles in a transaction. example: Seller enum: - Broker - Seller - Servicer - Correspondent - Lender address: $ref: '#/components/schemas/LoanLookupRequest_address' borrowerInformation: $ref: '#/components/schemas/LoanLookupRequest_borrowerInformation' additionalProperties: false LoanLookupResponse: required: - loanMatchIndicator - loanMatchMessage - loans - requestTransactionIdentifier - transactionDateTime type: object properties: loanMatchIndicator: type: boolean example: true enum: - true - false loanMatchMessage: type: string example: Freddie Mac has identified one (or more) loans matching the submitted borrower information. requestTransactionIdentifier: type: string description: The unique identifier assigned to each request. example: 4e6da9da-6b10-4995-89a0-b793b6f2b1b2 transactionDateTime: type: string example: '2020-04-08T22:05:37.184Z' loans: type: array items: $ref: '#/components/schemas/LoanLookupResponse_loans' additionalProperties: false LoanLookupRequest_borrowerInformation: required: - taxpayerIdentifierType - taxpayerIdentifierValue type: object properties: taxpayerIdentifierType: type: string description: Specifies the type of identification number used by the Internal Revenue Service (IRS) in the administration of tax laws. It is issued either by the Social Security Administration (SSA) or the IRS. A Social Security number (SSN) is issued by the SSA; all other taxpayer identification numbers are issued by the IRS. example: SocialSecurityNumber enum: - SocialSecurityNumber taxpayerIdentifierValue: maxLength: 9 minLength: 9 pattern: ^[0-9]{9}$ type: string description: The value of the taxpayer identifier as assigned by the IRS to the individual or legal entity. example: '114455778' additionalProperties: false Error: title: Error type: object properties: errorCode: type: string errorDescription: type: string LoanLookupResponse_address: required: - PostalCode - addressLineText - cityName - stateCode type: object properties: addressLineText: type: string description: The address with the address number, pre-directional, street name, post-directional, address unit designators and address unit value. example: 8200 jones branch drive cityName: type: string description: The name of the city. example: Mclean postalCode: type: string description: The 5-digit or full 9-digit (xxxxx-xxxx) zip code of the mortgaged property. example: '22102' stateCode: type: string description: The two-character representation of the US state, US Territory, Canadian Province, Military APO FPO, or Territory. example: VA additionalProperties: false description: The street address of a property. LoanLookupResponse_loans: required: - address - investorLoanIdentifier - mortgageType - noteDate type: object properties: noteDate: type: string description: The date of the mortgage note document. This is the date on which the loan was originated. example: '2015-02-16' mortgageType: type: string description: Types Of Mortgages example: Conventional investorLoanIdentifier: type: string description: A unique identifier for a loan, assigned by the investor, used to track or refer to the loan in the investor’s systems. example: '620149418' loanStatusType: type: string description: A collection of values that summarize the payment status of a loan. example: Closed loanPayoffDate: type: string description: The date when the loan is paid off and liquidated. example: '2020-04-13' address: $ref: '#/components/schemas/LoanLookupResponse_address' additionalProperties: false LoanLookupRequest_address: required: - addressLineText - cityName - postalCode - stateCode type: object properties: addressLineText: maxLength: 100 minLength: 1 type: string description: The address with the address number, pre-directional, street name, post-directional, address unit designators and address unit value. example: 4317 HIGHLAND HILLS ST addressUnitIdentifier: maxLength: 100 minLength: 1 type: string description: The identifier value associated with the Secondary Address Unit Designator. example: B1C cityName: maxLength: 100 minLength: 1 type: string description: The name of the city. example: BAKERSFIELD postalCode: maxLength: 10 minLength: 5 pattern: ^[0-9]{5}(?:-[0-9]{4})?$ type: string description: The 5-digit or full 9-digit (xxxxx-xxxx) zip code of the mortgaged property. example: '11223' stateCode: pattern: ^[A-Za-z\s]*$ type: string description: The two-character representation of the US state, US Territory, Canadian Province, Military APO FPO, or Territory. example: CA enum: - AK - AL - AR - AZ - CA - CO - CT - DC - DE - FL - GA - GU - HI - IA - ID - IL - IN - KS - KY - LA - MA - MD - ME - MI - MN - MO - MS - MT - NC - ND - NE - NH - NJ - NM - NV - NY - OH - OK - OR - PA - PR - RI - SC - SD - TN - TX - UT - VI - VA - VT - WA - WI - WV - WY additionalProperties: false Errors: title: Errors type: object properties: error: type: array items: $ref: '#/components/schemas/Error' LoanLookupErrorResponse: title: LoanLookupErrorResponse type: object properties: errorEnvelope: $ref: '#/components/schemas/ErrorEnvelope' ErrorEnvelope: title: ErrorEnvelope type: object properties: errors: $ref: '#/components/schemas/Errors' examples: ClosedLoanRequest: value: requestType: LoanLookUp requestTransactionIdentifier: 4e6da9da-6b10-4995-89a0-b793b6f2b1b2 closedLoanIndicator: true partyRoleIdentifier: '12345' partyRoleType: Servicer address: addressLineText: 817 W Main St cityName: Waterford postalCode: '53185' stateCode: WI borrowerInformation: taxpayerIdentifierType: SocialSecurityNumber taxpayerIdentifierValue: '888800015' NoMatchResponse: value: loanMatchIndicator: false loanMatchMessage: Freddie Mac did not find any loans matching the given borrower information. requestTransactionIdentifier: 4e6da9da-6b10-4995-89a0-b793b6f2b1b2 transactionDateTime: '2020-04-09T14:05:19.565Z' loans: - {} ClosedLoanResponse: value: loanMatchIndicator: true loanMatchMessage: Freddie Mac has identified one (or more) loans matching the submitted borrower information. requestTransactionIdentifier: 4e6da9da-6b10-4995-89a0-b793b6f2b1d7 transactionDateTime: '2026-03-06T15:28:04.158Z' loans: - noteDate: '2024-12-27' mortgageType: Conventional investorLoanIdentifier: 000508755 loanStatusType: Closed loanPayoffDate: '2026-02-27' address: addressLineText: 817 W Main St cityName: Waterford postalCode: '53185' stateCode: WI NoMatchRequest: value: requestType: LoanLookUp requestTransactionIdentifier: 4e6da9da-6b10-4995-89a0-b793b6f2b1b2 closedLoanIndicator: false partyRoleIdentifier: '12345' partyRoleType: Servicer address: addressLineText: 8200 Jones Branch Drive cityName: McLean postalCode: '22102' stateCode: VA borrowerInformation: taxpayerIdentifierType: SocialSecurityNumber taxpayerIdentifierValue: '148239146' MultipleMatchRequest: value: requestType: LoanLookUp requestTransactionIdentifier: 4e6da9da-6b10-4995-89a0-b793b6f231b5 closedLoanIndicator: false partyRoleIdentifier: '12345' partyRoleType: Servicer address: addressLineText: 49 HUDSON AVE cityName: EDGEWATER postalCode: '07020' stateCode: NJ borrowerInformation: taxpayerIdentifierType: SocialSecurityNumber taxpayerIdentifierValue: '888800000' SingleMatchRequest: value: requestType: LoanLookUp requestTransactionIdentifier: 4e6da9da-6b10-4995-89a0-b793b6f2b1b2 closedLoanIndicator: false partyRoleIdentifier: '12345' partyRoleType: Seller address: addressLineText: 22 SPENCER ST cityName: EDISON postalCode: 08817 stateCode: NJ borrowerInformation: taxpayerIdentifierType: SocialSecurityNumber taxpayerIdentifierValue: '888800001' SingleMatchResponse: value: loanMatchIndicator: true loanMatchMessage: Freddie Mac has identified one (or more) loans matching the submitted borrower information. requestTransactionIdentifier: 4e6da9da-6b10-4995-89a0-b793b6f2b1b2 transactionDateTime: '2026-03-21T22:07:20.289Z' loans: - noteDate: '2024-12-27' mortgageType: Conventional investorLoanIdentifier: 000000009 address: addressLineText: 22 Spencer St cityName: Edison postalCode: 08817 stateCode: NJ MultipleMatchResponse: value: loanMatchIndicator: true loanMatchMessage: Freddie Mac has identified one (or more) loans matching the submitted borrower information. requestTransactionIdentifier: 4e6da9da-6b10-4995-89a0-b793b6f231b5 transactionDateTime: '2026-03-06T15:21:27.063Z' loans: - noteDate: '2024-12-27' mortgageType: Conventional investorLoanIdentifier: 000610979 address: addressLineText: 49 Hudson Ave cityName: Edgewater postalCode: '07020' stateCode: NJ - noteDate: '2024-12-27' mortgageType: FHA investorLoanIdentifier: '000000004' address: addressLineText: 49 Hudson Ave cityName: Edgewater postalCode: '07020' stateCode: NJ securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: token